MODBUS寄存器从40000开始而不从0开始,有什么特别的说法吗,还是仅仅是大家都习惯
(1)、
? ? MODBUS 分為 0X ,1X,3X,4X 四種寄存器。
? ?0X--->離散輸出 (可讀可寫)? ?? ?對應PLC為:DO
? ?1X--->離散輸入(只讀)? ?? ?? ???對應PLC為:DI
? ?3X--->輸入寄存器16位(只讀)? ???對應PLC為:AI
? ?4X--->保持寄存器16位(可讀可寫) 對應PLC為:AO
? ?同時根據(jù)上述規(guī)約,還可以擴展0X和4X,其中OX不僅可以對應DO,同時還可以對應上位機發(fā)送的“按鈕”
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?4X不僅可以對應AO,同時還可以對應上位機的“設置參數(shù)”
(2)、為什么MODBUS寄存器地址從40000開始而不從0開始,有什么特別的說法嗎,還是僅僅是大家都習慣這樣用
? ?? ?? ?(A)、寄存器地址從40001開始的
? ?? ?? ?? ?? ? 是因為它屬于4X寄存器,同時0X寄存器是從00001開始的,1X寄存器是從10001開始的,其余雷同。
? ?? ?? ?(B)、實際上40001在你的程序中對應緩沖區(qū)的第0個地址單元,
? ?? ?? ?? ?? ? 假如:你的程序定義一段緩沖區(qū)BUFFER(20)要和上位機的40001-40020交換數(shù)據(jù),則
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???40001 ----> BUFFER(0)
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???40002 ----> BUFFER(1)
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???40003 ----> BUFFER(2)
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???40004 ----> BUFFER(3)
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? ........................
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???40020 ----> BUFFER(19)
總結
以上是生活随笔為你收集整理的MODBUS寄存器从40000开始而不从0开始,有什么特别的说法吗,还是仅仅是大家都习惯的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NATAPP vscode SSH远程连
- 下一篇: Kinect for Windows S