c51单片机课程设计——电子琴

c51单片机课程设计——电子琴

ID:24763876

大小:302.00 KB

页数:11页

时间:2018-11-16

c51单片机课程设计——电子琴_第1页
c51单片机课程设计——电子琴_第2页
c51单片机课程设计——电子琴_第3页
c51单片机课程设计——电子琴_第4页
c51单片机课程设计——电子琴_第5页
资源描述:

《c51单片机课程设计——电子琴》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、课程设计报告姓名:曹飞龙班级:101班学号:10101230课程设计名:简易电子琴指导老师:胡启龙1一、概述:本系统设计制作一个可演奏的电子琴。综合应用了两项设计:(1)能产生纯音,了解音调高低的控制方法,用键盘代替电子琴的键盘,控制演奏音乐。(2)演奏一支乐曲(天空之城)。那音阶要怎么使用C51单片机产生呢?C51在这项工作中运用它哪些资源呢?我们怎么实现一个按键对应一个音阶呢?二、系统描述:(1)我们从初中开始就知道,声音是由振动产生的,基本的这7个音阶的频率之间满足某种数学关系由低到高排列的自然音,所以我们可以通过改变单片机输出频率就

2、可以得到不同的音阶;(2)为了得到精确的频率(周期的倒数),我们可以使用C51单片机定时中断模块。(3)通过判断按键是否被按下,然后执行该按键按下时的函数(在程序中是改变T1的初值得到实现)。需要注意的是,在该程序中让8051的内部定时器使其工作在计数器模式MODE1下,改变记数值TH0及TL0以产生不同频率的方法。例如频率为523HZ,其周期T=1/523=1912微秒,因此只要令计数器定时956/1=956在每记数9次时将I/O口反相,就可得到中音D0(523HZ)。记数脉冲值与频率的关系公式如下:N=Fi/2/FrN:记数值    F

3、i:内部计时一次为1微秒.故其频率为1MHZ  Fr;要产生的频率1起记数值的求法如下:T=65536-N=65536-Fi/2/Fr例如:设K=65536,F=1000000=Fi=1MHZ,求低音D0(523HZ),高音的D0(1046HZ)的记数值。T=65536-N=65536-Fi/2/Fr=65536-1000000/2/Fr=65536-500000/Fr低音D0的T=65536-500000/262=63627中音D0的T=65536-500000/523=64580低音D0的T=65536-500000/1047=6505

4、9详细的音阶频率与计数初值可参考附录一;三、电路设计1.单片机最小系统模块2.三极管信号放大模块扬声器发出对应音符模块如下:13.按键电路模块:1四.程序设计:本系统的程序流程图如下:开始模块初始化音乐控制按键是否按下?播放音乐音符按键是否按下?播放音符按键所对应的音符终止1程序如下:#include#defineucharunsignedchar#defineuintunsignedintsbitkongzhi=P1^1;sbitfm=P1^0;//蜂鸣器输出的IO口uchartimeh,timel,i=8,t;//ti

5、meh,timel为定时器高低4位,i为演奏音符个数ucharcodeyinyue[]={0x63,0x71,0x83,0x71,0x82,0xA2,0x76,0x32,0x32,0x63,0x51,0x62,0x82,0x54,0x32,0x32,0x42,0x32,0x42,0x11,0x32,0x81,0x81,0x81,0x73,0x41,0x41,0x71,0x74,0x63,0x71,0x83,0x71,0x82,0xA2,0x74,0x31,0x31,0x63,0x51,0x62,0x82,0x54,0x31,0x42,0x8

6、3,0x71,0x71,0x83,0x91,0x91,0xA1,0x82,0x83,0x71,0x61,0x61,0x72,0x51,0x66,0xff};//---------------------------简谱---------------------------------------//1-7代表中音do~si,8代表高音doucharcodeyinfu[]={0x11,0x21,0x31,0x41,0x51,0x61,0x71,0x81,0xff};//----------------------------简谱音调对应的定时

7、器初值---------------------------ucharcodecuzhi[]={0xff,0xff,//占位符0xFC,0x44,0xFC,0xAD,0xFD,0x0A,0xFD,0x34,0xFD,0x83,0xFD,0xC8,0xFE,0x06,//中音do~si的T计数初值0xFE,0x22,0xFE,0x57,0xFE,0x85,0xFE,0x9B,0xFE,0xC2,0xFE,0xE4,0xFF,0x03};//高音do的T计数初值voiddelay1ms(unsignedintms);//延时ms毫秒子程序voi

8、ddelay165ms(uintz);//延时165ms,即1/4拍子程序voidkeysong();//演奏子程序intkey();voidsong();main(){kong

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。