新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 跑马灯及音乐盒的汇编程序

跑马灯及音乐盒的汇编程序

作者:时间:2012-10-20来源:网络收藏
;蜂鸣器就使用哪种小的无源的有源的5v蜂鸣器都可以,经过试验发现用无源的效果更好,接在p1.2口,最好用一个三极管放大一下电流,晶振用12兆的.
ORG 0000HLJMP STARTORG 000BHINC 20H ;中断服务,中断计数器加1MOV TH0,#0D8HMOV TL0,#0EFH ;12M晶振,形成10毫秒中断RETISTART:MOV SP,#50HMOV TH0,#0D8HMOV TL0,#0EFHMOV TMOD,#01HMOV IE,#82HMu: Mov  p3,#0ffhSETB P1.2lcall   keyMUSIC0:NOPMOV 20H,#00H ;中断计数器清0MOV B,#00H ;表序号清0MUSIC1:NOPCLR AMOVC A,@A+DPTR ;查表取代码MOV  P3,AJZ  MUJZ END0 ;是00H,则结束CJNE A,#0FFH,MUSIC5LJMP MUSIC3MUSIC5:NOPMOV R6,AINC DPTRMOV A,BMOVC A,@A+DPTR ;取节拍代码送R7MOV R7,ASETB TR0 ;启动计数MUSIC2:NOPCPL P1.2MOV A,R6MOV R3,ALCALL DELMOV A,R7CJNE A,20H,MUSIC2 ;中断计数器(20H)=R7否?;不等,则继续循环MOV 20H,#00H ;等于,则取下一代码INC DPTR; INC BLJMP MUSIC1MUSIC3:NOPCLR TR0 ;休止100毫秒MOV R2,#0DHMUSIC4:NOPMOV R3,#0FFHLCALL DELDJNZ R2,MUSIC4INC DPTRLJMP MUSIC1END0:NOPMOV R2,#64H ;歌曲结束,延时1秒后继续MUSIC6:MOV R3,#00HLCALL DELDJNZ R2,MUSIC6LJMP  muDEL:NOPDEL3: MOV R4,#02HDEL4: NOPDJNZ R4,DEL4NOPDJNZ R3,DEL3RETKey:Key1:Mov  a,P2Mov  P0,aCjne  a,#0feh,key2Mov  dptr,#mu_tab1;;表头地址送DPTRLjmp  MUSIC0Key2:Mov  a,P2Mov  P0,aCjne  a,#0fdh,key3Mov  dptr,#mu_tab2 ;;表头地址送DPTRLjmp  MUSIC0Key3:Sjmp  keyNOPMu_tab1:db 26h,20h,20h,20h,20h,20h,26h,10h,20h,10h,20h,80h,26h,20h,30h,20hdb 30h,20h,39h,10h,30h,10h,30h,80h,26h,20h,20h,20h,20h,20h,1ch,20hdb 20h,80h,2bh,20h,26h,20h,20h,20h,2bh,10h,26h,10h,2bh,80h,26h,20hdb 30h,20h,30h,20h,39h,10h,26h,10h,26h,60h,40h,10h,39h,10h,26h,20hdb 30h,20h,30h,20h,39h,10h,26h,10h,26h,80h,26h,20h,2bh,10h,2bh,10hdb 2bh,20h,30h,10h,39h,10h,26h,10h,2bh,10h,2bh,20h,2bh,40h,40h,20hdb 20h,10h,20h,10h,2bh,10h,26h,30h,30h,80h,18h,20h,18h,20h,26h,20hdb 20h,20h,20h,40h,26h,20h,2bh,20h,30h,20h,30h,20h,1ch,20h,20h,20hdb 20h,80h,1ch,20h,1ch,20h,1ch,20h,30h,20h,30h,60h,39h,10h,30h,10hdb 20h,20h,2bh,10h,26h,10h,2bh,10h,26h,10h,26h,10h,2bh,10h,2bh,80hdb 18h,20h,18h,20h,26h,20h,20h,20h,20h,60h,26h,10h,2bh,20h,30h,20hdb 30h,20h,1ch,20h,20h,20h,20h,80h,26h,20h,30h,10h,30h,10h,30h,20hdb 39h,20h,26h,10h,2bh,10h,2bh,20h,2bh,40h,40h,10h,40h,10h,20h,10hdb 20h,10h,2bh,10h,26h,30h,30h,80h,00Hmu_tab2:DB      18H,     30H,     1CH,     10HDB      20H,     40H,     1CH,     10H     DB      18H,     10H,     20H,     10HDB      1CH,     10H,     18H,     40HDB      1CH,     20H,     20H,     20HDB      1CH,     20H,     18H,     20H     DB      20H,     80H,     0FFH,    20HDB      30H,     1CH,     10H  ,   18HDB      20H,     15H,     20H ,    1CHDB      20H,     20H,     20H ,    26HDB      40H,     20H ,    20H ,    2BHDB      20H,     26H,     20H ,    20H     DB      20H,     30H ,    80H ,    0FFHDB      20H,     20H,     1CH ,    10HDB      18H,     10H,     20H ,    20HDB      26H,     20H ,    2BH ,    20HDB      30H,     20H ,    2BH ,    40HDB      20H,     20H  ,   1CH  ,   10HDB      18H,     10H,     20H,     20HDB      26H,     20H ,    2BH,     20HDB      30H,     20H,     2BH ,    40HDB      20H,     30H,     1CH ,    10HDB      18H,     20H ,    15H ,    20HDB      1CH,     20H ,    20H ,    20HDB      26H,     40H,     20H ,    20H     DB      2BH,     20H,     26H ,    20H     DB      20H,     20H,     30H ,    80HDB      20H,     30H,     1CH ,    10HDB      20H,     10H,     1CH ,    10HDB      20H,     20H,     26H  ,   20HDB      2BH,     20H,     30H  ,   20HDB      2BH,     40H,     20H   ,  15HDB      1FH,     05H,     20H    , 10HDB      1CH,     10H,     20H ,    20HDB      26H,     20H,     2BH ,    20HDB      30H,     20H,     2BH ,    40HDB      20H,     30H,     1CH  ,   10HDB      18H,     20H ,    15H  ,   20HDB      1CH,     20H ,    20H  ,   20HDB      26H,     40H,     20H  ,   20HDB      2BH,     20H,     26H   ,  20HDB      20H,     20H,     30H,     30H      DB      20H,     30H,     1CH,     10HDB      18H,     40H,     1CH,     20HDB      20H,     20H,     26H,     40HDB      13H,     60H,     18H ,    20HDB      15H,     40H,     13H ,    40HDB      18H,     80H,     00HEND
蜂鸣器相关文章:蜂鸣器原理


评论


相关推荐

技术专区

关闭