前言:
利用单片机演奏音乐是单片机爱好者的兴趣之一,应用的范围也比较广泛。所谓音乐播放器,由单片机进行信息处理,再经过信号放大,由蜂鸣器发出乐曲声。我们知道,振动产生声音,振动频率不同所发出的声音也就不同。有规律的振动发出的声音叫“乐音”。音乐由音频和节拍构成,音频即发声的频率;节拍即延时的长短。因此利用单片机的定时器,产生一定频率的方波,即可以产生一定频率的声音。再利用单片机软件延时的方法来产生不同的节拍。把音频和节拍结合起来,进行合理的排列,即可播放出比较悦耳的音乐。本文比较详细地介绍了音乐播放器的工作原理、设计思路、硬件的选择及相关作用、软件的实现方法以及详细的程序清单。
控制单片机播放音乐的方式有很多,多数使用者利用单片机存储音乐与控制播放。本设计利用STC89C51单片机及少数外围电路控制音乐播放,产生两首不同的歌曲。 对于单片机产生音乐,关键是控制频率的输出。本设计采用了定时器T0中断的方法产生不同频率的脉冲,从而产生不同频率的声音。此外,使用红外一体化头VS1838B接收红外信号,通过外部中断INT0来进行对红外信号的解码,由单片机内部程序对不同的键值完成不同的操作。并且使用常用的无源蜂鸣器进行发声,实现了一个简单的遥控音乐播放器的功能。
红外遥控音乐台灯主要功能:
本次设计所要实现为以STC89C51为核心的红外遥控音乐及LED灯具组的功能。首先,我们选择耐压值为12V的白色发光二极管作为本次设计的灯具组成器件。其次,选用ULN2003及扬声器的语音模块通过对所选的音乐进行编码输入到单片机后再解码到语音模块来实现我们的台灯音乐播放功能
红外遥控音乐台灯整体电路设计:
根据设计要求,红外遥控音乐台灯可以分为三个模块进行设计:
1.单片机最小系统电路:单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的最小的系统单元。
对51系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路。本设计中使用的单片机为STC89C51,晶振电路使用12MHZ的晶振。复位电路:由电容串联电阻构成,当系统一上电,RST脚将会出现高电平,当RST脚的高电平持续两个机器周期以上就将复位。
2.红外解码电路:本电路主要用于对红外遥控器发出的红外信号进行解码,然后程序根据解码后的不同键值相应完成不同的功能。
3.音乐播放模块:本模块采用ULN2003及扬声器组成语音系统对经单片机解码后所得的音乐代码的数字量放大再转换为模拟量实现音乐的播放。
4.LED灯具组:我们选用耐压值为12V的发光二极管总共为12个。每4个led分为一组,分别与单片机A8、A9、A10管脚相连,从而实现台灯的三档亮度调节。
红外遥控音乐台灯原理框图:
红外遥控音乐台灯原理图截图:
红外遥控音乐台灯红外遥控器: