單片機控制下的ISD芯片內(nèi)容復制電路的解決方案
在芯片中信息段不連續(xù)存儲的情況下,我們不妨將第i信息段和第i+1信息段之間的空白行看為第i+1信息段的組成部分,這相當于第i+1段的前面部分記錄了聽不到聲音的信息,并不影響聽覺。另外,由于ISD芯片在播放過程中,輸入地址保持不變,因此,如果源芯片所在系統(tǒng)電路便于測試,可直接通過測量的方法獲得所有信息段的起始地址。
3.2 內(nèi)容復制電路設計要點
ISD芯片內(nèi)容復制電路如圖4所示。圖中略去電源、自動增益控制、XCLK等相關外圍電路,這部分可參考圖2。地址信號、控制信號和狀態(tài)信號均為數(shù)字信號,可直接接至單片機(如MSC51系列)I/O端口,但考慮到有些單片機引腳的驅(qū)動能力有限,一般應加上拉電阻。例如,89C2051的P1口中的P1.0和P1.1是比較器端,沒有內(nèi)部上拉電阻,而P1口的其它端均有內(nèi)部上拉,因此用P1口控制ISD芯片的地址線時,P1.0和P1.1兩端應外接上拉電阻,否則地址控制會出錯。
在圖4的復制電路中,源芯片工作在放音狀態(tài),從SP+輸出的聲音波形經(jīng)過分壓電阻R和隔直電容C的簡單調(diào)整,即可被送入目的芯片的ANA IN輸入端,在錄音過程中被存儲在目的芯片的E2PROM中。
在單片機程序設計中,通常把源芯片中所有信息段的起始地址放在一張表中,這樣可以通過查表指令獲取起始地址,便于對每個信息段進行放音錄音操作。同時,應該注意程序中的延時處理,通常在給出啟動錄放操作的CE低電平之前,應插入1~10ms的延時,以確保PD、P/R和地址信號穩(wěn)定;在查詢到源芯片有效的EOM輸出狀態(tài)時,考慮到ISD2532芯片的EOM低電平寬度為12.5ms,這里也應加入12ms左右的延時;最后,在進入另一次循環(huán)處理下一信息段的復制之前,應相應地加入一些延時,以確保芯片能穩(wěn)定工作。
4 結(jié)束語
本文在介紹ISD2532語音芯片原理的基礎上,針對ISD2532芯片內(nèi)容復制的問題,較為全面地給出了源芯片多信息段起始地址的獲取方法,同時給出了一個簡單單片機控制下的ISD芯片內(nèi)容復制電路的解決方案。在調(diào)整相關參數(shù)情況下,該方案可適用于處理原理相近的ISD系列芯片的復制拷貝問題。
由于 ISD芯片具有現(xiàn)場錄音功能,ISD芯片在供電電源不穩(wěn)定,特別是上、下電期間可能會出現(xiàn)誤錄音問題;同時,在允許用戶自定義錄音時可能存在錄錯音問題。針對以上問題,本文提出的內(nèi)容復制電路也可作為一個模塊嵌入到實際系統(tǒng)中,作為恢復原始錄音的一種解決方案。
評論