單片機(jī)的多段語音組合錄放系統(tǒng)設(shè)計(jì)
對該芯片的操作有獨(dú)立按鍵和微控制器SPI接口2種方式。當(dāng)按鍵方式操作時(shí),通過將圖中的S1~S4分別接地,就可以實(shí)現(xiàn)對ISD1730芯片復(fù)位、語音刪除、語音錄入、語音回放等操作,這些操作也可以通過STC89C52RC實(shí)現(xiàn)。ISD1730提供了4線(SCLK、MOSI、MISO、)SPI接口與STC89C52RC連接,系統(tǒng)采用了STC89C52RC的P1.0、P1.1、P1.2、P1.3口模擬SPI時(shí)序?qū)SD1730進(jìn)行操作。語音輸出方式有2種,系統(tǒng)以PWM的形式驅(qū)動一個8Ω的D級揚(yáng)聲器(SPEAKER),也可以配置成AUD(電流)或AUX(電壓)單端輸出的方式驅(qū)動外部的音頻放大器。
1.3 對語音信息的操作
1.3.1 語音信號錄入
可以采用商業(yè)的語音拷貝機(jī)或手動錄入方式,將語音信號錄入語音芯片;手動錄入時(shí),首先借助于聲音魔法師、文語轉(zhuǎn)換小精靈或其他的文字轉(zhuǎn)聲音軟件,在電腦上將需要錄入的文字轉(zhuǎn)換成多段語音信息,然后將電腦的耳機(jī)輸出口與如圖2所示的Analn引腳連接,也可以將發(fā)音設(shè)備對準(zhǔn)MIC;閉合S33鍵,打開音源,進(jìn)行錄制,錄制時(shí)指示燈LED閃亮;松開S33鍵則該段語音錄制結(jié)束,LED熄滅,一段語音錄制完成。同理可錄制下一段;全部語音錄制完成后,閉合S44鍵并保持,器件將會依次將錄制的語音全部播放出來,如果錄制不理想,可以刪除重來;閉合S33鍵并保持,LED閃爍7次,錄制的信息將全部刪除。
1.3.2 各段語音在芯片內(nèi)地址的確定
語音錄制完成后,要實(shí)現(xiàn)對多段語音組合輸出,還必須知道每段語音的存儲地址。STC89C52RC與ISD1730之間采用SPI通信協(xié)議,TC89 C52RC通過MOSI引腳發(fā)送指令給ISD1730,ISD1730語音芯片通過MISO引腳返回給STC89C52RC指令執(zhí)行的情況和自己內(nèi)部的狀態(tài),每一個SPI指令執(zhí)行時(shí)都會從ISD1730返回2個字節(jié)的數(shù)據(jù)反映出芯片的狀態(tài),這2個字節(jié)的D5~D15位反映了存儲器中當(dāng)前語音段的開始存放地址,因此通過軟件查詢就可以將存儲器中各段語音的存儲地址找出來。下面是其主要程序片段:
當(dāng)系統(tǒng)初始化完成后,執(zhí)行以上程序,利用串口調(diào)試程序可以觀察到返回的是每段語音存放的開始行的地址。其結(jié)束行的地址為下一段語音開始行的前一行地址,這樣就可以得到每段語音存放的開始和結(jié)束地址。
評論