在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Modbus協(xié)議的讀取保持寄存器值

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 2024-10-30 10:54 ? 次閱讀

10.5.4

0x03)讀取保持寄存器

1. 功能說明

03功能碼用于讀取從設(shè)備保持寄存器的內(nèi)容,不支持廣播模式。消息頓中指定了需要讀取的保持寄存器的起始地址和數(shù)目。而保持寄存器中各地址的具體內(nèi)容和意義則由設(shè)備開發(fā)者自行規(guī)定。

2. 查詢報(bào)文

在查詢報(bào)文中,必須指定保持寄存器的開始地址和需要讀取的寄存器數(shù)量,例如,如下表所示,從設(shè)備地址為7(0x07),需要讀取保持寄存器地址40201~40203共計(jì)3個寄存器的內(nèi)容即讀取Modbus協(xié)議地址200~202的內(nèi)容,在報(bào)文中表示如下。

起始地址:0x00C8(十進(jìn)制200)。

讀取數(shù)量:0x0003(十進(jìn)制3)。

功能碼03查詢報(bào)文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x07 “0”,“7” 0x07
功能碼 0x03 “0”,“3” 0x03
起始地址
(高位)
0x00 “0”,“0” 0x00
起始地址
(低位)
0xc8 “c”,“8” 0xc8
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x03 “0”,“3” 0x03
差錯校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 17 8

本功能碼的起始地址由2字節(jié)構(gòu)成,取值范圍為0x00000xFFFF;寄存器數(shù)量由2字節(jié)構(gòu)成取值范圍為0x00010x007D(即十進(jìn)制1~125),即最多可以連續(xù)讀取125個寄存器。

需要特別注意的是,Modbus的保持寄存器和輸入寄存器是以字(Word)為基本單位的(1Word=2Byte),所以如果讀取保持寄存器地址為40001開始的一個16位(bit)的無符號數(shù),那么返回2字節(jié),并可以從40002開始讀取下一個16位的無符號數(shù)。如果需要讀取寄存器地址為40001開始的一個32位浮點(diǎn)數(shù),則需要返回4字節(jié),即必須連續(xù)讀取40001和40002的內(nèi)容,而且下一個32位的浮點(diǎn)數(shù)必須從40003開始讀取。對于浮點(diǎn)數(shù)(或者32位的整數(shù))而言,連續(xù)讀取的兩個寄存器之間存在字節(jié)序和大小端的問題,這一點(diǎn)在開發(fā)時必須引起注意。

3. 響應(yīng)報(bào)文

響應(yīng)報(bào)文的各項(xiàng)構(gòu)成和意義如下表所示。因?yàn)镸odbus的保持寄存器和輸入寄存器是以字為基本單位的,在上面的例子中,查詢報(bào)文連續(xù)讀取3個寄存器的內(nèi)容,將返回6 字節(jié),參考表下表中數(shù)據(jù)1~3的高位和低位。

功能碼03響應(yīng)報(bào)文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x07 “0”,“7” 0x07
功能碼 0x03 “0”,“3” 0x03
數(shù)據(jù)域字節(jié)數(shù) 0x06 “0”,“6” 0x06
數(shù)據(jù)1(高位) 0x03 “0”,“3” 0x03
數(shù)據(jù)1(低位) 0x53 “5”,“3” 0x53
數(shù)據(jù)2(高位) 0x01 “0”,“1” 0x01
數(shù)據(jù)2(低位) 0xF3 “F”,“3” 0xF3
數(shù)據(jù)3(高位) 0x01 “0”,“1” 0x01
數(shù)據(jù)3(低位) 0x05 “0”,“5” 0x05
差錯校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 23 11

10.5.5

(0x04)讀取輸入寄存器值

1. 功能說明

與功能碼03類似,04功能碼用于讀取從設(shè)備輸入寄存器的內(nèi)容,不支持廣播模式。消息頓中指定了需要讀取的輸入寄存器的起始地址和數(shù)目,而輸入寄存器中各地址的具體內(nèi)容和意義則由設(shè)備開發(fā)者自行規(guī)定。

2. 查詢報(bào)文

在查詢報(bào)文中必須指定輸入寄存器的起始地址和需要讀取的寄存器數(shù)量。例如,如表4-9所示,從設(shè)備地址為7(0x07),需要讀取輸入寄存器地址30301~30303共計(jì) 3個寄存器的內(nèi)容即讀取Modbus協(xié)議地址300~302的內(nèi)容,在報(bào)文中表示如下。

起始地址:0x012C(十進(jìn)制300)。

讀取數(shù)量:0x0003(十進(jìn)制3)。

