中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 模拟技术 >>电子行业新闻正文

基于AT89S52的乐曲编辑发生器的设计

时间:2008/9/3 9:59:00  作者:  来源:ic72  浏览人数:1435
 
 

      1 引言

      基于RTX51的乐曲编辑发生器以AT89S52单片机为控制核心,操作者可以通过4×4矩阵键盘输入约定格式的任意乐曲,按“播放”键后,系统便开始播放所编辑的乐曲,并且音调和节拍都可以由单片机精确控制。为了降低成本,在最小硬件设计的基础上,系统的功能尽可能用软件来实现,系统软件是在面向MCS-51系列单片机的嵌入式实时多任务操作系统RTX51Tiny平台上,用C51高级语言和MCS-51汇编语言混合编程而开发的。

      2 系统硬件设计

      为了今后能够在线升级用户应用程序,采用带ISP接口的单片机AT89S52为核心构成乐曲编辑发生器。AT89S52具有快速8051内核、8 KB FlashE2PROM、256 B IDATA RAM,完全符合运行RTX51Tiny的硬件要求。笔者已研制了AT89S51/52的目标程序PC机下载软件,无需编程器即可完成单片机应用系统的开发。

      为了设计编辑任意乐曲的人机界面,采用4×4矩阵键盘作为系统的输入设备,采用点阵式液晶显示模块TC1602A作为系统的输出设备。为了存储和读出任意乐曲,采用带I2C串行接口的E2PROM存储器AT24C02。为了放大单片机AT89S52产生的乐曲声音,采用了功率放大器LM386。系统硬件电路原理图如图1所示。

ic72新闻中心

ic72新闻中心

      3 乐曲编辑和播放的软件实现

      3.1 单片机产生音频矩形脉冲的方法

      利用单片机的内部定时器T1并使其工作在定时器工作方式1(16 bit定时),改变T1的计数初值,就可以在单片机的I/O引脚端产生不同频率的音频矩形脉冲。

      例如,音频矩形脉冲信号的频率为523 Hz,则其周期T=1/523=1912μs,因此,只要让计数器定时1912μs÷2=956μs,当定时956μs到的时候,将AT89S52的乐曲输出引脚P3.7反相,就可得到中音DO(523 Hz)。

      单片机定时器计数初值T与单片机内部机器周期信号频率Fi和音频矩形脉冲信号频率Fr的关系如下:

ic72新闻中心

      为了叙述方便,不妨把定时器计数初值T称为简谱码。

      3.2 乐曲的音调表示方法

      单片机播放乐曲的过程,主要是用单片机来识别所编辑的乐曲并播放出来。单片机需要识别乐曲中的音调和音长(音长亦称为节拍),本设计用字母A~Z来代表乐曲的各个音调。数字0作为音调的结束标志,如表1所示。

ic72新闻中心

ic72新闻中心

      3.3 乐曲编辑的软件实现方法

      在系统软件设计时,已将按键处理作为一个任务即“按键处理任务”,它的主要功能是编辑乐曲。“按键处理任务”的执行需要“键盘扫描任务”向它发送信号来触发执行。“按键处理任务”的C51源程序如下。

ic72新闻中心

      3.4 乐曲播放的软件实现方法

      在设计“播放任务”程序时,利用AT89S52内部的定时器T1定时溢出中断来产生音调的频率,并利用RTX51操作系统的os_wait2(K_TMO,ticks)函数来产生音长。“播放任务”的C51源程序如下:

ic72新闻中心

      3.5 系统软件流程

      根据对系统功能的分析,把系统软件分解为5个任务,具体如下:

ic72新闻中心

      任务0:系统初始化任务,包括TC1602A的初始化、定时器T1的初始化、中断初始化。在启动任务1~任务4后,自动删除任务0,使得任务0只在系统上电复位时执行一次。

      任务1:键盘扫描任务。每隔50 ms执行1次,扫描所得的键值存于全局变量keycode,然后向“按键处理任务”发信号。

      任务2:按键处理任务。等待信号,根据键值keycode完成相应处理,实现的功能包括乐曲的编辑、乐曲的保存和读取等。

      任务3:播放任务。等待信号,按照音调和音长播放乐曲。

      任务4:显示刷新任务。根据光标指针变量的值在液晶屏上显示乐曲数据(音调和音长)。

      系统软件流程图如图2所示。

ic72新闻中心

      4 结束语

      本文给出了以单片机AT89S52为核心构成的任意乐曲编辑发生器,具有硬件电路简单、操作界面友好、使用方便的特点。该系统已投入运行,播放出来的乐曲效果良好,音调和节拍都由单片机控制得相当准确。

 
【相关文章】
·基于AT89S52的乐曲编辑发生器的设计
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9