新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > IS22C011/20语音芯片的原理及在MCS-51单片机中的应用

IS22C011/20语音芯片的原理及在MCS-51单片机中的应用

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

5 在MCS-51

5.1 硬件连接

当IS22C011/20的S1~S4、STB/BUSY等信号端由MCS-51或其它接口(如8255A)控制时可方便地实现单段一次、多次或多段连续触发,图7为8031与IS22C011/20连接线路。由于8031在复位时的口线输出为高电平,而S1~S4为高电平有效,因此P1. 0~P1.3可通过4069反相器与S1~S4相连。将STB/BUSY控制端与P3.5(T1口)相连可用于单段多次或多段连续触发,T1口工作于方式 2可自动再装入8位计数方式,并允许T1口中断。一旦前段播放完毕,则由STP信号触发T1口向CPU发出中断申请,以进行再次触发或触发下一段,因此, STP/BUSY信号选项应选择STP信号,而S1~S4则用于选择脉冲触发。由于防抖触发延迟时间为15ms,因此触发时的脉冲宽度必须大于15ms,本文中的程序设计为30ms。

43.jpg

5.2 软件编写

以下为单段一次、再次播放和二段连播程序清单,其中“DEL”为触发脉冲脉宽延时子程序,脉宽为30ms。为了提高CPU的工作效率,程序中采用T0 口中断定时方式。R0用于设置播放次数或段落数,#00H为单段一次播放,#01H为单段二次或二段连播。R1、R2的低四位设置二次播放的触发译码,单段二次连播时R1、R2应设置相同的译码,单段一次时R2可不用。由于采用4069反相驱动,因此R1、R2中设置的触发译码应将表1中的译码取反。具体的程序清单如下:



评论


相关推荐

技术专区

关闭