单片机电子琴设计八个音调三首歌歌词显示

上传人:xins****2008 文档编号:112106073 上传时间:2019-11-05 格式:DOC 页数:10 大小:55KB
返回 下载 相关 举报
单片机电子琴设计八个音调三首歌歌词显示_第1页
第1页 / 共10页
单片机电子琴设计八个音调三首歌歌词显示_第2页
第2页 / 共10页
单片机电子琴设计八个音调三首歌歌词显示_第3页
第3页 / 共10页
单片机电子琴设计八个音调三首歌歌词显示_第4页
第4页 / 共10页
单片机电子琴设计八个音调三首歌歌词显示_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《单片机电子琴设计八个音调三首歌歌词显示》由会员分享,可在线阅读,更多相关《单片机电子琴设计八个音调三首歌歌词显示(10页珍藏版)》请在金锄头文库上搜索。

1、系统功能说明:1、通过八个按键是否按下发出相应的1234567i这8个音调2、实验中可以播放三首歌曲,通过开关控制3、播放歌曲时,液晶屏显示播放歌曲号及歌词附录1:晶振为12M的音乐频率表音符 频率(Hz) 简谱码(T值)低1DO 262 63628 TH0=F7H TL0=24H1DO# 277 63731 TH0=F8H TL0=F3H低2RE 294 63835 TH0=F9H TL0=5BH2RE 311 63928 TH0=F9H TL0=B8H低3M 330 64021 TH0=FAH TL0=15H低4FA 349 64103 TH0=FAH TL0=67H4FA 370 641

2、85 TH0=FAH TL0=B9H低5SO 392 64260 TH0=FBH TL0=04H5SO 415 64331 TH0=FBH TL0=4BH低6LA 440 64400 TH0=FBH TL0=90H6 466 64463 TH0=FBH TL0=CFH低7SI 494 64524 TH0=FCH TL0=0CH中1DO 523 64580 TH0=FCH TL0=44H1DO# 554 64633 TH0=FCH TL0=79H中2RE 587 64684 TH0=FCH TL0=ACH2RE 622 64732 TH0=FCH TL0=DCH中3M 659 64777 TH0

3、=FDH TL0=09H中4FA 698 64820 TH0=FDH TL0=34H4FA 740 64860 TH0=FDH TL0=5CH中5SO 784 64898 TH0=FDH TL0=82H5SO 831 64934 TH0=FDH TL0=A6H中6LA 880 64968 TH0=FDH TL0=C8H6 932 64994 TH0=FDH TL0=E2H中7SI 988 65030 TH0=FEH TL0=06H高1DO 1046 65058 TH0=FEH TL0=22H1DO 1109 65085 TH0=FEH TL0=3DH高2RE 1175 65110 TH0=FE

4、H TL0=56H2RE 1245 65134 TH0=FEH TL0=6EH高3M 1318 65157 TH0=FEH TL0=85H高4FA 1397 65178 TH0=FEH TL0=9AH4FA# 1480 65198 TH0=FEH TL0=AEH高5SO 1568 65217 TH0=FEH TL0=C1H5SO 1661 65235 TH0=FEH TL0=D3H高6LA 1760 65252 TH0=FEH TL0=E4H6 1865 65268 TH0=FEH TL0=F4H高7SI 1967 65283 TH0=FFH TL0=03H休止符用TH0=FFH ,TL0=F

5、FH表示附录2:LCD相关资料两行液晶显示的地址:(均为十六位计数)0 1 2 3 4 5 6 7 8 9 A B C D E F40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F命令格式要求,设置地址指针的时候第8位为1,后边为地址,即AC0AC6,就是对应上表的地址。附录3:实验程序: RS BIT P2.0 ;定义液晶显示端口标号 RW BIT P2.1 E BIT P2.2;* T0TH EQU 24H ;T0两个暂存变量 T0TL EQU 23H ORG 0000H LJMP INITION ORG 000BH LJMP T0INT ORG

6、 0100H ;*;*液晶初始化*INITION:MOV SP,#70H MOV P0,#01H ;清屏CALL ENABLEMOV P0,#38H ;8位,2行显示CALL ENABLEMOV P0,#0CH ;屏显on,关光标 CALL ENABLEMOV P0,#06H ;计数地址加1,自动右移CALL ENABLE;*;开机提示;*MOV P0,#80HCALL ENABLEMOV DPTR,#TABLE0 ;写数据的第一行CALL WRITE1 MOV P0,#00010000B ;光标左移两位CALL ENABLEMOV P0,#00010000BCALL ENABLE CALL

7、DEL0LJMP MAIN ;*写指令ENABLE: CLR RSCLR RWSETB ECALL DEL0CLR ERET;*写数据WRITE1:MOV R1,#00H ;查表程序,从表头到表尾A1:MOV A,R1MOVC A,A+DPTRCALL WRITE2INC R1CJNE A,#00H,A1 ;未到字符串末尾继续RETWRITE2:MOV P0,A ;直接将数据写入液晶屏SETB RSCLR RWSETB ECALL DEL0CLR ERETDEL0:MOV R4,#020HC0:MOV R5,#020HC1: DJNZ R5,C1 DJNZ R4,C0 RET ;*TABLE0

8、:DB WELCOM HERE,00H;*内存初始化*INITIAL: MOV R3,#08HMOV R0,#30HM1:MOV R0,#00HINC R0DJNZ R3,M1 RET ;*选择按键播放八个音调*MAIN: MOV SP,#80H ;初始化堆栈 MOV TMOD,#11H ;定时器0工作方式0,定时器1工作方式0 SETB EA SETB ET0 ;计数器0允许 SETB ET1 ;计数器1允许START: SETB P3.7 ;关蜂鸣器 CLR TR0 ;定时器不允许 SCAN: ;键盘扫描 MOV A,P1 CJNE A,#0FFH,SU_KEY ;判断键盘按下,跳到SU_

9、KEY,若未按,继续扫描 NOP LJMP SCANSU_KEY:SU_KEY1: JB P1.0,SU_KEY2 ;如果不是第1个键按下,转 MOV DPH,#0FCH MOV DPL,#44H SJMP PLAY SU_KEY2: JB P1.1,SU_KEY3 ;如果不是第2个键按下,转 MOV DPH,#0FCH MOV DPL,#0ACH SJMP PLAY SU_KEY3: JB P1.2,SU_KEY4 ;如果不是第3个键按下,转 MOV DPH,#0FDH MOV DPL,#09H SJMP PLAYSU_KEY4: JB P1.3,SU_KEY5 ;如果不是第4个键按下,转 MOV DPH,#0FDH MOV DPL,#34H SJMP PLAYSU_KEY5: JB P1.4,SU_KEY6 ;如果不是第5个键按下,转 MOV DPH,#0FDH MOV DPL,#82H SJMP PLAYSU_KEY6: JB P1.5,SU_KEY7 ;如果不是第6个键按下,转 MOV DPH,#0FDH MOV DPL,#0C8H SJMP PLAYSU_KEY7: JB P1.6,SU_KEY8 ;如果不是第7个键按下,转 MOV DPH,#0FEH MOV DPL,#06H SJMP PLAYSU_KEY

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号