功能碼04查詢報(bào)文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x07 “0”,“7” 0x07
功能碼 0x04 “0”,“4” 0x04
起始地址
(高位)
0x01 “0”,“1” 0x01
起始地址
(低位)
0x2c “2”,“c” 0x2c
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x03 “0”,“3” 0x03
差錯校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 17 8

本功能碼中,起始地址由2字節(jié)構(gòu)成,取值范圍為0x0000~0xFFFF;寄存器數(shù)量由2字節(jié)構(gòu)成,取值范圍為0x0001~0x007D(即十進(jìn)制1~125),即最多可以連續(xù)讀取125個寄存器同樣有一點(diǎn)需要注意,Modbus的保持寄存器和輸入寄存器是以字為基本單位的。所以對于浮點(diǎn)數(shù)(或者32位的整數(shù))而言,連續(xù)讀取的兩個寄存器之間存在字節(jié)序和大小端的問題,這一點(diǎn)在開發(fā)時必須引起注意。

3. 響應(yīng)報(bào)文

響應(yīng)報(bào)文的各項(xiàng)構(gòu)成和意義如下表所示。因?yàn)镸odbus的保持寄存器和輸入寄存器是以字為基本單位的,上面的例子中,查詢報(bào)文連續(xù)讀取3個寄存器的內(nèi)容,那么將返回6字節(jié),參考下表中數(shù)據(jù)1~3的高位和低位。

功能碼04響應(yīng)報(bào)文示例:

字段 例(Hex) ASCII模式字符型 RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x07 “0”,“7” 0x07
功能碼 0x04 “0”,“4” 0x04
數(shù)據(jù)域字節(jié)數(shù) 0x06 “0”,“6” 0x06
數(shù)據(jù)1(高位) 0x03 “0”,“3” 0x03
數(shù)據(jù)1(低位) 0x53 “5”,“3” 0x53
數(shù)據(jù)2(高位) 0x01 “0”,“1” 0x01
數(shù)據(jù)2(低位) 0xF3 “F”,“3” 0xF3
數(shù)據(jù)3(高位) 0x01 “0”,“1” 0x01
數(shù)據(jù)3(低位) 0x05 “0”,“5” 0x05
差錯校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 23 11

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5396

    瀏覽量

    122470
  • MODBUS
    +關(guān)注

    關(guān)注

    28

    文章

    1926

    瀏覽量

    78465
  • 功能碼
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    2196

