?

新型智能固定電話來電顯示系統設計

2016-10-18 10:37吳艷艷常芳
中國新通信 2016年16期
關鍵詞:單片機電話

吳艷艷+常芳

【摘要】 為了使用戶快捷地知道主叫用戶的身份,設計了一種由單片機STC90C58AD、來電解碼芯片HT9032D、USB接口芯片CH375B、U盤以及其它外圍電路構成的固定電話來電顯示系統。并借助串口調試精靈軟件對系統的硬件設計和軟件設計等進行了驗證。結果表明系統可顯示陌生固定電話號碼和手機號碼的歸屬地、常用固定電話和手機號碼的主叫姓名和歸屬地,并可對存在U盤中的電話薄信息進行更新等。

【關鍵詞】 電話 來電顯示 單片機 HT9032 CH375

Design of intelligent fixed telephone callerLoc system Wu Yanyan, Chang Fang(College of Traffic and Logistic, Taiyuan University of Science and Technology, Taiyuan 030024, China)

Abstract: In order to quickly know the identity of call subscriber ,This paper introduced the design of telephone display system consists of STC90C58AD by single -chip microcomputer, call decoder chip HT9032D, USB interface chip CH375B, peripheral U disk, and other peripheral circuit mainly including, verified the hardware design and software design Using serial port debug elves software. The results show that this system can display unfamiliar telephone number and the CallerLoc, commonly used mobile phone numbers and its owners name and CallerLoc. It can also refresh the telephone directory in the U disk.

Keywords: telephone; callerLoc ; single-chip microcomputer; HT9032; CH375

引言

截止2015年10月,全國電話用戶總數達到153700.9萬戶。其中,固定電話用戶達到23500.90萬戶;移動電話用戶達到130200萬戶[1][2],中國已成為全球用戶最多的通訊大國。雖然我國固定電話的使用量已經低于移動電話,但固定電話仍有很多手機不可替代的優勢,尤其在酒店、銀行、工廠、醫院、學校等公共場所及有老人的家庭,使用固定電話會更方便。

早期的固定電話遠遠不能滿足現代人們的需求,1987年美國首先推出來電顯示業務[3],備受用戶歡迎。目前市場上固定電話雖具有來電顯示功能,但尚存三方面的不足,一是多數固定電話來電顯示只能顯示電話號碼,難以斷定主叫方身份;二是少數固定電話雖然可以顯示主叫姓名和歸屬地,但用戶不能更改常用聯系人的信息;三是若主叫用戶用手機撥打固定電話時,被叫方無法預知手機號碼的歸屬地[4]。本文針對以上問題,在原有固定電話來電顯示的基礎上進行改進,設計了一種基于信息導入的固定電話來電顯示系統,即將常用聯系人的姓名和歸屬地等信息通過U盤導入,方便用戶預知來電者的身份。

一、系統方案設計

本設計以STC90C58AD單片機為控制器,將U盤中的電話薄信息通過單片機讀取到單片機內部EEPROM中,來電信息由解碼芯片HT9032D與單片機通過串口中斷來獲取,并將獲得的來電信息與EEPROM中的信息進行比較,最終將比較得到的有效信息在LCD上顯示[5-6]。整個系統由5個模塊組成,分別是來電解碼部分、主控單元部分、來電顯示部分、USB接口部分和U盤存儲信息部分,具體如圖1所示。

二、硬件電路設計

本系統的硬件設計主要包括單片機與解碼芯片HT9032D通信的設計、單片機對U盤信息讀取的設計以及單片機與LCD通信的設計等三大部分。

2.1 單片機與HT9032D通信電路設計

本設計部分主要實現單片機對來電信息的讀取,將解碼芯片HT9032D通過電話接口電路與單片機連接,采用異步串行通信的方式,將HT9032D芯片的DOUT端與單片機的RXD端連接,用作兩者之間的數據串行傳輸通道,最終通過軟件編程來實現解碼,HT9032D芯片的外圍電路以及與單片機連接的引腳[7]如圖2。

2.2 單片機讀U盤硬件電路設計

