关键词:单片机,电子琴,程序
单片机因其体积小、功能强、价格低廉而得到广泛应用。本文介绍用AT89C51单片机设计微型电子琴的方法,仅需AT89C51最小系统,扩展一组小键盘(这里以4×4键盘为例,可按需要扩展),再加一片LM386做音频小功放,输出到扬声器。电源可由三节5号电池提供。
1设计原理
乐音实际上是有固定周期的信号。我们可以用AT89C51的一个定时器(如T1)控制,在P3.4脚上输出方波周期信号,产生乐音。根据不同的按键,调节T1的溢出时间,可输出不同频率的乐音,这样就做出了一台微型电子琴。
每个乐音的音高(频率)是固定的,表1列出了一个8度以及其上下共16个音的音名、频率及定时器T1初值对照(设晶体频率为6MHz),供参考。
![](http://www.21ic.com/d/file/201105/9d3d06c28a9f6ba8b2febb0fa89a736a.jpg)
![](http://www.21ic.com/d/file/201105/16bf0e5da5cc37366a681c2e45d99b40.jpg)
![](http://www.21ic.com/d/file/201105/15a5885f2ad7196bccbd389cba933967.jpg)
![](http://www.21ic.com/d/file/201105/db9290d4c2639cff0630698821eda952.jpg)
![](http://www.21ic.com/d/file/201105/e0291a0cba4cc0bcbfa4ba71a751ddee.jpg)
![](http://www.21ic.com/d/file/201105/a5c5d01b8c7595870da0f0a23536defd.jpg)
![](http://www.21ic.com/d/file/201105/bc2e703162c3da8c5017270f6958a6e3.jpg)
![](http://www.21ic.com/d/file/201105/4e7fc7afc9d02d76e87cc6a5f11b5928.jpg)
(3)定时器1中断服务程序框图见图3。
![](http://www.21ic.com/d/file/201105/0a80c0eb16aa9b69824d29371d977289.jpg)
定时器1中断服务程序:
![](http://www.21ic.com/d/file/201105/fbdbceb5cd1354410511e6b6aa10cc40.jpg)
(4)键盘扫描程序框图如图4所示。
![](http://www.21ic.com/d/file/201105/77c779906e4369a25e38b32361ab06db.jpg)