原文標(biāo)題:讀取保持寄存器值 - RZ MPU工業(yè)控制教程連載(31)

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Modbus協(xié)議的疑問

    邏輯線圈的當(dāng)前狀態(tài)(ON/OFF)2讀取輸入狀態(tài)取得一組開關(guān)輸入的當(dāng)前狀態(tài)(ON/OFF)3讀取保持寄存器在一個或多個保持寄存器中取得當(dāng)前的
    發(fā)表于 02-20 11:57

    基于Modbus協(xié)議的485總線,當(dāng)功能碼為03H,讀取N個讀寄存器數(shù)據(jù)時,從設(shè)備需要進(jìn)行N次消息回送嗎?

    基于Modbus協(xié)議的485總線,采用C51單片機(jī)作為主機(jī),多個智能傳感作為從設(shè)備,欲準(zhǔn)確高效得采集多傳感數(shù)據(jù),應(yīng)該功能碼為03H讀多個寄存器
    發(fā)表于 03-07 13:38

    求助大神關(guān)于modbus協(xié)議保持寄存器的問題

    我想用電腦向傳感發(fā)送采集指令,但是輸入保持寄存器時傳感沒有反應(yīng)連接應(yīng)該沒有問題,能讀到設(shè)備標(biāo)識
    發(fā)表于 05-18 20:04

    Modbus協(xié)議說明及VC代碼

    名稱 作用 01 讀取線圈狀態(tài) 取得一組邏輯線圈的當(dāng)前狀態(tài)(ON/OFF) 02 讀取輸入狀態(tài) 取得一組開關(guān)輸入的當(dāng)前狀態(tài)(ON/OFF) 03 讀取保持寄存器 在一個或多個
    發(fā)表于 08-03 15:14

    Modbus庫開發(fā)筆記之九:利用協(xié)議棧開發(fā)Modbus TCP Server應(yīng)用

    GetInputStatus(uint16_tstartAddress,uint16_t quantity,bool *statusValue); /*獲取想要讀取保持寄存器*
    發(fā)表于 08-26 15:56

    modbus協(xié)議筆記

    1 Modbus協(xié)議概要? Modbus通信協(xié)議由Modicon公司(現(xiàn)在的施耐德電氣Schneider Electric)于1979年為可編程邏輯控制(即PLC)通信而發(fā)表。目前,Modbu
    發(fā)表于 07-02 07:17

    Modbus協(xié)議是什么?Modbus協(xié)議主要有哪些應(yīng)用?

    請問一下Modbus協(xié)議是什么?Modbus協(xié)議主要有哪些應(yīng)用?
    發(fā)表于 07-15 12:04

    Modbus協(xié)議是什么

    Modbus協(xié)議是什么?MODBUS功能碼有哪些?MODBUS協(xié)議有哪幾種傳輸模式?
    發(fā)表于 09-29 07:06

    libmodbus寄存器個數(shù)的疑問

    MODBUS_MAX_READ_BITS2000MODBUS_MAX_READ_REGISTERS125根據(jù)modbus協(xié)議寄存器地址是從0到65535的,那這幾個宏定義,應(yīng)該是指的是每次最多可連接
    發(fā)表于 06-30 15:39

    RS485和Modbus通信協(xié)議讓工業(yè)自動化更高效

    。以下是Modbus RTU協(xié)議中常用的功能碼及其含義:   01:讀取線圈寄存器   02:讀取離散輸入
    發(fā)表于 05-05 16:25

    Modbus協(xié)議的理解

    系統(tǒng)的兼容,最好采用通用的通訊協(xié)議。   我們可以Modbus協(xié)議進(jìn)行修改,使之能使用在自己的系統(tǒng)中。Modbus協(xié)議包括ASCII、RTU、TCP等,并沒有規(guī)定物理層。此協(xié)議定義了控
    發(fā)表于 05-05 16:47

    modbus協(xié)議中的輸入寄存器可以讀寫嗎?

    modbus協(xié)議中的輸入寄存器可以讀寫嗎
    發(fā)表于 10-13 08:03

    C#使用Modbus協(xié)議讀寫匯川PLC的M區(qū)寄存器

    C#使用Modbus-TCP協(xié)議讀取匯川PLC,Modbus讀寫是按照MW地址來處理的 【寄存器單位是字WORD,占用兩個字節(jié),類似于C#中
    發(fā)表于 04-19 10:34 ?15次下載
    C#使用<b class='flag-5'>Modbus協(xié)議</b>讀寫匯川PLC的M區(qū)<b class='flag-5'>寄存器</b>

    工程監(jiān)測無線中繼采集儀的參數(shù)讀寫MODBUS協(xié)議

    如下 工程監(jiān)測無線中繼采集儀的參數(shù)讀寫MODBUS協(xié)議 例:讀取地址為 129 的無線中繼采集儀寄存器寄存器
    的頭像 發(fā)表于 05-22 11:30 ?745次閱讀
    工程監(jiān)測無線中繼采集儀的參數(shù)讀寫<b class='flag-5'>MODBUS協(xié)議</b>

    modbus協(xié)議功能碼分類 modbus協(xié)議功能碼是什么,有什么作用

    的分類及其作用。 Modbus協(xié)議功能碼分類: Modbus協(xié)議定義了一系列的功能碼,每個功能碼都代表不同的請求類型和操作。根據(jù)Modbus規(guī)范,功能碼可以分為以下幾類: 讀功能碼(0x03和0x04): 功能碼0x03用于
    的頭像 發(fā)表于 01-31 14:47 ?8447次閱讀
    主站蜘蛛池模板: 激情亚洲 | 日本丶国产丶欧美色综合 | 男人天堂网www | 亚洲va久久久噜噜噜久久狠狠 | 插菊综合网| 欧美天堂色| 久久精品影院永久网址 | 性夜影院爽黄a爽免费视 | 免费看特级淫片日本 | h网站在线播放 | 亚洲日本久久久午夜精品 | 国产午夜视频 | 99热成人精品热久久669 | 女人张开腿给男人桶爽免费 | 国内精品久久久久久久久蜜桃 | 久久久黄色大片 | 国产成人影院在线观看 | 国产小福利 | 三级黄色在线 | 欧美精品video | 狠狠色狠狠色综合久久一 | 婷婷综合五月 | 久久h| 欧美巨大xxxx做受中文字幕 | 国产午夜精品理论片 | 中文字幕不卡在线播放 | 欧美成人性色xxxxx视频大 | 91大神视频在线播放 | 亚洲成人精品在线 | 在线网站你懂得 | 免费观看成年欧美1314www色 | 天堂-bt种子 | 国产伦精品一区二区免费 | 精品精品国产高清a毛片牛牛 | 91激情在线 | 黄色三级视频在线观看 | 成人午夜精品久久久久久久小说 | 韩国视频在线播放 | 成人欧美一区二区三区视频 | 停停五月天 | 亚洲欧美视频在线 |