1、基于单片机的函数信号发生器源程序:ORG 0000HAJM MAINORG 000BHLJMP TC0ORG 0030HMAIN:MOV DPTR,#9FFFH 指向DAC0832(1)MOV A,70HMOVX DPTR,A DAC0832(1)输出MOV DPTR,#7F00H 指向8155命令字端口地址MOV A,#06H 设置A口为输入,B口、C口为输出MOVX DPTR,A 送命令字MOV DPTR,#7F01H 指向A口地址MOVX A,DPTR 读入A口的开关数据JNB ACC.4,K10H 判断是否“4”号键,若是则转输出10Hz信号JNB ACC.5,K100H 判断是否“5
2、”号键,若是则转输出100Hz信号JNB ACC.6,K500H 判断是否“6”号键,若是则转输出500Hz信号JNB ACC.7,K1K 判断是否“7”号键,若是则转输出1KHz信号AJMP MAINLED1: MOV R3,#06H 设置6个LED显示MOV R2,#01H 选通第一位LED数据MOV R1,#30H 送显示缓冲区首址GN1:MOV DPTR,#7F03H 指向C口地址MOV A,R2 位选通数据送AMOVX DPTR,A 位选通数据送C口RL A 选通下一位MOV R2,A 位选通数据送R2中保存MOV A, R1 取键值MOV DPTR,#TAB 送LED显示软件译码表
3、首址MOVC A,A+DPTR 查表求出键值显示的段码MOV DPTR,#7F02H 指向B口地址MOV DPTR,A 段码送显示LCALL LOOP1 调延时子程序INC R1 指向下一位显示缓冲区地址DJNZ R3,GN1 循环显示6个LEDRETLOOP1:MOV R4,#08H 延时子程序LOOP:MOV R5,#0A0HDJNZ R5,$DJNZ R4,LOOPRETK10H:MOV 30H,#00H 显示10HzMOV 31H,#00HMOV 32H,#00HMOV 33H,#00HMOV 34H,#01HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,
4、#00HMOV TL0,#15HMOV TH0,#9EHAJMP PDK100H:MOV 30H,#00H 显示100HzMOV 31H,#00HMOV 32H,#00HMOV 33H,#01HMOV 34H,#00HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HMOV TL0,#08HMOV TH0,#0F6HAJMP PDK500H:MOV 30H,#00H 显示500HzMOV 31H,#00HMOV 32H,#00HMOV 33H,#05HMOV 34H,#00HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HM
5、OV TL0,#01HMOV TH0,#0FEHAJMP PDK1K:MOV 30H,#00H 显示1KHzMOV 31H,#00HMOV 32H,#01HMOV 33H,#00HMOV 34H,#00HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HMOV TL0,#01HMOV TH0,#0FFHPD:JNB ACC.0,KE0 判断是否“0”号键按下,若是则转方波输出JNB ACC.1,KE1 判断是否“1”号键按下,若是则转正弦方波输出JNB ACC.2,KE2 判断是否“2”号键按下,若是则转三角波输出JNB ACC.3,KE3 判断是否“3”号键
6、按下,若是则转锯齿波输出LJMP PDKE0:MOV R7,#00HLCALL LED1 调显示子程序MOV R6,#00HAJMP GNKE1:MOV R7,#02HLCALL LED1 调显示子程序MOV R6,#00HAJMP GNKE2:MOV R7,#02HLCALL LED1 调显示子程序MOV R6,#00HAJMP GN KE3:MOV R7,#02HLCALL LED1 调显示子程序MOV R6,#00HGN: SETB TR0SETB ET0SETB EALOP1:JNB ACC.4,K10H 判断是否“4”号键,若是则转输出10Hz信号JNB ACC.5,K100H 判断
7、是否“5”号键,若是则转输出100Hz信号JNB ACC.6,K500H 判断是否“6”号键,若是则转输出500Hz信号JNB ACC.7,K1K 判断是否“7”号键,若是则转输出1KHz信号AJMP LOP1TC0:CJNE R7,#00H,TC1 发送方波程序MOV DPTR,#TAB1 送方波数据表首址MOV A,R6 发送数据寄存器MOVC A,A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX DPTR,A DAC0832(2)输出MOV A,R6INC A MOV R6,ACJNE A,#32,QL1MOV R6,#00HAJMP QL1TC1:CJNE
8、 R7,#01H,TC2 发送正弦波程序MOV DPTR,#TAB2 送正弦波数据表首址MOV A,R6MOVC A, A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX DPTR,A DAC0832(2)输出MOV A,R6INC AMOV R6,ACJNE A,#32,QL1MOV R6,#00HAJMP QL1TC2:CJNE R7,#02H,QL1 发送三角波程序MOV DPTR,#TAB3 送三角波数据表首址MOV A,R6MOVC A,A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX DPTR,A DAC0832(2)输出M
9、OV A,R6INC AMOV R6,ACJNE A,#32,QL1MOV R6,#00HAJMP QL1TC3:CJNE R7,#03H,QL1 发送锯齿波程序MOV DPTR,#TAB4 送锯齿波数据表首址MOV A,R6MOVC A, A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX DPTR,A DAC0832(2)输出MOV A,R6INC AMOV R6,ACJNE A,#32,QL1MOV R6,#00HQL1: RETITAB: DB 0C0H,0F9H,0A4H,0B0H,99H,82H,0F8H,80HTAB1: DB 0FFH,0FFH,0F
10、FH,0FFH,0FFH,0FFH, 0FFH, 0FFH DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FF
11、H,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0F
12、FHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH, 0FFH DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB
13、 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00
14、H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00HTAB2: DB 80H, 83H, 86H, 89H, 8DH,90H,93H,96H DB 99H, 9CH, 9FH,0A2H,0A5H,0A8H,0ABH,0AEH DB 0B1H, 0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5H DB 0C7H, 0CAH,0CCH,0
15、CFH,0D1H, 0D4H,0D6H,0D8H DB 0DAH, 0DDH,0DFH,0E1H,0E3H, 0E5H,0E7H,0E9H DB 0EAH, 0ECH,0EEH,0EFH,0F1H, 0F2H,0F4H,0F5H DB 0F6H, 0F7H, 0F8H,0F9H, 0FAH, 0FBH,0FCH,0FDH DB 0FDH, 0FEH,0FFH,0FFH,0FFH, 0FFH,0FFH,0FFH DB 0FFH, 0FFH,0FFH,0FFH,0FFH, 0FFH,0FEH,0FDH DB 0FDH, 0FCH,0FBH,0FAH,0F9H, 0F8H,0F7H,0F6H DB
16、0F5H, 0F4H,0F2H,0F1H,0EFH, 0EEH,0ECH,0EAH DB 0E9H, 0E7H,0E5H,0E3H,0E1H, 0DEH,0DDH,0DAH DB 0D8H, 0D6H,0D4H,0D1H,0CFH, 0CCH,0CAH,0C7H DB 0C5H, 0C2H,0BFH,0BCH,0BAH, 0B7H,0B4H,0B1H DB 0AEH, 0ABH,0A8H,0A5H,0A2H, 9FH, 9CH, 99H DB 96H, 93H, 90H, 8DH, 89H, 86H, 83H, 80H DB 80H, 7CH, 79H, 78H, 72H, 6FH, 6CH,
17、 69H DB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51H DB 4EH, 4CH, 48H, 45H, 43H, 40H, 3DH, 3AH DB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27H DB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16H DB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AH DB 09H, 08H, 07H, 06H, 05H, 04H, 03H, 02H DB 02H, 01H, 00H, 00H, 00H, 00H, 00H, 00H D
18、B 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02H DB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H DB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15H DB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25H DB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38H DB 3AH, 3DH, 40H, 43H, 45H, 48H, 4CH, 4EH DB 51H, 55H, 57H, 5AH, 5DH, 60H, 63H, 66H DB 69H,
19、 6CH, 6FH, 72H, 76H, 79H, 7CH, 80HTAB3: DB 00H,02H,04H,06H,08H,0AH,0CH,0EH DB 10H,12H,14H,16H,18H,1AH,1CH,1EH DB 20H,22H,24H,26H,28H,2AH,2CH,2EH DB 30H,32H,34H,36H,38H,3AH,3CH,3EH DB 40H,42H,44H,46H,48H,4AH,4CH,4EH DB 50H,52H,54H,56H,58H,5AH,5CH,5EH DB 60H,62H,64H,66H,68H,6AH,6CH,6EH DB 70H,72H,74H,
20、76H,78H,7AH,7CH,7EH DB 80H,82H,84H,86H,88H,8AH,8CH,8EH DB 0A0H,0A2H,0A4H,0A6H,0A8H,0AAH,0ACH,0AEH DB 0B0H,0B2H,0B4H,0B6H,0B8H,0BAH,0BCH,0BEH DB 0C0H,0C2H,0C4H,0C6H,0C8H,0CAH,0CCH,0CEH DB 0D0H,0D2H,0D4H,0D6H,0D8H,0DAH,0DCH,0DEH DB 0E0H,0E2H,0E4H,0E6H,0E8H,0EAH,0ECH,0EEH DB 0F0H,0F2H,0F4H,0F6H,0F8H,0F
21、AH,0FCH,0FEH DB 0FFH,0FEH,0FCH,0FAH,0F8H,0F6H,0F4H,0F2H DB 0F0H,0EEH,0ECH,0EAH,0E8H,0E6H,0E4H,0E2H DB 0E0H,0DEH,0DCH,0DAH,0D8H,0D6H,0D4H,0D2H DB 0D0H,0CEH,0CCH,0CAH,0C8H,0C6H,0C4H,0C2H DB 0C0H,0BEH,0BCH,0BAH,0B8H,0B6H,0B4H,0B2H DB 0B0H,0AEH,0ACH,0AAH,0A8H,0A6H,0A4H,0A2H DB 0A0H,09EH,9CH,9AH,98H,96H,
22、94H,92H DB 90H,8EH,8CH,8AH,88H,86H,84H,82H DB 80H,7EH,7CH,7AH,78H,76H,74H,72H DB 70H,6EH,6CH,6AH,68H,66H,64H,62H DB 60H,5EH,5CH,5AH,58H,56H,54H,52H DB 50H,4EH,4CH,4AH,48H,46H,44H,42H DB 40H,3EH,3CH,3AH,38H,36H,34H,32H DB 30H,2EH,2CH,2AH,28H,26H,24H,22H DB 20H,1EH,1CH,1AH,18H,16H,14H,12H DB 10H,0EH,0
23、CH,0AH,08H,06H,04H,02HTAB4: DB 00H,01H,02H,03H,04H,05H,06H,07H DB 08H,09H,0AH,0BH,0CH,0DH,0EH,0FH DB 10H,11H,12H,13H,14H,15H,16H,17H DB 18H,19H,1AH,1BH,1CH,1DH,1EH,1FH DB 20H,21H,22H,23H,24H,25H,26H,27H DB 28H,29H,2AH,2BH,2CH,2DH,2EH,2FH DB 30H,31H,32H,33H,34H,35H,36H,37H DB 38H,39H,3AH,3BH,3CH,3DH,
24、3EH,3FH DB 40H,41H,42H,43H,44H,45H,46H,47H DB 48H,49H,4AH,4BH,4CH,4DH,4EH,4FH DB 50H,51H,52H,53H,54H,55H,56H,57H DB 58H,59H,5AH,5BH,5CH,5DH,5EH,5FH DB 60H,61H,62H,63H,64H,65H,66H,67H DB 68H,69H,6AH,6BH,6CH,6DH,6EH,6FH DB 70H,71H,72H,73H,74H,75H,76H,77H DB 78H,79H,7AH,7BH,7CH,7DH,7EH,7FH DB 80H,81H,8
25、2H,83H,84H,85H,86H,87H DB 88H,89H,8AH,8BH,8CH,8DH,8EH,8FH DB 90H,91H,92H,93H,94H,95H,96H,97H DB 98H,99H,9AH,9BH,9CH,9DH,9EH,9FH DB 0A0H,0A1H,0A2H,0A3H,0A4H,0A5H,0A6H,0A7H DB 0A8H,0A9H,0AAH,0ABH,0ACH,0ADH,0AEH,0AFH DB 0B0H,0B1H,0B2H,0B3H,0B4H,0B5H,0B6H,0B7H DB 0B8H,0B9H,0BAH,0BBH,0BCH,0BDH,0BEH,0BFH
26、DB 0C0H,0C1H,0C2H,0C3H,0C4H,0C5H,0C6H,0C7H DB 0C8H,0C9H,0CAH,0CBH,0CCH,0CDH,0CEH,0CFH DB 0D0H,0D1H,0D2H,0D3H,0D4H,0D5H,0D6H,0D7H DB 0D8H,0D9H,0DAH,0DBH,0DCH,0DDH,0DEH,0DFH DB 0E0H,0E1H,0E2H,0E3H,0E4H,0E5H,0E6H,0E7H DB 0E8H,0E9H,0EAH,0EBH,0ECH,0EDH,0EEH,0EFH DB 0F0H,0F1H,0F2H,0F3H,0F4H,0F5H,0F6H,0F7H DB 0F8H,0F9H,0FAH,0FBH,0FCH,0FDH,0FEH,0FFHEND
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1