按键或者串口驱动蜂鸣器播放编制音乐.docx

按键或者串口驱动蜂鸣器播放编制音乐.docx

ID:52184390

大小:609.68 KB

页数:14页

时间:2020-03-24

按键或者串口驱动蜂鸣器播放编制音乐.docx_第1页
按键或者串口驱动蜂鸣器播放编制音乐.docx_第2页
按键或者串口驱动蜂鸣器播放编制音乐.docx_第3页
按键或者串口驱动蜂鸣器播放编制音乐.docx_第4页
按键或者串口驱动蜂鸣器播放编制音乐.docx_第5页
资源描述:

《按键或者串口驱动蜂鸣器播放编制音乐.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《微机接口与应用课程设计》结题报告按键或者串口驱动蜂鸣器播放编制音乐1.项目简介本设计是在Linux系统下以ARMS3C2440芯片的电路为基础,利用开发板上的蜂鸣器,通过软件编程对蜂鸣器进行发音频率、时间等的控制,进而利用按键或者串口驱动蜂鸣器来播放音乐。本设计播放的为编制音乐,即对音乐先进行解码后再播放。2.系统软、硬件结构设计系统通过开发板上相应的定时器,产生不同的频率信号,驱动蜂鸣器发出不同的音频信号。通过按键或键盘输入,选择播放不同的音乐。整体设计框架如图1所示。蜂鸣器播放编制音乐图1:系统整体设计2.1系统硬件组成本设

2、计利用KDLAB-I型微机原理与接口技术实验装置ARM部分,由核心板、主板、底板共同构成。其中蜂鸣器的位置如图2所示:图2:ARMS3C2440开发板蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成。当接通电源后,多谐振荡器起振,输出1.5-2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振

3、动膜片在电磁线圈和磁铁的相互作用下,周期性的振动发声。本实验开发板使用的蜂鸣器为电磁式蜂鸣器。其中主板上的蜂鸣器是通过PWM来控制的,原理图如图3所示。图3:蜂鸣器原理图蜂鸣器是通过GPB0IO口使用PWM信号来驱动工作的,其中GPB0可通过软件设置为PWM输出。PWM即脉冲宽度调制,是靠改变脉冲宽度来控制输出电压,通过改变周期来控制其输出频率。由S3C2440手册可知,S3C2440内部有5个16位定时器,定时器0、1、2、3都带有脉冲宽度调制功能,定时器0、1共享一个时钟分频器,定时器2、3、4共享一个时钟分频器,这两个时钟分

4、频器都能产生5种不同的分频信号值,即1/2、1/4、1/8、1/16和TCLK。每个定时器模块从时钟分频器接收自己的时钟信号,其分频器从相应的预分频器接收时钟。预标定器是可以编程且根据装载的值来分频PCLK的。改变定时器中的分频器值即可产生不同的频率,因此PWM可利用芯片内部的定时器电路很方便产生。2.2系统软件组成程序的开发是在LinuxFedora9系统的arm-linux-gcc-4.3.2编译环境进行的,主要包括音乐播放部分和键盘控制部分。软件整体设计思路如图4所示。图4:系统整体设计2.2.1音乐播放软件设计要利用蜂鸣器

5、播放出音乐,必须知道音乐构成中的音调和相应的节拍。一首乐曲是由很多音符组成的,将每个音符中包含的音调和节拍信息进行编码,作用于蜂鸣器上即可产生动听的音乐。乐曲简谱中1、2、3、4、5、6、7,即DO、RE、MI、FA、SO、LA、SI,不同的低音、中音、高音对应的频率如表1所示:表1:不同音调对应的频率表低音频率中音频率高音频率Do262Do523Do1046Re294Re587Re1175Mi330Mi659Mi1318Fa349Fa698Fa1397So392So784So1568La440La880La1760Si494Si

6、988Si1976利用数组将对应的高低频率存储下来,intfreq[]={262,294,330,349,392,440,494,523,587,659,698,784,880,988,1046,1175,1318,1397,1568,1760,1976},则当使用某一音调时调用相应数组中的元素即可。将一首歌的简谱中的音调和节拍信息按照一个音符三个数字进行编码,其中第一位代表DO、RE、MI、FA、SO、LA、SI不同的音调,第二位代表低、中、高音,第三位代表半拍数。如1,1,2代表2个半拍的低音Do,3,2,3代表3个半拍的中音

7、Mi,7,3,4代表4个半拍的高音Si。则利用该编码方式则可将一首歌如《新年好》编码如下,歌曲以音符0,0,0代表结束。doublemusic[]={1,2,1,1,2,1,1,2,2,5,1,5,3,2,1,3,2,1,3,2,2,1,2,5,1,2,1,3,2,1,5,2,2,5,2,5,4,2,1,3,2,1,2,2,6,2,2,1,3,2,1,4,2,2,4,2,5,3,2,1,2,2,1,3,2,2,1,2,5,1,2,1,3,2,1,2,2,2,5,1,5,7,1,1,2,2,1,1,2,6,0,0,0};//歌曲《新

8、年好》播放音乐的主要程序如下:doublebeats=0.5;//半拍的时间inti=0;intj=0;while(music[i]>0)//未到歌曲结尾时循环{j=music[i]+(music[i+1]-1)*7-1;//计算音符对应频率数组中

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

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

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