新聞中心

        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中的譯碼取反。具體的程序清單如下:



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 内丘县| 定州市| 革吉县| 曲靖市| 怀集县| 普兰店市| 秀山| 微山县| 三都| 阿尔山市| 增城市| 墨脱县| 东丰县| 牡丹江市| 万山特区| 玛多县| 本溪市| 沈阳市| 三河市| 河北省| 静海县| 曲靖市| 将乐县| 海林市| 呼伦贝尔市| 民丰县| 老河口市| 措勤县| 海安县| 林周县| 大埔县| 呼图壁县| 福贡县| 隆化县| 东阳市| 富平县| 闻喜县| 温州市| 吉安市| 兴安县| 城口县|