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