本系統主要實現單片機對存儲在U盤中的電話薄信息讀取,采用并口方式通信,將CH375B芯片的地址線輸入端A0、片選控制輸入端CS#、中斷請求輸出端INT#、寫選通輸入端WR#和讀選通輸入端RD#分別與單片機的P2.0、P2.1、P3.5、P3.6、P3.7管腳相連;將CH375B的數據端口D0~D7分別與單片機P0口的每一位相連,最終通過單片機C語言編程將U盤中的信息保存在單片機內部EEPROM中,若需要更新電話薄信息,則將U盤中的TXT文件更改,將新信息讀取到單片機的EEPROM中,硬件電路設計[8]如圖3。

2.3 單片機與LCD通信的電路設計

這部分設計主要是將獲得的來電信息與單片機從U盤中的讀取的信息進行匹配,最終將比較得到的有效信息在LCD上顯示。本文采用的液晶顯示器是帶有漢字庫的LCD12232,方便對姓名和歸屬地的顯示,其引腳連接[9]如下圖4所示。

三、軟件設計

3.1 設計思路

設計思路是在U盤中存放常用聯系人的固定電話號碼、區號和地名;常用聯系人的手機號碼、地名等信息,每一個電話號碼與其區號或地名是一一對應的,采用TXT文件格式存儲,每一個完整的信息都換行保存。本系統首先利用單片機將U盤中存放的TXT文件讀取出來存放到單片機內部EEPROM中,當檢測到某電話有振鈴信號和載波信號后,HT9032D解碼芯片將主叫識別信息通過串口傳遞到單片機中,經單片機進行分析與處理后,將其與EEPROM中的數據進行對照,通過查找字符串的方法進行匹配,如果找到匹配的數據則把后邊需要的字符串輸出到LCD上[10]。

3.1.1 固定電話號碼顯示的軟件實現方法

(1)對于常用聯系人的顯示:被解碼芯片HT9032D解調出來的主叫識別信息中包括時間、日期以及來電號碼,其中來電號碼中包括區號和固定電話號碼兩部分,所以我們可以根據來電區號和號碼與庫中的電話信息進行比較,找到匹配的數據后就可以將后邊對應的姓名和歸屬地在LCD上顯示出來;

(2)對于陌生號碼的顯示:由于單片機內存的限制,我們不可能把全國的電話號碼都存進去,所以對陌生號碼只能顯示歸屬地,所采取的方法是將來電信息的前幾位區號分離出來與庫中的區號進行比較,直到匹配后在LCD上輸出區號所對應的地名。

3.1.2 手機號碼顯示的軟件實現方法

(1)對于常用聯系人的顯示:基本思想和固定電話常用聯系人的顯示方法相同,不同的是手機號碼的主叫識別信息中只有手機號碼,我們直接將來電手機號碼與庫中存的手機號碼進行比較,找到匹配的手機號碼之后將其對應的主叫姓名和歸屬地在LCD上顯示出來;

(2)對于陌生人的手機號碼顯示:由于手機用戶主叫識別的信息中只有手機號碼,所以我們沒有辦法采用上述方法對其進行顯示,本文采取的辦法是根據全國手機號碼的分配方法對其進行顯示,我國手機號碼歸屬地城市名稱和區號是一一對應的,手機號碼的分配是以號碼前7位為單位的,這樣手機號碼的前七位就可以找到歸屬地,下面舉例說明手機號碼前七位的分配:如131開頭的手機號碼,1310010—1310190號碼段歸屬地為區號為010的城市北京。

3.2 系統軟件設計

系統軟件由主程序、外部中斷0程序、串口中斷程序三部分組成。

主程序流程:首先初始化LCD、HT9032D、CH375B等芯片,設置串口通信的波特率和定時器初值等,然后開總中斷和外部中斷0,調用各個子程序,最終將比較得到的有效數據在LCD上顯示。

外部中斷0程序流程:當有外部設備U盤連接時,便觸發外部中斷0服務程序,查詢FAT文件系統,打開指定的TXT文件,并以扇區方式進行讀數據文件。

串口中斷程序流程:當有振鈴信號和載波信號時,單片機將接收到的有效來電數據存入緩存器SUBF中,并與單片機內部EEPROM中的數據信息進行匹配,若找到相符合的信息則輸出其相應的信息(姓名和歸屬地等)。

