如何编写51单片机音乐程序

如何编写51单片机音乐程序

ID:15431245

大小:47.50 KB

页数:16页

时间:2018-08-03

如何编写51单片机音乐程序_第1页
如何编写51单片机音乐程序_第2页
如何编写51单片机音乐程序_第3页
如何编写51单片机音乐程序_第4页
如何编写51单片机音乐程序_第5页
资源描述:

《如何编写51单片机音乐程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、如何编写51单片机音乐程序如何编写51单片机音乐程序正好做了一个音乐程序,贡献出来给你吧,希望你能满意。电路连接很简单,在P3.0端口接个蜂鸣器,不过效果一般。如果想效果好点,就加个放大电路,接个小功率喇叭就行。因为这里发电路不方便,所以如果需要放大电路,可加我QQ:7468485。音乐程序的设计原理和程序如下:设计原理⑴总体原理:乐曲中不同的音符,实质就是不同频率的声音。通过单片机产生不同的频率的脉冲信号,经过放大电路,由蜂鸣器放出,就产生了美妙和谐的乐曲。⑵单片机产生不同频率脉冲信号的原理:1)

2、要产生音频脉冲,只要算出某一音频的脉冲(1/频率),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期的时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期的时间再对I/O反相,就可以在I/O脚上得到此频率的脉冲。2)利用8051的内部定时器使其工作在计数器模式MODE1下,改变计数值TH0及TL0以产生不同频率的方法如下:例如,频率为523Hz,其周期天/523S=1912uS,因此只要令计数器计时956uS/1us=956,在每计数956次时就将I/O反接,就可得到中音D

3、O(532Hz)。计数脉冲值与频率的关系公式如下:N=Fi/2/Fr(N:计数值,Fi:内部计时一次为1uS,故其频率为1MHz,Fr:要产生的频率)⑶其计数值的求法如下:T=65536-N=65536-Fi/2/Fr计算举例:设K=65536,F=1000000=Fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。T=65536-N=65536-Fi/2/Fr=65536-1000000/2/Fr=65536-500000/Fr低音DO的T=6553

4、6-500000/262=63627中音DO的T=65536-500000/523=64580高音DO的T=65536-500000/1047=65059⑷C调个音符频率与计数值T的对照表如下表所示:表9.1C调各音符频率与计数值T的对照表音符频率(Hz)简谱码T值音符频率(Hz)简谱码T值低1DO26263628#4FA#74064860#1DO#27763731中5SO78464898低2RE29463835#5SO#83164923#2RE#31163928中6LA88064968低3M330

5、64103#693264994低4FA34964103中7SI98865030#4FA#37064260高1DO104665058低5SO39264260#1DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565124#646664463高3M131865157低7SI49464524高4FA139765178中1DO52364580#4FA#148065198⑸每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍

6、,下表为节拍码的对照。但如果1拍为0.4秒,1/4拍是0.1秒,只要设定延迟时间就可求得节拍的时间。假设1/4节拍为1DELAY,则1拍应为4DELAY,以此类推。所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如下表为1/4和1/8节拍的时间设定。表9.2节拍码对照表1/4节拍1/8节拍节拍码节拍数节拍码节拍数11/4拍11/8拍22/4拍21/4拍33/4拍33/8拍41拍41/2拍51又1/4拍55/8拍61又1/2拍63/4拍71又3/4拍77/8拍82拍81拍92又1/4拍9

7、1又1/8拍A2又1/2拍A1又1/4拍B2又3/4拍B1又3/8拍C3拍C1又1/2拍D3又1/4拍D1又5/8拍E3又1/2拍E1又3/4拍F3又3/4拍F1又7/8拍表9.3各调节拍的时间设定表1/4节拍1/8节拍曲调值DELAY曲调值DELAY调4/4125毫秒调4/462毫秒调3/4187毫秒调3/494毫秒调2/4250毫秒调2/4125毫秒⑹建立音乐的步骤:1)先把吧乐谱的音符找出,然后由上表建立T值表的顺序。2)把T值表建立在TABLE1,构成发音符的计数值放在“TABLE”。3)简

8、谱码(音符)为高位,节拍为(节拍数)为低4位,音符节拍码放在程序的“TABLE”处。表9.4简谱对应的简谱码、T值、节拍数简谱发音简谱码T值节拍码节拍数5低5SO16426011/4拍6低6LA26440022/4拍7低7SI36452433/4拍1中1DO46458041拍2中2RE56468451又1/4拍3中3M66477761又2/4拍4中4FA76482071又3/4拍5中5SO86489882拍6中6LA96496892又1/4拍7中7SIA65030A2

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

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

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