基于HT9032C的新型來電顯示器設(shè)計
據(jù)調(diào)查,市場上現(xiàn)有的來電顯示器大致可以分為兩類:一類是普通來電顯示器;另一類是可以和上位機(jī)連接的高端來電顯示設(shè)備。在單數(shù)據(jù)消息格式下,前者只能顯示主叫號碼、呼叫日期、時間等主叫識別信息,由于不能顯示主叫用戶的姓名,給用戶的使用帶來諸多不便。后者除了上述功能外,還具有主叫用戶姓名顯示、來電彈屏、語音報號、通話錄音等多種功能,但需要上位機(jī),待機(jī)耗電,且價格昂貴,適用范圍受到一定的局限。
本設(shè)計通過對原有的普通來電器加以改進(jìn),增加了液晶顯示模塊和語音報號芯片。在單數(shù)據(jù)消息格式下,該來電顯示器不僅可以顯示主叫號碼、呼叫日期、時間,而且可以顯示主叫用戶的姓名,使被叫用戶輕松地知道來電者的身份,方便用戶選擇接聽。該來電顯示器對有350個以下電話號碼的用戶最為實(shí)用,可以大大提高工作效率,具有很高的實(shí)用價值。
1 系統(tǒng)硬件設(shè)計
1.1 系統(tǒng)總體設(shè)計
本系統(tǒng)采用Atmel公司的增強(qiáng)型單片機(jī)AT89S52作為控制芯片。如圖1所示,系統(tǒng)由4個部分組成:FSK信號解調(diào)部分、來電信息顯示部分、按鍵部分和語音播放部分。系統(tǒng)結(jié)構(gòu)如圖1所示。
1.2 系統(tǒng)各組成部分具體設(shè)計
1.2.1 FSK信號解調(diào)部分
采用H0ltek公司生產(chǎn)的FSK解碼芯片HT9032C。HT9032C是接收物理層主叫識別信息的低功耗CMOS集成芯片。它滿足Bell 202和CCITT V.23 1200 b/sFSK數(shù)據(jù)傳輸標(biāo)準(zhǔn),同時能檢測振鈴和載波。電話線經(jīng)過接口電路接到HT9032C的TIP、RING、RDETl和RDET2引腳。當(dāng)有振鈴信號到來時,HT9032C的腳觸發(fā)下降沿。在第1次和第2次振鈴之間,HT9032C把邏輯“1”=(1200±12)Hz、“O”=(2 200±22)Hz,傳輸速率為1200 b/s的FSK信號解調(diào)成串行異步二進(jìn)制數(shù)據(jù)。當(dāng)檢測到有效載波信號時,觸發(fā)下降沿。在DOUTC腳只輸出主叫識別信號;而在DOUT腳輸出包括信道占用信號(由一組300個連續(xù)的O和1交替組成,第1位為0,最后1位為1,在通話狀態(tài)下信道占用信號不發(fā)送),標(biāo)志信號(由180個<掛機(jī)狀態(tài)下>或80個<通話狀態(tài)下>標(biāo)志位<邏輯1>組成,即持續(xù)的高電平),以及主叫識別信號的所有信號。各腳的時序波形如圖2所示。在VSS=0 V,VDD=5 V,晶振為3.58 MHz,工作溫度Ta=0-70℃時,測得tDOSC=2ms,tSUPD≥15 ms,tDAQ=14ms,tDCH≥8 ms。
HT9032C與AT89S52的硬件連接電路如圖3所示。HT9032C的引腳接AT89S52的外部中斷1,當(dāng)有振鈴信號時,腳觸發(fā)外部中斷1。HT9032C的引腳接AT89S52的外部中斷O,當(dāng)檢測到有效解調(diào)后的主叫識別信號時,腳觸發(fā)外部中斷0。HT9032C的DOUTC引腳接AT89S52的串行接地引腳。當(dāng)檢測到振鈴和有效載波信號時,便打開串口中斷,接收解調(diào)的FSK信號,得到來電信息。
HT9032C解調(diào)出的FSK基帶信號送入AT89S52的捕獲中斷,信號的傳送速率為1200 b/s,所以AT89S52設(shè)定波特率為1200 b/s,利用串口對信號進(jìn)行采集,由此得到O、1比特流。將其按10位合成字節(jié)信息,每個字節(jié)起始位是1,結(jié)束位為O,中間8位為信息。最后根據(jù)主叫識別的單數(shù)據(jù)消息格式提取所需的消息字,得到來電日期與來電號碼。
1.2.2 來電信息顯示部分
采用帶漢字字庫的YBl2232-Z液晶顯示模塊,用來顯示主叫用戶姓名、主叫號碼、日期、時間等信息。判斷到來電信息后,可依次取出各個信息并相應(yīng)進(jìn)行顯示。YBl2232-Z與AT89S52的連接如圖4所示。
[!--empirenews.page--]
1.2.3 按鍵部分
由于AT89S52具有8 KB在系統(tǒng)可編程Flash存儲器、256字節(jié)RAM和32位I/O口線,所以該系統(tǒng)無需增加額外的存儲器和按鍵控制部分。AT89S52的8 KB Flash存儲器除了存儲系統(tǒng)程序外,還可以存儲至少350個用戶的姓名和電話號碼。按鍵(DEL、UP、DOWN分別用于刪除、查閱主叫信息。)直接與AT89S52相連,用軟件實(shí)現(xiàn)按鍵消抖。
1.2.4 語音播放部分
采用錄放一體化的高保真單片固態(tài)語音集成電路ISD1420實(shí)現(xiàn)自動語音播放來電號碼。ISD1420內(nèi)部有128 KB的E2PROM用于存放語音信息,并可分成1 60段,每段存儲O.125 s的語音信息,總共可存儲20 s的信息。語音分段的信息是由ISD1420的地址線A0~A7的值決定的。在錄制過程中,將可能要播放的語音庫按每個O.5 s的單位進(jìn)行錄制。每個漢字或數(shù)字的語音信息對應(yīng)一個地址。在判斷到來電號碼后,依次給定A0~A7的值就能構(gòu)成一句話,從而播放來電號碼。
2 系統(tǒng)軟件設(shè)計
系統(tǒng)的軟件主要實(shí)現(xiàn)HT9032C FSK解調(diào)信號的采集、數(shù)據(jù)處理、來電用戶姓名查詢、來電信息數(shù)據(jù)顯示、語音報號功能。主程序流程如圖5所示。
3 數(shù)據(jù)記錄
3.1 數(shù)據(jù)分析
HT9032C解碼輸出比特信號為:
其寫成字符串為:Ox04,Oxl4,0x30,0x38,0x33,Ox30,Ox3l,0x30,Ox33,Ox34,0x30,Ox31,Ox33,0x38,Ox33,Ox34,Ox31,Ox34,0x32,Ox33,0x32,Ox37,0xEF
經(jīng)過分析,此消息數(shù)據(jù)為單數(shù)據(jù)消息格式,來電顯示的時間為08月30日lO時34分,來電號碼為013834142327,校驗(yàn)字為OxEP。所有數(shù)據(jù)(包括校驗(yàn)位)和按256的模求和為00,證明收到的數(shù)據(jù)完全正確。
3.2 上電時序
設(shè)計中,為了確保FSK解碼芯片正常工作,需要PDWN引腳在VDD上電和晶振振蕩穩(wěn)定后,才能拉低,否則會導(dǎo)致復(fù)位不良。如果PDWN外接RC電路,可適當(dāng)加大C值,以延長PDWN下降的時間。圖6為C=0.1μF,R=81 kΩ時,VDD、PDWN和晶振X1的波形。其中,VT為輸入低限門檻電壓。
結(jié)語
本文采用模塊化設(shè)計方案設(shè)計了一種來電顯示器。其電路簡單,性能可靠,且功耗低。該產(chǎn)品在試用中,收到了很好的效果,大大提高了用戶的工作效率。