用单片机实现的音乐播放器》及本站其它信息均来自网络!
行业新闻技术文章解决方案电路图产品库厂商库供应信息求购信息外刊文摘
 技术文章 -> PCB电源单片机DSP设备与仪器EDA放大/转换存储器嵌入式接口与连接通讯与网络模拟技术其它技术文章
 解决方案 -> 汽车电子光电与显示测试测量计算机与外设仪器仪表通讯与网络视像设备消费电子工业控制其它解决方案
 产 品 库 -> 存储器嵌入式单片机电源通讯网络接口电路DSP视频音频EDA/PLD显示光电电测仪表传感与控制其它产品
 首页 -> 技术文章 -> 单片机 -> 正文
   
 >> 最近更新
 • 高灵敏声控报警器
 • 超声波防盗报警探测器
 • 超声波防盗报警探测器电路
 • 超声波遥控电风扇变速伴海浪声电路(一)
 • 摩托罗拉V998维修电路图1
 • 摩托罗拉V998维修电路图2
 • 康佳5218手机维修 图二
 • 康佳5218手机维修 图一
 • 三星S300/S308手机维修实物图(二)
 • 三星S300/S308手机维修实物图(一)

用单片机实现的音乐播放器

作为单片机的重要硬件资源之一,利用定时器可以产生各种固定频率的方波信号,也可以产生包括"Do"、"Re"、"Me"--等音阶在内的各种频率声音。将各个音阶连接在一起,便可组成一支曲子或是演奏一段旋律。基于这个思想,笔者设计了一款特殊的"音乐播放器",其核心器件采用AT89C2051单片机。本播放器具有电路简单,功能强大等特点,极为适合初学者仿制。

一、功能特色

本播放器可实现循环播放、上一曲、下一曲、复位等功能。为了体现乐曲播放过程中的动态效果,在P1口增加了8只LED,作随机闪烁以指示旋律的节奏。

二、硬件设计

电路以AT89C2051为主控制器,S1为复位键,S2、S3分别为上一曲、下一曲选择键。晶振采用12MHz,音乐信号由P3.7口输出,经9012放大后推动喇叭发声(电路图见附图)。

三、软件设计

程序中根音选取的是C调三个8度内的音符,共21个音。每个音符对应频率由定时器T0产生(音符频率及对应计数初值见附表)。为了程序调用方便,每个音符都对应一个编码,占用一个字节。在程序中以查表的方式加载计数初值。当值为00H时表示空拍,与节拍码配合完成节拍发音。节拍码也占一个字节,其总时间长度等于基本时间乘以节拍码的值。节拍码值为01H时,表示当前乐曲结束,为00H时,表示全部乐曲结束。为了编码简单,一般节拍码高半字节表示整拍,低半字节表示分数,只要基本延时设定恰当即可,为了及时响应键盘操作,键扫描指令安排在基本延时时间子程序中。按键每按下一次,乐曲数目计数器R5加"1"或减"1",然后根据R5的内容转向不同的乐曲。

本程序包含4首乐曲。若要增加更多的乐曲,在存储空间许可的情况下(可直接换用4k的AT89C4051),只要参照所附的编码表将简谱转化为相应的代码附着在乐曲数据表中即可。



()
Google
Copyright © 2005-2008 555DZ.com 联系站长:55dz@163.com