新聞中心

        EEPW首頁 > 手機與無線通信 > 基于80C31的固定電話短信息終端的開發

        基于80C31的固定電話短信息終端的開發

        ——
        作者:北京微電子技術研究所 宋立國 邱邑裕 任永正 蘇昌明 時間:2007-12-10 來源:中國電子技術信息網 收藏

            本文給出了一種以80C31為主控CPU的固定終端的設計,從系統軟硬件兩個方面說明了固定終端的設計方法和各個部分的工作原理。對于在開發中遇到的難點,如CAS音檢測,信息的處理和LCD漢字字符顯示等問題重點進行了闡述。

        關鍵詞;;

          現在,短信息服務日益普及。各個電話機廠家競相設計和開發短信息終端電話。為配合我所開發的短信息終端專用集成芯片,我們設計開發出了可發送和接受短信息的固定電話。此電話除具有來電顯示功能外,還能夠接收信息中心下傳的格式短信,可以利用和FSK兩種格式上傳信息。有比較好的人機界面,能夠采用拼音輸入方法編輯短信內容。能夠存儲200個電話,200個下載的短信,實現電話號碼的查找,下載短信的閱讀,時鐘顯示等功能。下面先從硬件方面介紹系統的設計。

        硬件部分  
                 
                           圖1 系統硬件原理框圖 
                  
                         圖2 CAS檢測原理電路

          系統硬件原理框圖見圖1,下面說明各部分的功能。

        CPU控制部分

          系統中采用80C31作為主控CPU,負責整個系統的程序流程,外擴了32K RAM,64K EPROM,和一片ATMEL公司的AT29C040A作為電話薄、短信息和二級字庫字模的存儲器。

        CAS檢測電路

          CAS檢測原理電路如圖2所示。在短信電話中,CAS信號的檢測是必不可少的,但以前的普通電話及來電顯示電話都不具有此項功能,市場上具有CAS音檢測功能的芯片也比較少見,因此,我們設計了一種CAS音檢測電路,在實際應用中,效果不錯(見圖3)。{{分頁}}

          CAS為信號,頻率為2130/2750Hz,所以采用兩個單獨的濾波器,如果為CAS,則A,B點輸出均為高電平,產生CAS中斷。圖中SIGNAL為DTMF信號,CAS_CON為CAS音檢測控制電路,當CAS_CON=1時,檢測CAS音;CAS_CON=0時,不檢測CAS音。當檢測到CAS,CASINT輸出高電平。

        EPLD集成控制電路

          外部控制電路部分采用ALTERA公司的EPM7128QC160,將設計中所用到的74系列和4000系列芯片全部集成在里面,并且它有160個PIN,能夠滿足系統中輸入輸出信號對管腳的需求。大大縮小了PCB面積,在調試時非常方便,且提高了系統整體的可靠性。

          其它部分因為都有現成的芯片或成熟的電路,這里不再說明。

                     圖3 CAS檢測實際電路


                     圖4 LCD顯示模塊流程圖

        軟件部分

          軟件采用模塊化設計,每一模塊都可單獨設計和調試。主要有鍵盤處理模塊、系統狀態轉換模塊、電話處理模塊(包括FSK短信的處理與發送)、LCD顯示模塊、中斷處理模塊(CAS,FSK,振鈴,摘掛機的檢測和FSK短信息接收)。除中斷處理模塊外,其它的四個模塊在主程序中循環調用。{{分頁}}

        鍵盤處理模塊

          電話與CPU利用同一按鍵進行工作,由CPU通過模擬開關控制按鍵的傳遞方向。在正常打電話或摘機時,鍵值傳遞給電話中的撥號芯片;掛機時則傳遞給CPU處理。CPU不停的監測是否有鍵被按下,當有鍵按下時,設置系統狀態轉換標志為1,否則為0。為了使用方便,比普通電話增加了四個按鍵:取消鍵(key_C),主菜單鍵(key_M),選中鍵(key_OK),輸入方法切換鍵(key_CH)。

        系統狀態轉換模塊

          這是整個系統的核心控制部分。它根據按鍵及系統所處的不同狀態,進行狀態間的切換和狀態內鍵值的處理。當系統狀態轉換標志為1時,進入此模塊。根據鍵值的不同,進行相應的處理。系統主要設定的狀態有: 初始狀態(S_init),主菜單狀態(S_mainmenu),電話薄狀態(S_menu1),短信息狀態(S_menu2),系統設置狀態(S_menu3),添加電話號碼狀態(S_addphone_1),添加電話姓名狀態(S_addphone_2),添加電話存儲位置狀態(S_addphone_3),查找電話狀態(S_lookphone),短信編輯狀態(S_edit_sm),發送短信狀態(S_send_sm),閱讀短信狀態(S_read_sm)等。

        LCD顯示模塊

          這一部分是依據系統所處的狀態進行顯示。主要有菜單的顯示,所編輯漢字與字符的顯示,下載的短信的顯示,顯示有短信和來電顯示電話等部分。顯示中,最難于處理的是短信的漢字與ASCII碼一起顯示,因為漢字是全角顯示,ASCII碼則為半角顯示,否則顯示效果不好,并且還要涉及翻頁中顯示的起始位置。在開發中采用的程序流程如圖4所示。

        電話處理模塊

          在這一部分中,負責處理短信息電話,來電顯示電話,及普通的電話。當有振鈴到來時,進入電話處理程序。接受交換中心發送的FSK信號,并根據信號的內容,決定是短信息,還是來電顯示電話。對于短信息,則發送應答信息,轉入短信息的處理模塊;當是來電顯示(CALLER ID)電話,則將在LCD上顯示電話號碼。如果沒有收到FSK信息,則判定為普通的電話。(系統暫時不考慮來電顯示電話中下行DTMF格式)。圖5是其程序流程圖。

        中斷處理程序(CAS,FSK,振鈴,摘掛機)

          在中斷處理程序中,主要是處理FSK信號的接收、CAS信號,振鈴和摘掛機檢測,并使相應的標志位置1,以便于主程序處理。其中,FSK信號的接受先是采用查詢的方法同步FSK信息,在同步之后是利用51單片機的串口接收。


          圖5 電話處理程序圖

        結語

          設計的固定電話網短信息終端同時具有上傳消息的能力和接收短消息終端下行消息的能力(C類終端),滿足“基于固定網短消息傳送的技術規范”的要求。為短信息終端專用集成芯片提供了驗證平臺。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 马龙县| 靖宇县| 洮南市| 阳江市| 临武县| 塘沽区| 洛扎县| 星座| 桐城市| 玉林市| 资阳市| 霸州市| 老河口市| 柞水县| 孟村| 昌吉市| 林芝县| 秦安县| 隆昌县| 上思县| 东港市| 嘉义市| 息烽县| 章丘市| 乌拉特后旗| 鄂尔多斯市| 肇州县| 安多县| 青阳县| 澎湖县| 樟树市| 乌鲁木齐县| 霍林郭勒市| 威宁| 汤阴县| 宜都市| 兴海县| 吴桥县| 清水河县| 太和县| 长兴县|