明天就要答辯了。求教大佬
仿真圖是可以仿真出來的,原理圖是對著仿真圖畫著,但是實物做不出來,懷疑是仿真圖和pcb以及代碼三者中出錯了,哪位大佬幫忙指點一下,非常感謝
qin.PNG (45.75 KB, 下載次數: 39)
下載附件
仿真圖
2018-6-24 15:15 上傳
仿真圖
1.PNG (48.12 KB, 下載次數: 54)
下載附件
原理圖
2018-6-24 15:15 上傳
原理圖
2.PNG (58.21 KB, 下載次數: 49)
下載附件
pcb
2018-6-24 15:16 上傳
pcb
代碼如下:LINE EQU 30H
ROW EQU 31H
VAL EQU 32H
ORG 00H
SJMP START
ORG 0BH
LJMP INT_T0
START: MOV P0,#00H
MOV TMOD,#01H
//;******************************************
//;按鍵掃描程序
//;******************************************
LSCAN: MOV P3,#0F0H
L1: JNB P3.0,L2
LCALL DELAY
JNB P3.0,L2
MOV LINE,#00H
LJMP RSCAN
L2: JNB P3.1,L3
LCALL DELAY
JNB P3.1,L3
MOV LINE,#01H
LJMP RSCAN
L3: JNB P3.2,L4
LCALL DELAY
JNB P3.2,L4
MOV LINE,#02H
LJMP RSCAN
L4: JNB P3.3,L1
LCALL DELAY
JNB P3.3,L1
MOV LINE,#03H
RSCAN: MOV P3,#0FH
C1: JNB P3.4,C2
MOV ROW,#00H
LJMP CALCU
C2: JNB P3.5,C3
MOV ROW,#01H
LJMP CALCU
C3: JNB P3.6,C4
MOV ROW,#02H
LJMP CALCU
C4: JNB P3.7,C1
MOV ROW,#03H
CALCU: MOV A,LINE ;計算鍵號
MOV B,#04H
MUL AB
ADD A,ROW
MOV VAL,A
//;*******************************************
//;根據鍵號查表得到定時器的定時常數,
//;從而發出不同頻率的聲音
//;*******************************************
MOV DPTR,#TABLE2
MOV B,#2
MUL AB
MOV R1,A
MOVC A,@A+DPTR
MOV TH0,A
INC R1
MOV A,R1
MOVC A,@A+DPTR
MOV TL0,A
MOV IE,#82H
SETB TR0
MOV A,VAL ;顯示鍵號
MOV DPTR,#TABLE1
MOVC A,@A+DPTR
MOV P0,A
//;*******************************************
//;等待按鍵釋放
//;*******************************************
W0: MOV A,P3
CJNE A,#0FH,W1
MOV P0,#00H
CLR TR0
LJMP LSCAN
W1: MOV A,P3
CJNE A,#0F0H,W2
MOV P0,#00H
CLR TR0
LJMP LSCAN
W2: SJMP W0
//;****************************************
//;定時器0中斷服務程序,輸出特定頻率的方波,
//;驅動揚聲器發聲
//;****************************************
INT_T0: MOV DPTR,#TABLE2
MOV A,VAL
MOV B,#2
MUL AB
MOV R1,A
MOVC A,@A+DPTR
MOV TH0,A
INC R1
MOV A,R1
MOVC A,@A+DPTR
MOV TL0,A
CPL P1.0
RETI
DELAY: MOV R6,#10
D1: MOV R7,#250
DJNZ R7,$
DJNZ R6,D1
RET
TABLE1: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H //gongyin
DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H
TABLE2: DW 64021,64103,64260,64400
DW 64524,64580,64684,64777
DW 64820,64898,64968,65030
DW 65058,65110,65157,65178
END
|