找回密碼
 立即註冊
搜索
熱搜: 活動 交友 discuz
查看: 234|回復: 0

MODBUS RTU 通訊為什麼不能用 7 位元?只能7位元

[複製鏈接]

356

主題

48

回帖

1556

積分

管理員

積分
1556
發表於 2024-6-3 11:32:39 | 顯示全部樓層 |閱讀模式
原因:
  • 數據位與 ASCII 表示法:

    • MODBUS RTU 通訊使用的是 8 位元的數據位(8N1 或 8E1 格式),但數據位本身並不表示 ASCII 字元,而是 0-F 的十六進制字元。這些數據位用於傳輸實際的數據值。
  • 4 位元表示一個字元:

    • 4 個位元可以表示 0 到 15 的數值(即 0-F),正好可以表示一個十六進制字元。
  • 8 位元表示兩個字元:

    • 8 位元可以表示兩個十六進制字元。例如,8 位元的二進制數 11001100 可以表示十六進制數字 CC。
  • 7 位元限制:

    • 如果只使用 7 個位元,就只能表示 0-7F 的數值(即 0-127),這意味著只能表示一個完整的 ASCII 字元,而無法表示兩個十六進制字元。

結論:
MODBUS RTU 使用 8 位元是因為這樣可以高效地表示兩個十六進制字元(每個 4 位元)。這種方式既簡單又有效,適合工業通信中的數據傳輸需求。如果只使用 7 位元,則會限制可表示的數據範圍,不利於標準的數據通信。

高級模式
B Color Image Link Quote Code Smilies

本版積分規則

Archiver|小黑屋|Your Industrial Automation Toolboxs

GMT+8, 2024-11-21 16:38 , Processed in 0.054836 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回復 返回頂部 返回列表