IS22C011/20語音芯片的原理及在MCS-51
摘要:IS22C011/20是ISSI公司推出的高品質OTP語音芯片,可廣泛應用于語音玩具、賀卡及儀器設備中的語音提示報警中。文中介紹了IS22C011/20的引腳功能、內部結構、可編程選項、時序、應用線路以及應用于MCS-51單片機系統時的軟硬件設計方案。
關鍵詞:語音芯片;IS22C011/20;MCS-51
IS22C011和IS22C020是ISSI公司推出的高品質語音芯片,它們采用ADPCM壓縮技術、POP減噪技術和最先進的亞微米EPROM技術,實現了即時編程,并使用戶產品的開發時間大為縮短。IS22C011/20可由多種開發工具來支持,如IS22VP002(單片機開發系統)、IS22VP003/004(PC機開發系統)等。該芯片只需極少的外圍元件,便可實現高質量的語音播放,IS22C011/20語音芯片采用串聯擴展可使播放時間不受限制,而采用并聯擴展則有利于混音的形成。同時由CPU對其進行部分引腳的控制可方便地應用于儀器設備的語音提示或報警。IS22C011與IS22C020的主要技術特性如下:
●語音長度:
— 8kHz取樣:011/020:8/16s;
— 6kHz取樣:011/020:10/20s;
— 5kHz取樣:011/020:12.8/25.6s;
●電源電壓:DC2.4~6.0V;
●靜態功耗:<5μA;
●防抖觸發延時時間(Debounce delay):15ms
●STP脈沖寬度:30ms;
●采用4鍵觸發可提供8段語音。
1 引腳功能
IS22C011/20采用16-PIN和SOP封裝形式,其引腳排列如圖1所示,各引腳功能如下:
1、6腳(LED1、LED2):LED顯示驅動端,3Hz閃爍,011為高電平有效,020為低電平有效;
2、3腳(VOUT1、VOUT2):蜂鳴器驅動端;
4 腳(GND):電源地;
5腳(STP/BUSY):STP語音結束脈沖輸出信號或BUSY信號;
7腳(COUT):電流型D/A轉換輸出端口,其輸出信號可用于驅動揚聲器;
8腳(OSC):振蕩器電阻接入端,可用于控制采樣頻率;
9 腳(VPP):編程電源端,放音時不用;
10、11、13、14腳(S1~S4):語音觸發端,通常在內部被拉低,高電平有效,可用于控制8段語音,其譯碼如表1所列;
21腳(VCC):電源正端;
15腳(SBT):全播或順序播放控制端,此端采用內部下拉,高電平有效;
16腳(IRP):停止播放控制端,采用內部拉低,高電平有效。
2 內部結構
IS22C011/20的內部結構如圖2所示,由圖可知,該芯片用振蕩器、時鐘信號發生器來提供時鐘信號。其振蕩器頻率(即語音采樣頻率)由外接振蕩電阻ROSC確定,振蕩線路采用高穩定結構,因此在正常的工作電壓范圍內,采樣頻率均可保持恒定。該芯片中的邏輯控制電路是芯片的控制中心,可協調和控制地址定序器、ADPCM譯碼器、POP減噪電路等線路的工作。EPROM為256k字節的一次性(OTP)存貯器,可分成8段語音,每段語音長度由用戶編程控制,長短可不一,但總長度不能超過存貯器總容量的允許時間(如若采樣頻率為8kHz,總長度不能超過8s)。蜂鳴器緩沖輸出采用PWM輸出方式,可直接驅動蜂鳴器,并可減少耗電量,因此特別適用于鈕扣電池供電設備。其D/A電流輸出可直接用晶體管來推動揚聲器(1/4W),而無需復雜的濾波線路。
3 可編程選項及時序圖
IS22C011/20具有可編程選項功能,包括脈沖觸發及電平觸發選項、STB全播或順序播放選項、STOP或BUSY信號選項、放音結束噪音自動下降及非自動下降選項。圖3所示是其前三項選項的時序圖。放音結束噪聲自動下降通常是指在放音結束時COUT端出現的“POP”噪聲的下降。實際上,放音結束時使COUT端的輸出電流漸漸減少為零可降低電流突然為零(即非自動下降時)時出現的“POP”噪聲(即POP減噪),它可在聲音數據編碼時由用戶選擇與編程,其信息與聲音數據通常被存貯在存貯器中。
圖3中還給出了S1脈沖觸發及電平觸發的COUT時序圖,S2~S4的COUT時序圖則與S1完全一致。而SBT信號僅給出了脈沖觸發的時序圖,其電平觸發時序可參考S1時序。
4 典型應用
圖4為IS22C011/20的典型應用電路(LED1、LED2為020的驅動方式),圖中的三極管的β值應大于130、SP可選用8Ω、1/4W的揚聲器。圖5為芯片串聯使用時的電路圖,該電路的語音長度為兩片之和。圖6為并聯使用時的電路圖,其語音段可由8段擴展為16段,也可混音輸出。
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。
5.2 軟件編寫
以下為單段一次、再次播放和二段連播程序清單,其中“DEL”為觸發脈沖脈寬延時子程序,脈寬為30ms。為了提高CPU的工作效率,程序中采用T0口中斷定時方式。R0用于設置播放次數或段落數,#00H為單段一次播放,#01H為單段二次或二段連播。R1、R2的低四位設置二次播放的觸發譯碼,單段二次連播時R1、R2應設置相同的譯碼,單段一次時R2可不用。由于采用4069反相驅動,因此R1、R2中設置的觸發譯碼應將表1中的譯碼取反。具體的程序清單如下:
文章版權歸西部工控xbgk所有,未經許可不得轉載。