資料介紹
現在大部分的儀器設備都要求能過通過上位機軟件來操作,這樣方便調試,利于操作。其中就涉及到通信的過程。在實際制作的幾個設備中,筆者總結出了通信程序的通用寫法,包括上位機端和下位機端等。
1.自定義數據通信協議這里所說的數據協議是建立在物理層之上的通信數據包格式。所謂通信的物理層就是指我們通常所用到的RS232、RS485、紅外、光纖、無線等等通信方式。在這個層面上,底層軟件提供兩個基本的操作函數:發送一個字節數據、接收一個字節數據。所有的數據協議全部建立在這兩個操作方法之上。通信中的數據往往以數據包的形式進行傳送的,我們把這樣的一個數據包稱作為一幀數據。類似于網絡通信中的TCPIP協議一般,比較可靠的通信協議往往包含有以下幾個組成部分:幀頭、地址信息、數據類型、數據長度、數據塊、校驗碼、幀尾。幀頭和幀尾用于數據包完整性的判別,通常選擇一定長度的固定字節組成,要求是在整個數據鏈中判別數據包的誤碼率越低越好。減小固定字節數據的匹配機會,也就是說使幀頭和幀尾的特征字節在整個數據鏈中能夠匹配的機會最小。通常有兩種做法,一、減小特征字節的匹配幾率。二、增加特征字節的長度。通常選取第一種方法的情況是整個數據鏈路中的數據不具有隨即性,數據可預測,可以通過人為選擇幀頭和幀尾的特征字來避開,從而減小特征字節的匹配幾率。使用第二種方法的情況更加通用,適合于數據隨即的場合。通過增加特征字節的長度減小匹配幾率,雖然不能夠完全的避免匹配的情況,但可以使匹配幾率大大減小,如果碰到匹配的情況也可以由校驗碼來進行檢測,因此這種情況在絕大多說情況下比較可靠。地址信息主要用于多機通信中,通過地址信息的不同來識別不同的通信終端。在一對多的通信系統中,可以只包含目的地址信息。同時包含源地址和目的地址則適用于多對多的通信系統。數據類型、數據長度和數據塊是主要的數據部分。數據類型可以標識后面緊接著的是命令還是數據。數據長度用于指示有效數據的個數。校驗碼則用來檢驗數據的完整性和正確性。通常對數據類型、數據長度和數據塊三個部分進行相關的運算得到。最簡單的做法可是對數據段作累加和,復雜的也可以對數據進行CRC運算等等,可以根據運算速度、容錯度等要求來選取。
2.上位機和下位機中的數據發送
物理通信層中提供了兩個基本的操作函數,發送一個字節數據則為數據發送的基礎。數據包的發送即把數據包中的左右字節按照順序一個一個的發送數據而已。當然發送的方法也有不同。在單片機系統中,比較常用的方法是直接調用串口發送單個字節數據的函數。這種方法的缺點是需要處理器在發送過程中全程參與,優點是所要發送的數據能夠立即的出現在通信線路上,能夠立即被接收端接收到。另外一種方法是采用中斷發送的方法
- 使用51單片機進行鍵盤掃描的程序免費下載
- 使用51單片機進行流水燈的程序免費下載
- 使用51單片機進行IIC協議的解讀程序免費下載
- 使用51單片機進行1005大數加法的資料和程序免費下載
- 如何進行51單片機的延時計算資料和程序免費下載的
- 使用單片機進行電流檢測的程序免費下載
- 如何使用51單片機進行AD轉換的程序資料免費下載
- 使用單片機進行中斷的應用資料和程序免費下載
- 使用51單片機進行自動循跡智能小車的程序資料免費下載 30次下載
- 使用51單片機進行貪吃蛇設計的資料和電路圖程序資料免費下載
- 使用51單片機進行鬧鐘制作的程序免費下載
- 使用51單片機進行簡單的串口通訊程序資料免費下載
- 使用51單片機進行超聲波測距的程序資料免費下載 23次下載
- 使用STM32單片機進行的示波器程序資料免費下載 45次下載
- 單片機進行AD轉換的C語言程序資料免費下載 17次下載
- 單片機里的程序是如何運行? 3911次閱讀
- 使用51單片機讀寫AT29C040的C語言程序免費下載 4529次閱讀
- 單片機的主程序是如何執行的 1w次閱讀
- HD44780讀寫單片機C51程序免費下載 4146次閱讀
- 使用HD44780讀寫單片機的C51程序詳細概述 3112次閱讀
- 如何自制一個AVR單片機ISP下載線 3894次閱讀
- 如何對STC單片機進行免掉電下載 2118次閱讀
- 51單片機的ISP下載電路設計 3.1w次閱讀
- 如何對51單片機進行外部擴展 1.5w次閱讀
- 單片機程序設計時如何進行優化詳細資料概述 4633次閱讀
- 怎么讀取單片機程序_單片機程序是如何執行的_如何讀懂單片機程序 7.4w次閱讀
- ch340g單片機下載程序電路原理 7.8w次閱讀
- ARDUINO IDE編寫和AVR單片機程序的下載 9769次閱讀
- 單片機與程序設計(上) 3786次閱讀
- STC單片機程序燒錄與ISP下載相關知識 9934次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7藍牙設備在嵌入式領域的廣泛應用
- 0.63 MB | 3次下載 | 免費
- 89天練會電子電路識圖
- 5.91 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多