proteus 7的使用及调试
定时器、中断、键盘接口数字电路、模拟电路的相关知识2、实现及编程
2.1程序框图
)
2.2电路原理图
2.3程序内容 7个音调的产生方法 按k2让音调逆向输出 如何按k8+k2放出音乐和如何
让音乐停止
2.4汇编源程序 BUZZ EQU P2 BUZZ1 EQU P1.7 ORG OOOOH LJMP MAIN ORG 000BH
LJMP INT_T0 ORG 001BH LJMP TIME1 ORG 8000H MAIN: MOV SP,#90H MOV BUZZ,#0FFH
MOV TMOD,#11H SETB ET0 SETB ET1 SETB EA CLR TR0 START: MOV R0, BUZZ CJNE R0,#0FFH,KEY1 CLR TR0 SJMP START KEY1: CJNE R0,#0FEH,KEY2 MOV 30H,#0FBH MOV 31H,#0E9H LJMP SET_TIMER KEY2:
CJNE R0,#0FDH,KEY3 MOV 30H,#0FCH MOV 31H,#5CH LJMP SET_TIMER KEY3:
CJNE R0,#0FBH,KEY4
MOV 30H,#0FCH MOV 31H,#0C1H LJMP SET_TIMER KEY4:
CJNE R0,#0F7H,KEY5 MOV 30H,#0FCH MOV 31H,#0EFH LJMP SET_TIMER KEY5:
CJNE R0,#0EFH,KEY6 MOV 30H,#0FDH MOV 31H,#045H LJMP SET_TIMER KEY6:
囉*
祖
1IU
■□■1l
・
■CkUJUfiia ▼"■VZ AfiJkAAl ■E * F Wi -54
■U A JM
"bn iunTb
—-
P XF<T
™n *T*Ll
2CH,02H,82H DB 16H,32H,56H,12H DB 0A6H,32H,56H,52H DB
66H,72H,0B6H,62H DB 62H,52H,58H,32H,22H DB 16H,12H,14H,32H,22H DB 16H,12H,14H,22H,32H DB 26H,92H,0A4H,12H,22H DB 1CH DB 00
K8键按后是否音调是逆
原来是忘了继续检测
END
3、调试及测试
3. 1调试(按实际做的步奏)
如按下k5后显示如下图:
k1— k7音调输出
按一下k8。
在按k1—k7音频逆向输出
先按着k8再+k1键后会在音频输出歌曲,k1键停止
3. 2测试
在proteus 环境下点击k1-k7看看发出的音是不是正确的 向的
K8+k1是否音乐输出
在调试源代码中采用分块测试:音频输出、按键音乐播放 最后采用组合调试
3. 3出现的问题及解决
在做k8按键检查k 到8直到k8放开才跳转一直出错。
p2 口 0 0 0
TM0D 设置错误。