时间:2024-04-25
张兰红
本文介绍的是一种基于单片机AT89C51的简易音乐盒设计。详细列出了硬件电路及软件设计流程图,将编译好的程序加载到仿真软件Proteus中的AT89C51,I/O口产生不同频率的方波,驱动蜂鸣器,发出不同的音调,流畅播放出音乐。
单片机Proteus音乐盒
1引言
本文设计的简易音乐盒是以AT89C51为核心元件的电子式音乐盒,利用其本身的存储,存放音乐,通过 I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏出歌曲。本音乐盒体积小,重量轻,使用起来很方便,还可制作成精美的礼品。
2简易音乐盒的基本功能
基本功能如下:(1)内建2首歌曲旋律;(2)用2个按键来选择演奏哪一首歌曲;(3)通过定时实现音乐频率的变化;(4)歌曲演奏中,可以按键中断,通过中断实现歌曲的播放和暂停。
3简易音乐盒的组成
简易音乐盒主要由AT89C51、晶振复位电路、蜂鸣器、按键等组成,其构成框图如图1所示。
利用单片机仿真软件Proteus设计出的简易音乐盒硬件电路中,用 P3.2、P3.3控制按键进行播放曲目选择;P1.1的输出经由三极管放大送至蜂鸣器;晶振频率12MHZ,起振电路中C1、C2均为22PF,可提高产生震荡信号的稳定性;R1,R2均为限流电阻。
4软件设计
音乐是由许多不同的音符组成,而每个音符对应不同频率,这样就可以利用不同频率的组合,加以与拍数对应的延时,构成音乐。因此设计音乐盒时,利用单片机的定时/计数器来产生不同频率的音频脉冲即能产生音乐。本软件采用KEIL C51语言编程,编写了主程序、音符播放程序,还有按键扫描程序(包括扫描,去抖延时)等。流程图如图2、3所示。
5结论
将编译好的程序加载到仿真软件Proteus中的AT89C51单片机。仿真操作会发现本程序可以通过按键播放2首歌曲,当没有按键时程序将自动循环播放歌曲。程序中通过定时器T1、T2的使用,实现音乐频率的变化。本设计中的关键点就是要弄清楚音乐中的音符和对应的频率以及单片机定时计数的关系。
参考文献:
[1]宋戈等.51单片机应用开发范例大全(第2版)[M].北京:人民邮电出版社,2012.
[2]张华杰.51单片机应用开发从入门到精通[M].北京:人民邮电出版社,2014.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!