描述:通訊讀寫格式
圖片:
描述:儀表設定
圖片:
描述:儀表通訊方式設定
圖片:
描述:儀表數據存取地址
圖片:
描述:編寫的程序1
圖片:
描述:編寫的程序2
圖片:
不懂通訊的菜鳥,請各位大佬教教我。
通訊格式我看了些資料,有基本的認識。但是在編寫程序的過程中有一些不懂。
一、就編寫程序是用8位還是16位即M8161的選擇。因為我T3儀表(圖片:儀表數據存取地址,功能地址40005,毛重;占兩個寄存器、32位,4字節有符號只讀)的寄存器是否影響位數與RS指令的編寫?
二:編寫數據格式,{RS D0 Kn D30 Kn},Kn的個數如何確定。如[MOV H1 D0] [MOV H3 D1] [MOV H5 D2] [MOV H2 D3] [MOV H核驗碼? D4] 那這樣是不是就5個。8位與16位數據格式,地址碼到校驗碼個數是否不一樣?
三、8位和16位的格式,D0(b15 b14 b13 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0),8位是處理b0-b7;16位是處理b0-b15。 8位的編寫:[MOV H1 D0] [MOV H3 D1] [MOV H5 D2] [MOV H2 D3] 在第一點中說的功能地址0005占兩個寄存器、共4個字節、32位;那數據個數這樣編寫是不是就有問題了? 16位的編寫:[MOV H1 D0] [MOV H3 D1] [MOV H5 D2] [MOV H2 D3]
三、CRC校驗如何編寫,我這個程序的CRC校驗碼是什么?
四、回傳數據的處理。回傳回來的數據是放在D33、D34中,還是D33、D34、D35、D36中?[MOV D30 D50 K10 ] 如果是16位處理,那數據是放在D53與D54,那程序:[MOV D54 K4M10] [MOV D53 K4M26] [MOV K4M10 D100]最終數據存在D100、D101中? 這樣的理解是不是有問題?
[ 此帖被leonhuang在2019-07-04 14:06重新編輯 ]