四、實驗驗證

為了驗證系統的可行性,采用串口調試精靈軟件,對單片機與HT9032D通信數據和單片機讀U盤的數據進行了測試試驗,將顯示在界面上的信息與已知信息比較,以此驗證其可行性和真實性。

4.1單片機與HT9032D通信數據測試

該部分主要對固定電話撥打固定電話和手機撥打固定電話的來電數據進行了測試,分別如圖5和圖6。

測試得到的數據用十六進制顯示,其十六進制數據所對應的字符數據分析如下:

圖5橢圓中的兩位數據分別代表來電的格式(單數據消息格式)和來電數據長度(轉化為十進制是19),圓角矩形中的數據是主叫來電的8位時間和日期,即07月02日14時54分;矩形中的數據是主叫來電的手機號碼,即13709148274。

圖6橢圓中兩位數據分別代表來電的格式(單數據消息格式)和來電數據長度(轉化為十進制是19),圓角矩形中的數據是8位時間和日期,即07月02日14時57分;矩形中的數據是主叫來電的區號和固定電話號碼,即0912+6669628。

4.2單片機讀U盤數據測試

本次試驗是將U盤中的TXT文件數據讀取,通過串口調試精靈來驗證電路和程序的正確性。第一次實驗TXT文件中的電話號碼共有15個,包括手機號碼相關信息10條,固定電話號碼相關信息5條,如圖7(b)所示;第二次實驗TXT文件中在原有的信息基礎上增加了5條新的信息,主要來實現采用U盤更新電話薄的功能,即在第二次單片機讀寫U盤數據時將之前存儲在EEPROM 中的數據擦除之后再寫入新的數據,增加數據信息后的數據測試如圖7(a),為了保護個人隱私,將圖7中號碼的部分數字隱藏。

五、結束語

在原有固定電話來電顯示系統的基礎上,提出了一種采用U盤來更新電話薄信息,可顯示主叫方姓名和歸屬地的來電顯示系統;選用U盤作為存儲介質使得用戶能夠方便的存儲大容量的電話信息,并方便了信息更新;對其進行了硬件設計和軟件設計以及實驗數據測試,驗證了方案的可行性和準確性,該系統能夠方便用戶使用,并具有一定的防范來電詐騙功能。

參 考 文 獻

[1] 數據酷. 2014年1月-2015年10月我國固定電話用戶數統計[EB/OL]. http://www.qianzhan.com/qzdata/ detail/149 /15112 0-e6192662.html. 2015-11-20/2015-12-30.

[2]云新. 我國移動電話用戶規模突破13億4G用戶占比25% [EB/OL]. http://www.cctime.com/html/2015-11-19/2015111910 565328.htm. 2015-11-19/2015-12-30.

[3]Michael W, Slawson. Caller ID Basics[J/OL]. http:// www. testmark.com/develop/tml_callerid_cnt.html#summary.

[4]丁曉,吳飛青,李林功.新型智能來電顯示系統設計[J], 實驗科學與技術,2009,7(6):15-17,35.

[5]Hack Kim, Plano, TX.Intelligent telephone set[R]. 2007.

[6]劉虎,章慧.一種基于來電顯示的智能控制模塊設計[J],微計算機信息,2008,24(26):59-60,156.

[7]竺偉華.HT9032在自動電話抄表系統的應用[J],中國高新技術企業,2007,(10):112.

[8]王軍,程利民.基于CH375的數控機床U盤接口系統[J], 組合機床與自動化加工技術,2008,(1):51-52,56.

[9]楊燕,張新麗.液晶顯示模塊12232的使用[J],儀表技術, 2011,(5):66-67,70.

[10]Lionel P Barrero, Annoeullin. Caller identification protocol for Provisioning a device[R].2006.

猜你喜歡
單片機電話
意外的面試電話
單片機在智能控制中的應用
神奇的“手指電話”
電話求助 等
C8051F020與80C51單片機的異同點
春天的電話
單片機I/O口模擬串行通訊的C51實現方法
單片機調試方法的探討
用PIC單片機制作的時間繼電器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合