新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 以单片机AT89S52为核心的乐曲编辑发生器的设计

以单片机AT89S52为核心的乐曲编辑发生器的设计

作者:时间:2012-06-08来源:网络收藏

3.4 播放的软件实现方法

“播放任务”程序时,利用内部的定时器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 结束语

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


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