基于ARM的智能來電顯示器的設計
圖4單數據消息格式組成圖
(2)復合數據消息格式(MDMF)。
這種格式的結構比較復雜,可傳送的信息包括除單數據格式內容外還有主叫用戶的姓名等。復合數據消息格式也是由消息頭和消息體組成,不同的是,復合數據的消息體由一個或多個小的參數消息組成,參數消息也具有參數頭和參數體。參數頭包括參數類型和參數長度,它們均為8bit,參數類型值用來識別后續參數字,參數長度指明參數體中參數字的數目。復合數據消息格式允許不同特征產生的不同消息在同一個幀中傳送。在此不再詳述。
3系統軟件流程設計
系統軟件由四部分組成,分別為主程序,中斷0程序,中斷1程序和串口中斷程序。
主程序及各程序功能介紹如下。
(1)主程序開始初始化系統各功能芯片,設置串行通信的波特率,從E2PROM中讀存儲的來電信息,并顯示最后一條信息;然后開中斷0循環等待振鈴信號。程序流程圖如圖5所示。
圖5主程序流程圖
(2)外部中斷0服務程序。
當有振鈴信號來時,便觸發外部中斷0服務程序。
若判斷為第一次振鈴,則開外部中斷1,判斷是否有有效解調FSK信號。
(3)外部中斷1服務程序。
當判斷有有效信號來時,便觸發外部中斷0服務程序。若判斷為第一次振鈴,則打開串口中斷,準備接收解調為串行異步二進制數據的來電信息。
(4)串口中斷程序。
在串口服務程序中不斷記錄緩沖器SUBF中的數據,存儲并顯示當前信息。
4實驗數據分析
串口輸出的字符串為:0x800x180x320x000x310x310x300x380x330x300x310x300x330x340x300x310x350x320x310x360x370x360x300x310x360x370xEF經過分析,0x80表示此消息數據為復合數據消息格式,0x18表示數據長度,后面則表示時間為2011年08月30日10時34分,來電號碼為01521760167,校驗字為0xEF。所有數據和(包括校驗位)按256的模求和為00,證明收到的數據完全正確。
評論