前言
VTX316是北京宇音天下科技有限公司最新推出的一款更具性價比的中文TTS語音合成芯片,采用QFN32(4*4mm)封裝,體積更加精巧,文本合成一次高達(dá)500字節(jié)數(shù)據(jù)(250個漢字),支持8種發(fā)音風(fēng)格,支持低功耗模式(2uA)等等……
但大家在開發(fā)過程中,往往還會忽略一些比較實用的小技巧,認(rèn)識這些將給您的開發(fā)帶來極大的便利,下面給大家細(xì)致講解。
一、芯片回傳數(shù)據(jù)
回傳數(shù)據(jù)是TTS語音合成芯片主動或被動告訴上位機(jī)自己當(dāng)前所處的狀態(tài),方便開發(fā)者根據(jù)這些數(shù)據(jù)來判斷要執(zhí)行的任務(wù)。
但很多開發(fā)者對于數(shù)據(jù)回傳理解不是很透徹,造成語音合成芯片不能按照設(shè)計執(zhí)行下一步任務(wù)。
1、初始化回傳:0x4A
芯片在上電或是復(fù)位后,會主動回傳帶有”0x4A“的數(shù)據(jù),只有接收到該數(shù)據(jù),表示語音芯片已經(jīng)初始化完成,可以開始執(zhí)行任務(wù)了。
注意:當(dāng)MCU沒有收到TTS芯片回傳的“0x4A”數(shù)據(jù)時,芯片是不會執(zhí)行任何指令的!
2、命令接收成功回傳:0x41
當(dāng)上位機(jī)給TTS語音芯片發(fā)送指令后,會主動回傳一個單字節(jié)數(shù)據(jù)“0x41”,代表命令接收成功,開始執(zhí)行。
3、命令接收失敗回傳:0x45
如TTS芯片接收到錯誤命令幀時,會主動回傳一個單字節(jié)數(shù)據(jù)“0x45”,這時就需要開發(fā)者們查看命令幀是否準(zhǔn)確了,或是因其它干擾因素影響,需要重新發(fā)送指令。
4、芯片狀態(tài)回傳:0x4E、0x4F
VTX316 TTS語音合成芯片有2種工作狀態(tài):空閑狀態(tài)、忙時狀態(tài),可通過軟件“芯片忙閑查詢命令”,進(jìn)行查詢。
命令幀:0xFD 0x00 0x01 0x21
忙時狀態(tài):指芯片正在合成播音中,任務(wù)還未結(jié)束,此時查詢狀態(tài)會回傳一個單字節(jié)數(shù)據(jù)“0x4E”。
注意:芯片在忙時狀態(tài)下,用戶很容易犯這樣一個錯誤
例如:當(dāng)前TTS芯片正在合成播音,此時MCU向TTS芯片發(fā)送一條指令,語音芯片會立即中斷當(dāng)前的合成任務(wù),從而執(zhí)行剛剛發(fā)來的新任務(wù)。為避免此類事件的發(fā)生,可以在發(fā)送指令前先查詢一下芯片的狀態(tài),如回傳“0x4F”(代表芯片處于空閑狀態(tài))再發(fā)送下一條指令。
空閑狀態(tài):也稱待機(jī)狀態(tài),此時查詢狀態(tài)會回傳一個單字節(jié)的數(shù)據(jù)“0x4F”。
注意:當(dāng)合成播音結(jié)束時,也會主動回傳一個單字節(jié)數(shù)據(jù)“0x4F”,表示合成完畢,進(jìn)入待機(jī)狀態(tài)了。
另外也可通過硬件查詢TTS芯片第6引腳“R/B”的電平來判斷語音合成芯片的忙閑狀態(tài)。
忙時狀態(tài):“R/B”為高電平。
空閑狀態(tài):“R/B”為低電平。
二、低功耗模式
對于要求極低功耗的應(yīng)用場景,開發(fā)者可選擇將TTS語音芯片進(jìn)入低功耗模式。
1、物理斷電
通常情況下開發(fā)者會采用上位機(jī)通過電源管理芯片控制語音合成芯片的供電腳“VCC”的通斷電(即工作完斷電,工作前上電)方案。
注意:采用此方案時需注意,芯片VCC管腳斷電后,要防止電流倒灌現(xiàn)象;另外,還要注意芯片上電后,待接收到TTS芯片回傳的“0x4A”后,再開始執(zhí)行任務(wù)。
2、DeepSleep模式
針對于上位機(jī)IO緊張的情況下,開發(fā)者也可以采用讓芯片進(jìn)入DeepSleep模式(睡眠模式),該模式下芯片功耗為2uA。
命令幀:FD 00 01 22
注意:TTS芯片進(jìn)入睡眠模式后,需先將芯片喚醒才能正常工作
喚醒方法有2種:
軟喚醒:喚醒命令幀0xFD 0x00 0x01 0xFF,其它指令也可以將語音合成芯片喚醒
硬喚醒:芯片15引腳(WAKEUP)下降沿信號喚醒
注意:芯片在睡眠時,可能因串口抖動,造成誤喚醒;同樣還要注意芯片上電后,待接收到TTS芯片回傳的“0x4A”后,再開始執(zhí)行任務(wù)。
三、配置參數(shù)實時存儲
VTX316語音合成芯片的合成參數(shù)配置是實時存儲在芯片內(nèi)部的(掉電不會丟失),開發(fā)者們無需每次開機(jī)都重新配置其參數(shù),只需配置一次即可。
四、特殊參數(shù)配置
特殊參數(shù)配置是應(yīng)對不同功放芯片時序差異,解決上電和斷電時產(chǎn)生的POP雜音和句首丟音的問題。
本語音合成芯片支持修改3個特殊參數(shù):
1、去上電POP音延時參數(shù)
遇到上電有POP雜音時,可增加此延時參數(shù)去除。
默認(rèn)值為0,調(diào)整范圍:0~200,即0~200ms。
注意:數(shù)值越小,芯片啟動越快。
2、去句首丟音延時參數(shù)
遇到句首丟音時,可增加此延時參數(shù)解決。
默認(rèn)值為0,調(diào)整范圍:0~250,即0~250ms。
注意:數(shù)值越小,出音響應(yīng)越快。
3、去句尾POP音延時參數(shù)
遇到句尾有POP雜音時,可通過增加此延時參數(shù)去除。
默認(rèn)值為50,調(diào)整范圍:0~300,即0~300ms。
注意:值越小,合成播音完畢返回“0x4F”(空閑狀態(tài))越快。
五、提示音連播
VTX316TTS語音芯片預(yù)置多首提示音效(有些開發(fā)者稱為鈴聲),提示音效一般用于在語音播報前,起到前導(dǎo)提示的作用。
而大多的提示音效時長較短,我們可以通過多次播放同一提示音來實現(xiàn)一個較長提示音的效果,例如:“sound901”提示音,音效為蜂鳴器“滴”,時長為50ms。
如果我們想實現(xiàn)先播報3次“滴”,每次間隔100ms,再播報其它內(nèi)容,可以這樣做:
發(fā)送文本內(nèi)容:sound901[p100]sound901[p100]sound901,歡迎使用宇音天下語音合成芯片
注意:[p100]=100ms
希望這些小技巧能幫助廣大開發(fā)者們更好地理解和應(yīng)用VTX316 TTS語音合成芯片。如果有任何疑問或需要進(jìn)一步幫助,請隨時告訴我們。
審核編輯 黃宇
-
語音合成芯片
+關(guān)注
關(guān)注
0文章
17瀏覽量
7488
發(fā)布評論請先 登錄
相關(guān)推薦
評論