MOV 32H,#00H MOV 33H,#01H MOV 34H,#00HMOV 35H,#00H
LCALL LED1 调显示子程序 MOV TMOD,#00H MOV TL0,#08H MOV TH0,#0F6H AJMP PD
K500H:MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#05H MOV 34H,#00H MOV 35H,#00H
LCALL LED1 MOV TMOD,#00H MOV TL0,#01H MOV TH0,#0FEH AJMP PD
K1K:MOV 30H,#00H MOV 31H,#00H
显示500Hz 调显示子程序 显示1KHz 21
MOV 32H,#01H MOV 33H,#00H MOV 34H,#00H MOV 35H,#00H
LCALL LED1 调显示子程序 MOV TMOD,#00H MOV TL0,#01H MOV TH0,#0FFH
PD:JNB ACC.0,KE0 是则转方波输出
JNB ACC.1,KE1 是则转正弦方波输出
JNB ACC.2,KE2 是则转三角波输出
JNB ACC.3,KE3 是则转锯齿波输出 LJMP PD
KE0:MOV R7,#00H
LCALL LED1 MOV R6,#00H AJMP GN
KE1:MOV R7,#02H
判断是否“0”号键按下,若判断是否“1”号键按下,若判断是否“2”号键按下,若判断是否“3”号键按下,若调显示子程序 22
LCALL LED1 调显示子程序 MOV R6,#00H AJMP GN
KE2:MOV R7,#02H
LCALL LED1 调显示子程序 MOV R6,#00H
AJMP GN KE3:MOV R7,#02H
LCALL LED1 MOV R6,#00H GN: SETB TR0 SETB ET0 SETB EA
LOP1:JNB ACC.4,K10H 输出10Hz信号
JNB ACC.5,K100H 转输出100Hz信号
JNB ACC.6,K500H 转输出500Hz信号
JNB ACC.7,K1K 转输出1KHz信号 AJMP LOP1
调显示子程序 判断是否“4”号键,若是则转判断是否“5”号键,若是则判断是否“6”号键,若是则判断是否“7”号键,若是则23
TC0:CJNE R7,#00H,TC1 发送方波程序 MOV DPTR,#TAB1 送方波数据表首址 MOV A,R6 发送数据寄存器 MOVC A,@A+DPTR
MOV DPTR,#0AFFFH 指向DAC0832(2) MOVX @DPTR,A DAC0832MOV A,R6 INC A MOV R6,A CJNE A,#32,QL1 MOV R6,#00H AJMP QL1
TC1:CJNE R7,#01H,MOV DPTR,#TAB2 MOV A,R6
MOVC A, @A+DPTR
MOV DPTR,#0AFFFH MOVX @DPTR,A DAC0832MOV A,R6 INC A MOV R6,A CJNE A,#32,QL1
TC2 24
(2)输出 发送正弦波程序 送正弦波数据表首址指向DAC0832(2) (2)输出
MOV R6,#00H AJMP QL1
TC2:CJNE R7,#02H,QL1 发送三角波程序 MOV DPTR,#TAB3 送三角波数据表首址 MOV A,R6 MOVC A,@A+DPTR
MOV DPTR,#0AFFFH MOVX @DPTR,A DAC0832MOV A,R6 INC A MOV R6,A CJNE A,#32,QL1 MOV R6,#00H AJMP QL1
TC3::CJNE R7,#03H,MOV DPTR,#TAB4 MOV A,R6
MOVC A, @A+DPTR
MOV DPTR,#0AFFFH MOVX @DPTR,A DAC0832MOV A,R6 INC A
QL1 25
指向DAC0832(2) (2)输出 发送锯齿波程序 送锯齿波数据表首址 指向DAC0832(2) (2)输出