基于DS 的多功能語(yǔ)音電子電話號(hào)碼薄的研制
平時(shí)工作于IDLE狀態(tài)。為了有效地抑制噪聲,CODEC的模擬電源從AVdd端引出,而DSP、FLASH、ROM以及CODEC的數(shù)字電源從Vdd端引出。當(dāng)需進(jìn)入電話號(hào)碼簿工作而按下/OPEN鍵時(shí),MCU的P2.2輸出低電平使能TPS7233,由于/OPEN鍵按下瞬間的低電平使Q1飽和,同時(shí) P2.1輸出的高電平又保證了Q2的飽和,這樣就打開了從功能模塊的電源,而進(jìn)入號(hào)碼簿工作狀態(tài)。當(dāng)需要關(guān)斷從功能模塊的電源時(shí)?? MCU的P2.1輸出低電平,使Q2截止,從而Q1也截止而關(guān)斷其電源。當(dāng)記事簿的定時(shí)語(yǔ)音提醒時(shí)刻到來(lái)時(shí),MCU的P2.2和P2.0輸出低電平, P2.1輸出高電平,也打開了從功能模塊的電源,從而進(jìn)入了記事簿工作狀態(tài)。在記事簿或號(hào)碼簿工作狀態(tài)下,若電池欠電壓,則PG由高電平變?yōu)榈碗娖蕉霈F(xiàn)一個(gè)下降沿,向MCU申請(qǐng)中斷,MCU在中斷1服務(wù)程序中將關(guān)斷從功能模塊的電源,同時(shí)LCD顯示出電池欠電壓標(biāo)志,提醒用戶及時(shí)更換電池。
4 語(yǔ)音電子電話號(hào)碼薄軟件設(shè)計(jì)
軟件系統(tǒng)包括DSP軟件和MCU軟件兩大模塊,DSP的軟件主要是根據(jù)語(yǔ)音信號(hào)數(shù)字處理技術(shù)完成語(yǔ)音識(shí)別、語(yǔ)音合成等功能,由于篇幅有限,在此不予介紹。MCU的軟件采用結(jié)構(gòu)化的程序設(shè)計(jì)方法,各模塊均有一定的獨(dú)立功能,便于系統(tǒng)的功能擴(kuò)充和維護(hù)。
4.1基本定時(shí)器中斷服務(wù)程序模塊
流程圖如5所示,該服務(wù)程序每7.82ms被執(zhí)行一次。它完成鍵盤掃描功能,當(dāng)連續(xù)20次檢測(cè)到同一鍵值的鍵按下時(shí),將該鍵值放于鍵盤緩沖區(qū)中;它也完成日歷/時(shí)鐘計(jì)時(shí)功能,當(dāng)連續(xù)兩次檢測(cè)到時(shí)鐘定時(shí)器的中斷標(biāo)志位IRQW為1時(shí),時(shí)鐘的秒加1。若該中斷發(fā)生時(shí)的程序工作于IDLF模式下,此時(shí)LCD應(yīng)顯示日歷/時(shí)鐘信息,且中斷正常返回;若工作于電話號(hào)碼簿或記事簿功能程序,在2min內(nèi)無(wú)鍵按下,則應(yīng)關(guān)斷從功能模塊的電源且非正常中斷返回到某一初始化地址處,否則從功能模塊電源已關(guān)斷,若正常中斷返回到原斷點(diǎn)地址處,必定要死機(jī)。
4.2 主控模塊
該模塊是基于系統(tǒng)的操作流程設(shè)計(jì)的,如圖6所示。程序首先判斷是否有功能鍵按下,若無(wú)功能鍵按下,且記事簿的語(yǔ)音定時(shí)提醒時(shí)刻尚未到來(lái)時(shí),則CPU的時(shí)鐘切換為副時(shí)鐘并關(guān)閉主時(shí)鐘,置IDLE_FLAG為1并進(jìn)入IDLF狀態(tài)?;径〞r(shí)器中斷后,主程序?qū)⑼顺鯥DLE狀態(tài),在無(wú)功能鍵按下的情況下,重復(fù)上述過程。若有功能鍵按下,清IDLE_FLAG為0,并執(zhí)行相應(yīng)的功能模塊程序。
總之,與美國(guó)Sensory公司生產(chǎn)的具有國(guó)際領(lǐng)先水平的同類產(chǎn)品相比,我們研制的語(yǔ)音電子電話號(hào)碼簿具有以下優(yōu)點(diǎn)??
·識(shí)別率大于99%,提高了兩個(gè)百分點(diǎn);
·增加了記事簿、計(jì)算器、日歷/時(shí)鐘顯示、本地長(zhǎng)途區(qū)號(hào)過濾等功能;
·既有語(yǔ)音又有鍵控操作;
·體積小、重量輕,價(jià)格為其二分之一。
評(píng)論