• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于51單片機實現短距離無線通信

    基于51單片機實現短距離無線通信

    作者: 時間:2011-12-07 來源:網絡 收藏

    4.1 PTR2000模塊程序設計

    和PC機端軟件配合設置PTR2000的狀態(發射或接收),選擇固定的通信頻道1(CS=0),并讓PTR2000模塊一直處于正常工作狀態(PWM=1)。過程如下:
    (1)發送在發送數據之前,應將PTR2000模塊置于發射模式,即TXEN=1。然后等待至少5 ms后(接收到發射的切換時間)才可發射數據。發送結束后,應將模塊置于接收狀態,即TXEN=0。
    (2)接收應將PTR2000置于接收模式,即TXEN=0。不發送的絕大部分時間都處于接收狀態。當端發送時,PC機端應為接收;當PC機端發送時,單片機端應為接收。

    4.2 串行協議設計

    中,由于外部環境的干擾,通常誤碼率較高,因此通信協議的設計對保證通信的可靠性十分重要。協議的設計主要是幀結構的設計,在該無線通信系統中,存在指令幀和數據幀。數據幀的內容包括起始字節、數據長度字節、數據字節、結束字節和校驗和字節,如表2所示。

    108.jpg

    起始字節定義為“$”字符,其數值為0x24;結束字節定義為“*”字符,其數值為0x2A。

    采用校驗和的方法進行幀的校驗,將所有字節相加,然后將結果截短到所需的位長。發送端對待發送的數據進行校驗和計算,將校驗和值放在數據后一起發送;在接收端,對接收到的數據進行校驗和計算,然后與收到的校驗和字節比較,進行誤碼判斷。

    對于單片機,指令幀主要有3種:PC機發送給單片機的請求發送指令、錯誤/超時重發指令、單片機發給PC機的發送完畢指令。在該系統設計中指令幀采用數據幀的格式,將其中的。數據字節固定為一個字節,根據定義的字節判斷數據狀態。

    4.3 程序流程

    單片機開始需將無線數據傳輸模塊PTR2000設置處于接收狀態,通過串口中斷識別由PC機通過無線信道傳輸來的指令,根據接收指令的內容采集數據并啟動發送。發送前需將PTR2000模塊設置為發射狀態,且等待5 ms才可發送,發送完畢后,向PC機端發送“發送結束指令”,并將PTR2000模塊重設為接收狀態。圖4為系統軟件設計流程圖。

    109.jpg

    5 結束語

    單片機無線通信系統設計PTR2000無線數據傳輸解決方案,可小于300 m的通信,通過實驗驗證該無線數據傳輸系統運行良好,單片機控制得相當準確。在應用時將系統作為一個模塊可方便地移植,以便構建更為復雜的無線通信網絡,可應用于小型無線網絡、無線抄表、小區傳呼、工業數據采集系統、安全防火系統等領域,具有一定實用價值。


    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 安仁县| 防城港市| 嘉祥县| 合江县| 全椒县| 乐亭县| 绍兴市| 纳雍县| 普兰县| 长沙县| 洪泽县| 南乐县| 仁寿县| 纳雍县| 丽水市| 抚远县| 芒康县| 海宁市| 饶阳县| 嵊泗县| 依兰县| 万载县| 金堂县| 花莲市| 桂林市| 靖西县| 泸水县| 长宁县| 固安县| 岚皋县| 嘉鱼县| 新乡市| 土默特左旗| 郁南县| 元朗区| 左权县| 长寿区| 永宁县| 仲巴县| 深圳市| 石棉县|