ISD33000型語音芯片及其應(yīng)用
引言
語音記錄芯片有很多種,但美國(guó)ISD公司的ISD系列芯片倍受廣大用戶的青睞,它采用直接模擬存儲(chǔ)專利技術(shù),把語音信號(hào)以原始的模擬形式直接存儲(chǔ)在片內(nèi)的EEPROM存儲(chǔ)器中,無需進(jìn)行A/D轉(zhuǎn)換和壓縮處理,沒有大多數(shù)固態(tài)數(shù)字化聲音存儲(chǔ)技術(shù)對(duì)聲音質(zhì)量的影響,從而減少了失真,大大提高了錄放音質(zhì)量,并具有抗斷電、音質(zhì)好、使用方便、可反復(fù)錄放,無需專用的語音開發(fā)工具,能隨意更改內(nèi)容和耗電省等優(yōu)點(diǎn),很適合于現(xiàn)場(chǎng)錄放音系統(tǒng)。
ISD系列語音記錄芯片廣泛應(yīng)用于自動(dòng)化通信系統(tǒng)、移動(dòng)電話、智能儀器及其他需要語音提示的各種電子產(chǎn)品中。本文介紹了ISD33180在一種可以進(jìn)行心音記錄的電子聽診器中的應(yīng)用。
ISD33000的介紹
ISD33120/150/180/240系列是采用3伏電源供電的單片語音錄/放設(shè)備,可存儲(chǔ)2.0、2.5、3.0至4分鐘的語音信息。四種型號(hào)的不同錄放時(shí)間是靠不同的輸入采樣率來實(shí)現(xiàn)的,他們分別是8.0、6.4、5.3、4.0kHz。該CMOS工藝芯片包含一個(gè)內(nèi)部時(shí)鐘振蕩器、抗混迭濾波器、平滑濾波器、自動(dòng)選擇器、音頻放大器和高密度多層存儲(chǔ)陣列。ISD33000系列的EEPROM的容量都為960K,可存儲(chǔ)800行語音信息。
ISD33000系列具有TSOP和DIP/SOIC兩種封裝形式,如圖1所示。
圖1 ISD33000系列封裝圖
SS 片選信號(hào)(低電平允許芯片工作);
MOSI 串行數(shù)據(jù)輸入端;
MISO 串行數(shù)據(jù)輸出端;
SCLK 串行時(shí)鐘信號(hào);
VCCA、VCCD模擬和數(shù)字電路電源端;
VSSA、VSSD模擬地和數(shù)字地;
AUD OUT 音頻信號(hào)輸出端,可驅(qū)動(dòng)5kΩ負(fù)載;
AM CAP 自動(dòng)靜噪控制端;
ANA IN-、ANA IN+ 模擬信號(hào)輸入端,模擬信號(hào)可以采用單端輸入和差分輸入兩種方式;
RAC 行尋址時(shí)鐘,當(dāng)達(dá)到存儲(chǔ)器每一行的末尾時(shí)該引腳保持137.5ms的高電平和12.5ms的低電平,可用于信息管理;
INT 中斷端(低電平有效);
XCLK 外部時(shí)鐘輸入端。
一組四線(SCLK,MOSI,MISO,SS)SPI接口提供了ISD33000系列的控制和尋址功能。ISD33000系列產(chǎn)品的構(gòu)成就如在操作一個(gè)基于微控制器SPI總線接口的外圍設(shè)備。對(duì)于所有的內(nèi)部記錄器的讀寫允許操作都是通過SPI接口實(shí)現(xiàn)的。數(shù)據(jù)轉(zhuǎn)換方面的約定是,微控制器的SPI轉(zhuǎn)換鎖存器在SCLK的下降沿處鎖定,對(duì)于ISD33000設(shè)備,MOSI引腳上的數(shù)據(jù)在SCLK的上升沿處被鎖定,內(nèi)部數(shù)據(jù)在SCLK的下降沿處被鎖定輸出到MISO引腳上。中斷信號(hào)(INT)和內(nèi)部的只讀狀態(tài)記錄器是為了提供握手信號(hào)的目的??刂莆缓偷刂肺坏姆植既缦拢骸?位控制位〉和〈11位地址位〉。需要說明的是ISD33120/150/180/240設(shè)備只需要10位地址位,但為了錄音時(shí)間更長(zhǎng)產(chǎn)品的需要保留了第11位。對(duì)于每一個(gè)以EOM和OVF結(jié)束的操作,包括信息檢索周期,都將產(chǎn)生一個(gè)中斷。這個(gè)中斷將在下一個(gè)SPI周期有效時(shí)被清除。
應(yīng)用舉例
所設(shè)計(jì)的電子聽診器對(duì)拾取心音的操作與普通的錄音機(jī)相似,可以播放、記錄,還可以在各段記錄間搜索。這里采用89C51型單片機(jī)作為語音芯片的控制器,用戶的意圖通過按鍵來表達(dá)。
各指令與控制位的關(guān)系如表1所示。ISD33000設(shè)備啟動(dòng)要經(jīng)過TPUD時(shí)間后才可進(jìn)行操作(對(duì)于采樣頻率位8kHz的產(chǎn)品來說,約為25ms)。用戶在發(fā)出操作命令之前要等待TPUD的時(shí)間。以播放操作為例,從地址address開始的播放操作應(yīng)按下述的步驟進(jìn)行:
發(fā)出POWERUP命令;
等待TPUD時(shí)間(啟動(dòng)延遲時(shí)間);
發(fā)出從地址address的SETPLAY命令;
發(fā)出PLAY命令。
當(dāng)發(fā)現(xiàn)EOM標(biāo)記時(shí)產(chǎn)生一個(gè)中斷,然后停止播放操作。
該應(yīng)用中單片機(jī)的P1端口設(shè)計(jì)為人機(jī)接口,P2端口為單片機(jī)與語音芯片的通訊口。P1口的按鍵依次為:K1鍵為播放記錄選擇鍵(P/R);K2鍵為開始鍵(START);K3鍵為停止鍵(STOP);K4鍵為前倒鍵(PRE);K5鍵為后倒鍵(NEXT),其中K1鍵為撥動(dòng)開關(guān),其余各鍵均為不可自鎖的按鍵,發(fā)出脈沖信號(hào)。P2口依次連接33180的SCLK、MOSI、MISO、SS和RAC引腳,在記錄操作期間,存儲(chǔ)的信息達(dá)到存儲(chǔ)陣列的每一行末尾時(shí),RAC端會(huì)發(fā)出長(zhǎng)度一定的高脈沖,單片機(jī)此時(shí)將地址變量加一,記錄語音芯片的地址信息。在每段語音信息的末尾,語音芯片會(huì)發(fā)出一個(gè)中斷,將該中斷信號(hào)送入單片機(jī)外部中斷0的輸入端。
在沒有要求單片機(jī)工作之前,單片機(jī)處于循環(huán)查詢狀態(tài),一旦P1端口的K2、K4、K5、K6鍵有信號(hào)發(fā)出,指針表會(huì)跳轉(zhuǎn)至各自子程序執(zhí)行相應(yīng)的操作。以播放操作子程序?yàn)槔群笙蛘Z音芯片發(fā)出POWERUP命令,SETPLAY命令和PLAY命令,然后進(jìn)入等待狀態(tài)查詢P1.2端口STOP鍵是否有觸發(fā),如有觸發(fā)則終止播放操作,進(jìn)入循環(huán)查詢部分。播放操作的正常結(jié)束是通過外部中斷0的中斷子程序。
播放子程序清單:
PLAY: MOV OISTO1, #20H
LCALL TRANS ;發(fā)出POWERUP命令
MOV TMOD , #01H
MOV DPTR ,#25536
MOV TH0, DPH
MOV TL0, DPL
SETB TR0
JNB TF0,$ ;等待TPUD40ms時(shí)間
MOV OISTO, PFROM
MOV OISTO1, PFROM1
;讀取播放記錄的首地址
ANL O
ORL OISTO1, #0E0H
LCALL TRANS ;發(fā)出SETPLAY命令
ORL OISTO1, #0F0H
LCALL TRANS ;發(fā)出PLAY命令
MOV IE, #81H
HERE: JB P1.2, OVER ;如果要求中止則結(jié)束
SJMP HERE
OVER: MOV OISTO1, #10H
LCALL TRANS;發(fā)出STOPPWRDN命令
LJMP SELECT
INTX0: MOV IE, #0
LJMP OVER ;播放結(jié)束返回
RETI
注:
TRANS 為單片機(jī)與語音芯片的通訊子程
OISTO和OISTO1為存儲(chǔ)控制位和地址的寄存器
SELECT 為循環(huán)查詢子程
INTX0為中斷子程
其他記錄子程序,前倒子程序和后倒子程序與播放的程序相似,在此不再贅述。 ISD33000使用中應(yīng)注意的幾個(gè)問題
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論