积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> 单片机 >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
基于AT89S52的乐曲编辑发生器的设计
 
作者:欧伟明 周韬   来源:中电网    点击数:117   更新时间:2008-4-14
您可以添加到网摘 让更多人关注此文章:

    

 基于RTX51的乐曲编辑发生器以AT89S52单片机为控制核心,操作者可以通过4×4矩阵键盘输入约定格式的任意乐曲,按“播放”键后,系统便开始播放所编辑的乐曲,并且音调和节拍都可以由单片机精确控制。

  1 引言


  为了降低成本,在最小硬件设计的基础上,系统的功能尽可能用软件来实现,系统软件是在面向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所示。







  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的关系如下。







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


  3.2 乐曲的音调表示方法


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







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


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















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


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












  3.5 系统软件流程


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


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


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


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


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


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


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







  4 结束语


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

[1]



相关文章
· 基于ADSP-BF533的μClinux嵌入式系统移植与开发[8]
· 中嵌学院圆你高薪就业梦想[7]
· DDR2器件HY5PS121621BFP在嵌入式系统中的应用[64]
· 基于PXA255的PDA交通管理系统在Linux环境下的实现[193]
· 基于嵌入式技术的视频监控系统的设计[170]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
首尔半导体就日亚(NICHIA)专利
MIPS 科技授权国家集成
美国微芯科技公司与安森美半导体拟以每
中嵌联盟嵌入式工程师俱乐部"
e-Shuttle与香港科技园携手
美国国家半导体推出业界首个传感器信号
PAC 2008 
Power Archite
2008上半年中国集成电路市场回顾
日本开发出接近人眼功能的新型电荷耦合
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
13×8的led屏一般用什么方...
[分享]选购家用稳压电源...
[分享]变频电源的外围配置要点...
dsp控制异步电机,加cpld...
请问一下,5000系列的DSP...
modbus与gsm连接,请问...
DSP信号处理配套MEMORY...
FPGA微处理器POWERPC...
[推荐]嵌入式3.5寸工业主板...
高级射频工程师(猎头职务-珠海...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网