新聞中心

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



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 昌都县| 呼伦贝尔市| 铁岭市| 鹤山市| 上高县| 大城县| 洛宁县| 乌兰察布市| 昭平县| 宜兰市| 浮山县| 闽清县| 雷山县| 南木林县| 微山县| 贺州市| 日喀则市| 盈江县| 略阳县| 大方县| 大冶市| 韶关市| 成武县| 康保县| 临西县| 任丘市| 江安县| 玉环县| 吐鲁番市| 衡阳市| 高雄县| 连平县| 温州市| 南部县| 鄂尔多斯市| 陆丰市| 房山区| 正蓝旗| 遂平县| 高密市| 千阳县|