基于MT8880的多功能一鍵撥號電話系統(tǒng)設(shè)計
隨著市場需求的不斷變化,傳統(tǒng)電話逐漸暴露出功能單一、撥號呼叫不方便等問題。本文針對工業(yè)領(lǐng)域的調(diào)度系統(tǒng)和井下遇險緊急呼救項目的要求,設(shè)計出了具有一鍵撥號、遠程設(shè)置、自動接聽掛機等功能的新型電話系統(tǒng),該系統(tǒng)可同時用于民用領(lǐng)域,為老人、小孩、殘疾人等特殊群體及酒店客服系統(tǒng)提供方便的解決方案。
1 系統(tǒng)原理及構(gòu)成
系統(tǒng)的結(jié)構(gòu)框圖如圖1所示,主要由主控微處理器、DTMF編解碼模塊MT8880及外圍電路組成,外圍電路包括振鈴檢測電路、摘機電路、AGC自動增益調(diào)節(jié)電路和音頻放大電路。
圖1 系統(tǒng)的結(jié)構(gòu)框圖
本系統(tǒng)由PIC單片機作為微處理器控制MT8880工作,利用DTMF信號實現(xiàn)一鍵撥號及遠程設(shè)置。通過振鈴檢測電路接收振鈴信號,并由微處理器判斷達到有效振鈴次數(shù)后控制摘機電路模擬摘機,配合AGC電路和放大電路實現(xiàn)音頻流暢清晰。
2 DTMF編解碼模塊
DTMF即雙音多頻,具有易識別、抗干擾能力強、傳輸數(shù)據(jù)量小等優(yōu)點,本系統(tǒng)采用MITEL公司的MT8880芯片來編解碼DTMF信號。MT8880具有與微控制器相連的數(shù)據(jù)總線接口,可直接由單片機控制,內(nèi)部包含5個寄存器,由引腳RSI和R/W進行選擇,MT8880與單片機接口如圖2所示。
圖2 MT8880與單片機接口電路
DTMF信號由TONE腳輸出,IN-腳輸入,R2/R1的值決定內(nèi)部接收運放的放大倍數(shù),比值越大接收靈敏度越高。電阻R4和電容C2的值影響接收數(shù)據(jù)的穩(wěn)定性,D0~D3數(shù)據(jù)口輸出鎖存器的更新時間與(R4·C2)的值成正比,若(R4·C2)的值偏小會導(dǎo)致DTMF信號解碼后數(shù)據(jù)抖動,造成接收錯誤。
MT8880具有6種工作模式,由內(nèi)部控制寄存器CRA、CRB進行切換。當(dāng)同時工作在DTMF發(fā)送模式和突發(fā)模式時,MT8880向外發(fā)送持續(xù)(51± 2)ms的DTMF信號;當(dāng)工作在DTMF接收模式時,通過讀取MT8880內(nèi)部狀態(tài)寄存器SR的D2位判斷接收數(shù)據(jù)是否有效,并由D0~D3送入解碼后的數(shù)據(jù);當(dāng)同時工作在呼叫處理模式和中斷模式時,MT8880通過IN-腳檢測忙音信號,并由IRQ/CP腳輸出同頻率的方波供單片機識別,從而實現(xiàn)自動掛機。
3 外圍電路設(shè)計
3.1 自動摘機電路
自動摘機電路是由振鈴檢測和模擬摘機兩部分電路組成,電路如圖3所示。按照國標(biāo)GB3380中的規(guī)定,振鈴信號是電壓有效值為90±5 V的正弦波,1 s送4 s斷,鈴流經(jīng)過隔直電容C12進入電橋B1,經(jīng)全波整流后由VD3、VD4進行兩級穩(wěn)壓,最終整流成12 V直流電平驅(qū)動光耦U2工作,單片機通過記錄U2的工作次數(shù)來檢測振鈴次數(shù)。當(dāng)?shù)竭_預(yù)設(shè)的摘機振鈴次數(shù)時,單片機控制光耦U3工作,將摘機電阻R25接入電話回路,實現(xiàn)自動摘機。
圖3 振鈴檢測和模擬摘機電路
3.2 自動增益調(diào)節(jié)電路
通話質(zhì)量良好、話音清晰是電話機的基本要求,為此采用AGC自動增益調(diào)節(jié)來保證語音信號的平滑連續(xù)。
AGC電路能隨時跟蹤、監(jiān)視音頻放大電路輸出的信號電平并對輸入信號進行調(diào)節(jié)。當(dāng)輸入信號增大時,AGC電路自動減小放大增益;當(dāng)輸入信號減小時,AGC電路相應(yīng)增大放大增益,使音頻信號經(jīng)過放大后不產(chǎn)生削波和失真。本系統(tǒng)AGC電路由多級衰減器、放大器和反饋控制電路3部分組成,電路如圖4所示。
圖4 自動增益調(diào)節(jié)電路
音頻信號經(jīng)過隔直電容C6輸入,信號經(jīng)由R7、R8、R9組成的3級衰減器的衰減后進入LM358放大器,放大倍數(shù)為20 dB,放大后的信號一路進入話筒的揚聲器,另一路進入反饋控制電路,反饋控制電路將放大后信號檢波整流成與輸入信號幅值成正比的直流電平,進入比較器并控制衰減器的衰減倍數(shù),從而實現(xiàn)自動增益調(diào)節(jié)。
在實際應(yīng)用中,對于頻率范圍在30 Hz~20 kHz,幅值范圍在200 mV~1.5 V的音頻信號均有較好的增益調(diào)節(jié)作用,為保證信號不削波失真,放大后的信號幅值范圍應(yīng)在0~6 V之間。實驗波形如圖5所示,可以看出AGC電路隨著輸入信號的幅值變化調(diào)節(jié)電路的增益,對信號起到了良好的校正作用,部分實驗數(shù)據(jù)如表1中所示。
圖5 AGG電路波形
表1 AGG電路實驗數(shù)據(jù)
4 軟件設(shè)計
MT8880的接口是與Motorola68系列單片機總線配合使用的,PIC單片機需要模擬MT8880的讀寫時序?qū)崿F(xiàn)對其控制和通信。對MT8880的讀寫操作具有嚴(yán)格的時序要求,圖6所示MT8880寫控制寄存器時序,當(dāng)片選線CS置低電平選中MT8880,RS0、R/W設(shè)置為寫相應(yīng)寄存器時,時鐘線φ2在每個下降沿寫入有效數(shù)據(jù)。
圖6 MT8880寫控制寄存器時序
MT8880的模式轉(zhuǎn)換較為繁瑣,在每次模式轉(zhuǎn)換前需要對內(nèi)部控制器寄存器正確初始化,初始化時先將CRA寄存器清零,然后選中CRB寄存器并清零,部分程序如下:
系統(tǒng)設(shè)計為當(dāng)單片機接收到按鍵脈沖時,設(shè)置MT8880工作在DTMF發(fā)送模式,發(fā)送前后兩個號碼的間隙為0.5 s,實現(xiàn)一鍵撥號功能。當(dāng)系統(tǒng)接聽來電時,前5 s將MT8880設(shè)置為DTMF接收模式,此時可以由主叫電話對系統(tǒng)進行遠程設(shè)置預(yù)撥號碼和自動接聽振鈴次數(shù),設(shè)置方便靈活、節(jié)省人力,數(shù)據(jù)存儲在PIC單片機的E2PROM中,掉電后不丟失:5 s后將MT8880設(shè)置為呼叫處理模式,用于檢測忙音信號并自動掛機。軟件流程圖如圖7所示。
圖7 軟件流程圖
5 結(jié)束語
本系統(tǒng)性能穩(wěn)定可靠,解碼效率高,具有廣闊的應(yīng)用前景,特別適用于煤礦井下調(diào)度、賓館客服系統(tǒng)和老年人使用。利用MT8880呼叫處理模式進行信號音檢測時應(yīng)注意語音、回鈴音和忙音之間的交互影響,確定適當(dāng)?shù)男盘栆魠?shù)可以有效的進行檢測避免干擾。目前該系統(tǒng)已經(jīng)應(yīng)用于礦井?dāng)U音電話系統(tǒng)中,用戶反映良好。