摘? 要: 介紹用單片機(jī)進(jìn)行控制,利用ISD2590芯片設(shè)計(jì)實(shí)現(xiàn)的一種數(shù)字式自動(dòng)答錄系統(tǒng)。該系統(tǒng)具有一定程度的智能化,且實(shí)現(xiàn)簡(jiǎn)單,具有較大的可擴(kuò)充性。
關(guān)鍵詞: 單片機(jī)? ISD2590芯片? 錄音? 雙音多頻(DTMF)
?
隨著電子技術(shù)特別是數(shù)字技術(shù)的迅猛發(fā)展,電腦自動(dòng)應(yīng)答、數(shù)字點(diǎn)歌、自動(dòng)音頻服務(wù)、自動(dòng)應(yīng)答錄音電話(huà)等各種自動(dòng)答錄系統(tǒng)在越來(lái)越多的場(chǎng)合發(fā)揮著重要的作用。這些技術(shù)極大地方便了人們的工作和生活,提高了效率。本文介紹以數(shù)字存儲(chǔ)方式設(shè)計(jì)實(shí)現(xiàn)的一種簡(jiǎn)單的自動(dòng)應(yīng)答錄音系統(tǒng)。該系統(tǒng)主要采用ISD2590語(yǔ)音芯片進(jìn)行數(shù)字錄音,其特點(diǎn)是:音質(zhì)好,且可隨時(shí)更改主人留言信息。另外該系統(tǒng)利用單片機(jī)控制" title="單片機(jī)控制">單片機(jī)控制,具有一定程度的智能化及可擴(kuò)充性。
1 系統(tǒng)原理
數(shù)字存儲(chǔ)式" title="存儲(chǔ)式">存儲(chǔ)式自動(dòng)應(yīng)答錄音系統(tǒng)的原理如圖1所示,其核心器件是單片機(jī)。利用單片機(jī)檢測(cè)鍵盤(pán)、摘/掛機(jī)、鈴流等輸入信號(hào),并相應(yīng)地控制和實(shí)現(xiàn)雙音多頻(DTMF)信號(hào)的發(fā)送、語(yǔ)音芯片的錄放音等功能。
?
?
在電源方面,振鈴電路和通話(huà)電路由電話(huà)線(xiàn)上的直流饋電直接提取,其它電路用外電源(5V)供電。
系統(tǒng)分為硬件和軟件兩部分。
2 硬件設(shè)計(jì)
整個(gè)電路按功能主要分成兩大部分:語(yǔ)音收發(fā)電路" title="收發(fā)電路">收發(fā)電路和錄音部分。
2.1 語(yǔ)音收發(fā)電路的實(shí)現(xiàn)原理
語(yǔ)音收發(fā)部分的內(nèi)部組成如圖2所示。要求可傳送的語(yǔ)音信號(hào)在300Hz~3400Hz之間。
?
語(yǔ)音收發(fā)電路主要包括三大部分:振鈴電路、通話(huà)電路和發(fā)碼電路。其工作過(guò)程為:平時(shí)通話(huà)電路和發(fā)碼電路同電話(huà)線(xiàn)斷開(kāi);當(dāng)振鈴信號(hào)到達(dá)時(shí),振鈴電路工作,促使蜂鳴器發(fā)聲;摘機(jī)后,即通過(guò)轉(zhuǎn)換開(kāi)關(guān)使通話(huà)電路和發(fā)碼電路同電話(huà)線(xiàn)接通,交換機(jī)檢測(cè)后立即停止發(fā)送振鈴信號(hào),而轉(zhuǎn)接雙方的話(huà)音信號(hào),通過(guò)通話(huà)電路實(shí)現(xiàn)通話(huà)。若欲向外輸出話(huà)音信號(hào),首先摘機(jī)動(dòng)作使發(fā)碼電路與電話(huà)線(xiàn)接通,交換機(jī)檢測(cè)到即送來(lái)?yè)芴?hào)音;然后交換機(jī)負(fù)責(zé)把呼叫方撥發(fā)的DTMF信號(hào)送給被叫方,使被叫方電話(huà)振鈴。
振鈴電路主要用SGS公司的LS1240芯片,通話(huà)電路用TEA1061實(shí)現(xiàn),發(fā)碼電路使用可與單片機(jī)接口的HT9200A芯片,可實(shí)現(xiàn)DTMF數(shù)據(jù)的發(fā)送,且容易對(duì)其進(jìn)行軟件控制。
另外,考慮到后面的設(shè)計(jì)需自動(dòng)摘機(jī),轉(zhuǎn)換開(kāi)關(guān)用繼電器實(shí)現(xiàn),以利于單片機(jī)控制。
2.2 錄音功能的實(shí)現(xiàn)
2.2.1 ISD2590芯片
錄音時(shí)主要用ISD2590芯片,它是美國(guó)ISD公司的專(zhuān)利產(chǎn)品,具有音質(zhì)自然、使用方便、單片存儲(chǔ)、反復(fù)錄放、低功耗、抗斷電等特點(diǎn)。該芯片采用模擬數(shù)據(jù)直接在半導(dǎo)體存儲(chǔ)器中存儲(chǔ)的技術(shù),不需經(jīng)過(guò)A/D或D/A轉(zhuǎn)換。因此能夠非常真實(shí)、自然地再現(xiàn)語(yǔ)音、音樂(lè)、音調(diào)和效果聲,避免了一般固體錄音電路因量化和壓縮造成的量化噪聲和“金屬聲”。片內(nèi)信息可保存100年(無(wú)需后備電源),存儲(chǔ)單元可反復(fù)錄音十萬(wàn)次。
(1)芯片的電路特性
·手動(dòng)操作/微控制器控制兼容;
·多段信息處理,可分1~600段;
·輸入采樣頻率5.3kHz;
·典型帶寬2.3kHz;
·外部時(shí)鐘頻率1024.0kHz。
(2)部分引腳描述
·節(jié)電控制(PD)
本端拉高使芯片停止工作,進(jìn)入不耗電的省電狀態(tài)。芯片發(fā)生溢出,即端變低后,要將本端短暫變高復(fù)位芯片,才能使之再次工作。
本端變低后(而且PD為低),允許進(jìn)行錄放操作。芯片在本端的下降沿鎖存地址線(xiàn)和P/端的狀態(tài)。
本端在的下降沿鎖存。高電平選擇放音,低電平選擇錄音。錄音時(shí),由地址端提供起始地址,錄音持續(xù)到CE或PD變高,或內(nèi)存溢出。如果是前一種情況,芯片自動(dòng)在錄音結(jié)束處寫(xiě)入標(biāo)志。放音時(shí),由地址端提供起始地址,放音持續(xù)到標(biāo)志。如果一直為低,或芯片工作在某些操作模式" title="操作模式">操作模式,放音會(huì)忽略,繼續(xù)進(jìn)行。
信息何時(shí)結(jié)束在錄音時(shí)進(jìn)行設(shè)定。只要CE端上升沿到來(lái),錄音就停止,此時(shí)ISD芯片會(huì)在內(nèi)部一個(gè)獨(dú)立的EEPROM單元內(nèi)設(shè)置一個(gè)信息結(jié)束標(biāo)志。當(dāng)由端脈沖觸發(fā)放音時(shí),放音持續(xù)到位為止。
ISD芯片存儲(chǔ)陣列的每一行都可以獨(dú)立尋址,每一行中均勻地布置4個(gè)EOM定位點(diǎn),因此芯片共有2400個(gè)定位點(diǎn)(4×600=2400)。例如ISD2590采樣頻率為5.3kHz,每行的尋址時(shí)間為160ms,則的分辨率為40ms。這樣,從信息結(jié)束到信號(hào)輸出的最大延時(shí)是40ms。信號(hào)為負(fù)脈沖,脈寬為20ms。上升沿實(shí)際上標(biāo)志信息的結(jié)束,因此語(yǔ)音在處于低電平時(shí)仍繼續(xù)從芯片輸出,而在上升沿時(shí)停止。
·地址/模式輸入端(Ax/Mx)
地址端有兩個(gè)作用,取決于最高兩位(A8、A9)的狀態(tài)。當(dāng)最高兩位中至少有一個(gè)為0時(shí),所有輸入均解釋為地址位,作為當(dāng)前錄放操作的起始地址。當(dāng)這兩位全部為1時(shí),地址端就作為工作模式選擇端(高電平有效)。因此操作模式和直接尋址是相互排斥的(具體的操作模式可參考有關(guān)資料)。地址端只作輸入,不輸出操作過(guò)程中的內(nèi)部地址信息。地址在的下降沿鎖存。
·話(huà)筒前置放大器輸出端(ANA OUT)
這個(gè)輸出經(jīng)電容耦合到模擬輸入(ANA IN)腳。前置電壓增益取決于AGC端電平。
·模擬量放大器信號(hào)輸入端(ANA IN)
本端為芯片錄音信號(hào)輸入端。它接到輸入阻抗約為2.7kΩ的固定增益放大器。對(duì)話(huà)筒輸入來(lái)說(shuō),ANA OUT端應(yīng)通過(guò)外接電容連至本端。該電容和本端的3kΩ輸入阻抗給出了芯片頻帶的附加低端截止頻率。其他音源可通過(guò)交流耦合直接連至本端(繞過(guò)了ISD的前置)。
·話(huà)筒輸入信號(hào)端(MIC)
本端用于放大1~20mV的信號(hào),它是增益可控的跨導(dǎo)放大器,輸入阻抗10kΩ,最大增益24dB。一般駐極體話(huà)筒輸出的電平足夠驅(qū)動(dòng)該放大器。由于輸入阻抗已知,頻率響應(yīng)的下限由音頻信號(hào)源和輸入耦合電容決定。對(duì)于ISD2590,駐極體話(huà)筒選用0.1μF的耦合電容,它和本端的10kΩ輸入阻抗決定了芯片頻帶和低頻截止點(diǎn)。
芯片上的AGC電路控制前置放大器的增益,使增益在0~20dB之間變化,以維持合適的輸入電平。
·話(huà)筒參考端(MIC REF)
該端是前置放大器的反向輸入端,當(dāng)以差分形式連接話(huà)筒時(shí),可抵消噪聲,提高共模抑制比。這個(gè)輸入端如果不用,必須懸空。
2.2.2 錄間部分的電路原理
錄音部分的電路如圖3所示。
?
?
(1)單片機(jī)除了要控制ISO2590的、P/、PD和4個(gè)控制端,還要控制地址端的高4位(A9~A6),以使信息的分辨率最小為9.6s。
(2)圖3中的繼電器開(kāi)關(guān)J1-2可以控制芯片的錄音方式:當(dāng)如圖3所示連接開(kāi)關(guān),芯片從MIC錄音;當(dāng)斷開(kāi)J1-2,語(yǔ)音信號(hào)從20腳(ANA IN)錄入芯片,MIC不起作用。
3 軟件設(shè)計(jì)
3.1 主程序
先掃描鍵盤(pán)(采用非編碼鍵盤(pán)),若所按鍵的鍵值小于或等于0CH,表示要發(fā)碼,轉(zhuǎn)入發(fā)碼(SENDCODE)程序。這些鍵共包括:0~9、*和#鍵。
若鍵值大于0CH,則表示是功能控制鍵,依次判斷是哪個(gè)鍵,然后轉(zhuǎn)入相應(yīng)子程序" title="子程序">子程序。這里功能鍵共包括:ON/OFF、PLAY、READY、RECORD。
流程圖如圖4所示。
?
3.2 鍵盤(pán)掃描子程序
本程序采用非編碼鍵盤(pán),單片機(jī)必須對(duì)所有按鍵進(jìn)行監(jiān)視。一旦發(fā)現(xiàn)有鍵按下,單片機(jī)應(yīng)通過(guò)程序加以識(shí)別,找出它的行列值,并求出它的鍵值,然后轉(zhuǎn)入相應(yīng)的處理程序,實(shí)現(xiàn)該鍵功能。
3.3 ON/OFF鍵子程序
ON/OFF鍵是摘掛機(jī)控制鍵,它對(duì)應(yīng)的鍵值是10H。
當(dāng)有振鈴信號(hào)輸入或欲輸出話(huà)音時(shí),要將通話(huà)電路與電話(huà)線(xiàn)接通。此時(shí)可以按下ON/OFF鍵,單片機(jī)檢測(cè)到此鍵便控制繼電器JK1(使P1.4取反)完成此要求。
3.4 RECORD鍵子程序
RECORD鍵是錄主人留言信息控制鍵,它對(duì)應(yīng)的鍵值是0DH。
主人要把自己不在家的留言信息(例如:“您好,這是××的自動(dòng)留言機(jī),主人不在家,請(qǐng)留言,留言時(shí)間是80s”)。預(yù)先錄入ISD2590芯片中,以便需要時(shí)可以隨時(shí)調(diào)用。在這里留有9s的時(shí)間用來(lái)錄這段話(huà)。具體操作是:先按下RECORD鍵,程序檢測(cè)到此鍵后,便開(kāi)始錄主人留言信息并啟動(dòng)單片機(jī)的T0中斷定時(shí)。9s后自動(dòng)停止。
由于對(duì)ISD2590進(jìn)行直接尋址時(shí),信息的最小分辨率是150ms,所以將A0~A5都接地,將A6~A9連到單片機(jī)輸出端。這樣可以使信息的最小分辨率變?yōu)?.6s(150ms×26=9.6s)。利用單片機(jī)的T0中斷定時(shí)器從ISD的初始地址(即A6~A9都為0)開(kāi)始定時(shí)9s,并把這段時(shí)間留作主人留言區(qū)(剩下大約0.6s不用)。把接下來(lái)的80s用來(lái)錄對(duì)方留言信息。
3.5 READY鍵子程序
READY鍵是準(zhǔn)備實(shí)現(xiàn)自動(dòng)留言功能控制鍵,它對(duì)應(yīng)的鍵值是0EH。
當(dāng)主人出門(mén)前,預(yù)先按下此鍵等待。當(dāng)有振鈴信號(hào)輸入時(shí),振鈴檢測(cè)電路檢測(cè)到振鈴響了4次后,便發(fā)給單片機(jī)一請(qǐng)求信號(hào)。單片機(jī)響應(yīng)后,首先將通話(huà)電路與電話(huà)線(xiàn)接通(模擬摘機(jī)),然后將主人留言信息發(fā)給呼叫方,發(fā)送完畢后馬上準(zhǔn)備進(jìn)行錄音。本程序留有80s的時(shí)間錄對(duì)方留言信息,每次錄音都從上次錄音結(jié)束處開(kāi)始到此次對(duì)方錄音完畢并掛機(jī)為止,循環(huán)錄制(自動(dòng)覆蓋最前面信息),每次錄音完畢自動(dòng)掛機(jī)。主人回家后,可以按下復(fù)位鍵,再進(jìn)行其他的操作(比如播放留言信息)。
流程圖如圖5所示。
?
?
3.6 PLAY鍵子程序
PLAY鍵是播放留言控制鍵,它對(duì)應(yīng)的鍵值是0FH。
當(dāng)主人要聽(tīng)自己留言信息或?qū)Ψ搅粞孕畔r(shí)可以按下此鍵,這時(shí)便開(kāi)始播放第一段信息(主人留言);若不想聽(tīng)此段信息,可以不等其播放完,再按一下PLAY鍵,便從第二段開(kāi)始播放(對(duì)方留言);若再按此鍵,便重新播放第一段信息;只要按的不是PLAY鍵,就跳出此子程序,ISD2590停止播放。
流程圖如圖6所示。
?
?
本文設(shè)計(jì)實(shí)現(xiàn)了一種數(shù)字芯片存儲(chǔ)式自動(dòng)答錄系統(tǒng)。該系統(tǒng)具有實(shí)用性強(qiáng)、穩(wěn)定性高等諸多優(yōu)點(diǎn),適合家庭和商業(yè)兩用,且在功能上可以擴(kuò)展。
(1)若想錄多方留言信息,可以將這80s的時(shí)間細(xì)分成多段,每段多長(zhǎng)時(shí)間預(yù)先設(shè)定好。也可在電路中加入摘掛機(jī)檢測(cè)電路,當(dāng)對(duì)方掛機(jī)時(shí)自動(dòng)停止錄音。這種情況下每段錄音時(shí)間不固定。
(2)此電路還可以擴(kuò)展,加一些其他功能,例如:
·溫度報(bào)警功能。只要將溫度傳感器輸入端連至單片機(jī)外部中斷腳,當(dāng)溫度達(dá)到一定值時(shí),便進(jìn)入中斷,單片機(jī)控制語(yǔ)音收發(fā)電路自動(dòng)撥號(hào)(例如撥119),并告知對(duì)方這里有火災(zāi)。
·自動(dòng)轉(zhuǎn)接分機(jī)??梢詫⒄Z(yǔ)音芯片再留出一小部分用來(lái)存儲(chǔ)轉(zhuǎn)接的語(yǔ)音提示信息(例如:請(qǐng)撥分機(jī)號(hào),1為××處,2為××處),然后電路判定對(duì)方發(fā)來(lái)的DTMF碼并通過(guò)軟件和繼電器將對(duì)方自動(dòng)轉(zhuǎn)接到相應(yīng)的分機(jī)上。
?
參考文獻(xiàn)
1 楊為理.現(xiàn)代通信集成電路應(yīng)用技術(shù)手冊(cè).北京:電子工業(yè)出版社,1995
2 郭 維,陳英柳,王曉萍.中外電信集成電路使用手冊(cè)(上).北京:北京電子工業(yè)出版社,1992
3 李朝青.單片機(jī)原理及接口技術(shù).北京:北京航空航天大學(xué)出版社,1999
4 唐明道.ISD2500系列單片語(yǔ)音錄放電路.電子技術(shù),1996;(9):31~34
5 劉 欣,安欣賞. ISD語(yǔ)音器件分段地址的獲取.電子技術(shù),1999;(12):40~41