单片机通过蜂鸣器播放任意音乐代码实现(1):单片机代码部分
有时候我们需要借助单片机实现音乐播放,可行的方案有很多,但成本最低的方案还是通过单片机驱动蜂鸣器来实现音乐播放。本文通过改进常见的单片机驱动蜂鸣器方法,一定程度上实现了任意音乐可以通过蜂鸣器播放(能听出来的程度)。不再需要手动输入乐谱参数,大大节省了时间和提高了准确度。
所用软件
- keil 5(C51) V5.27.1.0:用于编写、编译C程序并生成hex文件
- Proteus 8 Professional V8.9:用于单片机仿真
1.根据国际标准音高求出定时器计数值
国际标准音高包含了哆啦咪法嗦来嘻(表中用1234567)的多个音高的频率,为了尽可能的还原音乐,这里模拟了其中9个频率的音高。下表为音高对应的频率。