您当前位置:镇江上元教育 >> 机械电子 >> 技术资讯 >> 浏览文章

基于AT89C51型单片机的号音自动播放器设计

来源:上元教育   【上元教育:技能改变命运,上元成就未来】   2012-9-20 10:56:21
上元教育集团是一家综合性培训学校,每年为长三角地区输送万余名技能型人才!选择上元教育,就是选择成功!

1 引言 机关、院校日常作息需要计时和号音提示,笔者利用AT89C51型单片机和LM386型音频功率放大器构成了自动计时和号音播放器,成本低,效果好,值得推广。 2 AT89C51的主要特性和引脚功能 AT89C51是带4K字节闪烁可编程可擦除只读存储器(EPEROM)的低电压、高性能CMOS 8位微处理器(俗称单片机)。该单片机与工业标准的MCS-51型机的指令集和输出引脚兼容。AT89C51将多功能8位CPU和闪烁存储器组合在单个芯片中,为很多嵌入式控制提供了灵活性高且价格低廉的方案。 AT89C51的主要特性如下: 寿命达1000写/擦循环; 数据保留时间:10年; 全静态工作:0Hz-24MHz; 三级程序存储器锁定; 128×8位内部RAM; 32可编程I/O线; 2个16位定时器/计数器; 5个中断源; 可编程串行通道; 低功耗闲置和掉电模式; 片内振荡器和时钟电路。 AT89C51引脚排列如图1所示,引脚功能如下: VCC(40):+5V。 GND(20):接地。 P0口(39-32):P0口为8位漏极开路双向I/O口,每引脚可吸收8个TTL门电流。 P1口(1-8):P1口是从内部提供上拉电阻器的8位双向I/O口,P1口缓冲器能接收和输出4个TTL门电流。 P2口(21-28):P2口为内部上拉电阻器的8位双向I/O口,P2口缓冲器可接收和输出4个TTL门电流。 P3口(10-17):P3口是8个带内部上拉电阻器的双向I/O口,可接收和输出4个TTL门电流,P3口也可作为AT89C51的特殊功能口。 RST(9):复位输入。当振荡器复位时,要保持RST引脚2个机器周期的高电平时间。 ALE/PROG(30):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节,在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,它可用作对外部输出的脉冲或用于定时目的,要注意的是,每当访问外部数据存储器时,将跳过1个ALE脉冲。 PSEN(29):外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期2次PSEN有效,但在访问外部数据存储器时,这2次有效的PSEN信号将不出现。 EA/VPP(31):当EA保持低电平时,外部程序存储器地址为(0000H-FFFFH)不管是否有内部程序存储器。FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1(19):反向振荡器放大器的输入及内部时钟工作电路的输入。 XTAL2(18):来自反向振荡器的输出。 3 号音自动播放系统的设计 号音自动播放系统如图2所示,AT89C51的P1.0端接音频放大模块的IN+端口,在音频放大模块的VOUT端接一个8欧姆或者16欧姆的喇叭。 3.1 电路设计及音乐编程原理 若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。 利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。 计数脉冲值与频率的关系式是: N=fi÷2÷fr 式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。 其计数初值T的求法如下: T=65536-N=65536-fi÷2÷fr 例如:设K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。 T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr 低音DO的T=65536-500000/262=63627 中音DO的T=65536-500000/523=64580 高音DO的T=65536-500000/1046=65059 C调各音符频率与计数初值T对照如表1所示。 3.2 主程序流程 本系统主要完成作息定时和号音播放功能,因此用定时器T1中断方式产生100ms基准时间,再根据作息表上各段时间的长短对基准时间用软件计时。可以用查表方式取得计数参数,计时到后将播放子程序地址送DPTR,转入播放子程序,放2遍对应号音后再继续计时。主程序流程如图3所示。 播放子程序是用T0中断方式控制P1.0不断取反以产生不同频率音符,节拍的长短靠调用200ms延时子程序次数来完成。子程序也用查表来完成。

编辑:本站原创  点击数:次

分享到:

开课信息

相关文章

最新开课
推荐课程
  • 2017会计证学习无忧~专业的全职授课老师 随时补
  • 镇江会计从业资格证全日制班开课啦。
  • 澳门博彩娱乐平台那就好 镇江会计从业资格证考试培训
  • 镇江9月会计上岗证可以打印准考证了。
  • 镇江针对12月份会计证考试的晚班开课啦
  • 镇江会计实操培训周六班开课啦
  • 镇江会计上岗证哪里培训比较好
  • 2016年教师资格证招生简章
  • 2016年催乳师招生简章
  • 2016年育婴师月嫂招生简章
  • 2016年公共营养师招生简章
  • 2016年人力资源管理师招生简章
  • 2016年镇江会计上岗证优能班招生简章
  • 2016年镇江会计做账报税优能班招生简章
  • 2016年镇江园林预算实操招生简章
  • 2016年镇江市政预算实操招生简章
  • 2016年镇江装饰预算实操招生简章
  • 2016年镇江上元一级建造师招生简章
  • 2016年镇江一级消防工程师招生简章
  • 镇江平面设计师精英班培训 招生简章
  • 镇江上元西班牙语课程火热招生,零基础学法语小班
  • 镇江法语暑假小班制培训
  • 四月礼物月/镇江上元教育培训欢迎您来报名抽奖/
  • 镇江上元教育日语小班火热招生、看漫画书、影片
  • 2016镇江土建预算实操班招生简章 镇江土建预算培
  • 【镇江韩语培训】招生简章
  • 镇江鲜花插画师培训 招生简章
  • 镇江素描初级培训 招生简章
  • 镇江Auto cad机械制图班培训 招生简章
  • 镇江三菱PLC全科班培训 招生简章
  • 镇江西门子PLC全科班培训 招生简章
  • 镇江建筑弱电工程师培训 招生简章