PIC單片機的多機無(wú)線(xiàn)通信系統設計

本設計中,諾基亞3310 LCD用3 V的電壓供電。其中,1引腳是電源腳,6引腳接地線(xiàn),2引腳為SCLK,3引腳為SDIN。4引腳為數據/地址選擇端,分別給4引腳高低電平,可以控制單片機對諾基亞3310 LCD寫(xiě)數據或者寫(xiě)命令。5引腳為使能端,低電平有效。8引腳為復位端,低電平有效。11引腳接背光燈電源的正級,12引腳接背光燈電源的控制級。9、10引腳為諾基亞3310 LCD自帶的喇叭,此喇叭用單片機來(lái)控制的聲音效果并不理想,所以改用直流自帶振蕩蜂鳴器。為了避免蜂鳴器和背燈光工作時(shí)對液晶電源造成影響,蜂鳴器和背燈光由5 V的電源來(lái)供電,與液晶電源分開(kāi)。
2 軟件系統設計
本系統在主程序中運用模塊化結構,使得各個(gè)模塊之間關(guān)系清晰明了。復位分為兩個(gè)部分,以區分上電復位與非上電復位,上電復位執行上電復位初始化程序;運用散轉結構,再根據重要數據3比2表決,實(shí)現無(wú)擾動(dòng)重入;所有控制量(開(kāi)關(guān)量)和接收數據集中處理,提高了處理效率;特殊功能寄存器冗余重置,使整個(gè)系統更穩定地工作。主程序總流程如圖6所示。
3 通信模塊功能及算法
本無(wú)線(xiàn)通信協(xié)議模仿OSI分層模型分為以下3層,各層之間相互獨立,靈活性好,適應性強。
(1)物理層
物理層處于最低層,其任務(wù)是傳送和接收比特流。物理層關(guān)心的問(wèn)題是:如何表示“1”和“O”;如何排除干擾;傳輸是否在兩個(gè)方向上同時(shí)進(jìn)行等。本設計中使用433 MHz高頻發(fā)射模塊和接收模塊作為無(wú)線(xiàn)通信橋梁,固定的頻率限制了數據傳輸在同一時(shí)刻只能在一個(gè)方向上進(jìn)行,所以?xún)蓚€(gè)方向上的數據傳輸要在交替發(fā)生的情況下才能完成。
(2)數據鏈路層
數據鏈路層使用由物理層提供的服務(wù),并通過(guò)添加錯誤處理機制將簡(jiǎn)單的數據鏈路改造成可靠的數據鏈路,再提供給應用層。數據鏈路層以碼字為單位傳輸數據,每一碼字包括數據和必要的校驗信息。在此自定義為無(wú)線(xiàn)傳輸協(xié)議(Wireless Transmission Protocol,WTP)。
(3)應用層
應用層處于最高層,它為應用進(jìn)程提供了接入點(diǎn),直接為用戶(hù)的應用進(jìn)程提供服務(wù)。在此自定義為短信通信協(xié)議(Message Communication Protocol,MCP)。
3.1 定時(shí)器T2中斷模塊
中斷處理采用片內CCPI中斷捕捉方式,對外部接口引腳CCP上輸入的脈沖信號上升沿或下降沿進(jìn)行實(shí)時(shí)捕捉檢測。借助于這個(gè)強大的邊沿捕捉功能,很容易對信號的高電平時(shí)間進(jìn)行檢測,從而實(shí)現對WTP解讀功能。中斷服務(wù)程序流程如圖7所示。
評論