欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

寫(xiě)多個(gè)線圈與寫(xiě)多個(gè)保持寄存器

瑞薩MCU小百科 ? 來(lái)源:瑞薩MCU小百科 ? 2024-11-06 15:21 ? 次閱讀

10.5.11

(0x0F)寫(xiě)多個(gè)線圈

1. 功能說(shuō)明

15功能碼用于將連續(xù)的多個(gè)線圈或離散輸出設(shè)置為ON/OFF狀態(tài),支持廣播模式,在廣播模式下,所有從站設(shè)備的同一地址的值將被統(tǒng)一修改。15功能碼中,起始地址字段由2字節(jié)構(gòu)成,取值范圍為0x00000xFFFF:而寄存器數(shù)量字段由2字節(jié)構(gòu)成,取值范用為0x00010x07B0。

2. 查詢報(bào)文

查詢報(bào)文中包含請(qǐng)求數(shù)據(jù)字段,用于定義ON或OFF狀態(tài)。數(shù)據(jù)字段中為邏輯1的位對(duì)應(yīng)ON;邏輯0的位對(duì)應(yīng)OFF。其中,ON/OFF與數(shù)據(jù)字段的對(duì)應(yīng)關(guān)系可參考前面的童節(jié)“01(0x01)讀取線圈,離散量輸出狀態(tài)(Read Coilstatus/DOs)”中的內(nèi)容舉例說(shuō)明,假設(shè)從站設(shè)備地址為5,需要設(shè)置線圈地址20~30的狀態(tài)如下表所示。

線圈狀態(tài):

bd1d8152-9bec-11ef-a511-92fbcf53809c.png

那么,寫(xiě)入的數(shù)據(jù)字段被劃分為2字節(jié),值分別為0xD1,對(duì)應(yīng)于27~20的線圈,值0x05對(duì)應(yīng)于30~28的線圈,注意細(xì)體會(huì)其中的高低位的對(duì)應(yīng)關(guān)系。需要注意的是,在查詢報(bào)文中,Modbus協(xié)議的起始地址為19(0x13),即比線圈起始地址20少1。如下表所示,其中字節(jié)數(shù)字段表示需要變更數(shù)據(jù)的字節(jié)總數(shù)。

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

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x05 “0”,“5” 0x05
功能碼 0x0F “0”,“F” 0x0F
起始地址
(高位)
0x00 “0”,“0” 0x00
起始地址
(低位)
0x13 “1”,“3” 0x13
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x0B “0”,“B” 0x08
字節(jié)數(shù) 0x02 “0”,“2” 0x02
變更數(shù)據(jù)
(高位)
0xD1 “D”,“1” 0xD1
變更數(shù)據(jù)
(低位)
0x05 “0”,“5” 0x05
差錯(cuò)校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 23 11

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

對(duì)于從設(shè)備,在正常情況下,響應(yīng)報(bào)文包括功能碼、起始地址以及寫(xiě)入的線圈數(shù)量,如下表所示。

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

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x05 “0”,“5” 0x05
功能碼 0x0F “0”,“F” 0x0F
起始地址
(高位)
0x00 “0”,“0” 0x00
起始地址
(低位)
0x13 “1”,“3” 0x13
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x0B “0”,“B” 0x08
差錯(cuò)校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 17 8

10.5.12

(0x10)寫(xiě)多個(gè)保持寄存器

1. 功能說(shuō)明

16功能碼用于設(shè)置或?qū)懭霃脑O(shè)備保持寄存器的多個(gè)連續(xù)的地址塊(1~123個(gè)寄存器),支持廣播模式,在廣播模式下,所有從站設(shè)備的同一地址的值將被統(tǒng)一修改。本功能碼中,起始地址字段由2字節(jié)構(gòu)成,取值范圍為0x0000~0xFFFF;而寄存器數(shù)量字段由2字節(jié)構(gòu)成,取值范圍為0x0001~0x007B。

2. 查詢報(bào)文

查詢報(bào)文包含請(qǐng)求數(shù)據(jù)字段。數(shù)據(jù)字段保存需要寫(xiě)入的數(shù)值,各數(shù)據(jù)按每個(gè)寄存器2字節(jié)存放。舉例說(shuō)明,從站設(shè)備地址為5,需要將保持寄存器地址40020~40022設(shè)置為如下表所示的數(shù)值。

寄存器的設(shè)置:

寄存器地址 設(shè)定值 寄存器地址 設(shè)定值
40020 0X0155 40022 0x0157
40021 0x0156

對(duì)應(yīng)于40020~40022的寄存器,注意仔細(xì)體會(huì)其中的高低位的對(duì)應(yīng)關(guān)系。需要注意的是,在查詢報(bào)文中,Modbus協(xié)議的起始地址為19(0x13),即比寄存器起始地址20少1。如下表所示,其中字節(jié)數(shù)字段表示需要變更數(shù)據(jù)的字節(jié)總數(shù)。

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

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
幀頭 “:”
從設(shè)備地址 0x05 “0”,“5” 0x05
功能碼 0x10 “0”,“F” 0x0F
起始地址
(高位)
0x00 “0”,“0” 0x00
起始地址
(低位)
0x13 “1”,“3” 0x13
寄存器數(shù)
(高位)
0x00 “0”,“0” 0x00
寄存器數(shù)
(低位)
0x03 “0”,“B” 0x08
字節(jié)數(shù) 0x06 “0”,“6” 0x06
變更數(shù)據(jù)1
(高位)
0x01 “0”,“1” 0x01
變更數(shù)據(jù)1
(低位)
0x55 “5”,“5” 0x56
變更數(shù)據(jù)2
(高位)
0x01 “0”,“1” 0x01
變更數(shù)據(jù)2
(低位)
0x56 “5”,“6” 0x56
變更數(shù)據(jù)3
(高位)
0x01 “0”,“1” 0x01
變更數(shù)據(jù)3
(低位)
0x57 “5”,“7” 0x57
差錯(cuò)校驗(yàn) LRC(2字符) CRC(2字節(jié))
幀尾 CR/LF
合計(jì)字節(jié)數(shù) 31 15

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

對(duì)于從設(shè)備,在正常情況下,響應(yīng)報(bào)文包括功能碼、起始地址及寫(xiě)入的寄存器數(shù)量,如下表所示。

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

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

在實(shí)際開(kāi)發(fā)過(guò)程中,功能碼“16(0x10)寫(xiě)多個(gè)寄存器(Preset MultipleRegisters)”通常用于方便用戶寫(xiě)入多字節(jié)類型的數(shù)據(jù)。

例如,假設(shè)從站設(shè)備地址為5,需要向保持寄存器寫(xiě)入一個(gè)32位(4字節(jié))的浮點(diǎn)數(shù),那么此浮點(diǎn)數(shù)將占用2個(gè)寄存器地址。假設(shè)浮點(diǎn)數(shù)將存放在40001和40002寄存器中,設(shè)定值為1.235(即0x3F9E 147A)實(shí)際的查詢和響應(yīng)報(bào)文如下(其中標(biāo)記部分為設(shè)定的浮點(diǎn)數(shù)值,假設(shè)字節(jié)序?yàn)锳B-CD,參考第5.3.7章字節(jié)序和大小端的內(nèi)容)。

查詢報(bào)文:05 10 00 00 00 02 04 3F 9E 14 7A 05 86

響應(yīng)報(bào)文:05 10 00 00 00 02 40 4C

對(duì)于64位(8字節(jié))的雙精度浮點(diǎn)數(shù),同理將占用4個(gè)寄存器地址共8字節(jié)的空間。特別需要注意的是字節(jié)序及大小端的問(wèn)題,前面討論過(guò)多字節(jié)存在大小端問(wèn)題,因此主站設(shè)備和從站設(shè)備必須保持一致的規(guī)則處理,約定Modbus傳輸中的數(shù)據(jù)字段的字節(jié)序,否則會(huì)因?yàn)榇笮《瞬灰恢露a(chǎn)生數(shù)據(jù)處理錯(cuò)誤。

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

    關(guān)注

    14

    文章

    1839

    瀏覽量

    44660
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5372

    瀏覽量

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

    關(guān)注

    0

    文章

    10

    瀏覽量

    2155
  • 報(bào)文
    +關(guān)注

    關(guān)注

    0

    文章

    38

    瀏覽量

    4069

原文標(biāo)題:寫(xiě)多個(gè)線圈與寫(xiě)多個(gè)保持寄存器 - RZ MPU工業(yè)控制教程連載(35)

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    NXP RC522 寫(xiě)寄存器問(wèn)題,哪位大神給點(diǎn)建議

    問(wèn)題:寫(xiě)寄存器 后再讀取寄存器值;但讀取的總是RC522 寄存器復(fù)位值(如TxControlReg 寫(xiě)0x01,讀出是0x80;試寫(xiě)過(guò)RC5
    發(fā)表于 12-29 02:32

    NI提供的modbus工具包功能測(cè)試結(jié)果,但是讀線圈讀不回來(lái),寫(xiě)多個(gè)寄存器也只能寫(xiě)進(jìn)去起始地址那個(gè)是什么原因呢?

    我使用的是NI提供的modbus工具包,目前成功的是連讀多個(gè)寄存器寫(xiě)單個(gè)線圈、寫(xiě)單個(gè)寄存器;讀
    發(fā)表于 07-20 08:59

    Modbus協(xié)議———常用功能碼詳解

    0x0032,讀2個(gè)保持寄存器3)響應(yīng):數(shù)據(jù)存儲(chǔ)順序04H-讀輸入寄存器1)描述:讀輸入寄存器,字節(jié)指令操作,可讀單個(gè)或者多個(gè); 2)發(fā)送指
    發(fā)表于 08-02 19:47

    如何把庫(kù)函數(shù)寫(xiě)的文件和寄存器寫(xiě)的文件結(jié)合起來(lái)用?

    庫(kù)函數(shù)寫(xiě)的文件 怎么樣和 寄存器寫(xiě)的文件 結(jié)合起來(lái)用???庫(kù)函數(shù)寫(xiě)的文件 怎么樣和 寄存器寫(xiě)的文件
    發(fā)表于 08-07 02:49

    無(wú)法理解Modbus RTU協(xié)議寫(xiě)多個(gè)寄存器的這兩個(gè)參數(shù)

    Modbus RTU協(xié)議寫(xiě)多個(gè)寄存器的協(xié)議是下面這樣描述的:針對(duì)這個(gè)協(xié)議我有幾個(gè)問(wèn)題,請(qǐng)教大家:1、其中請(qǐng)求PDU中的“寄存器數(shù)量”和“字節(jié)數(shù)”兩個(gè)參數(shù)是不是冗余了?“字節(jié)數(shù)”不是可以
    發(fā)表于 05-07 10:43

    無(wú)法理解Modbus RTU協(xié)議寫(xiě)多個(gè)寄存器的這兩個(gè)參數(shù)!

    Modbus RTU協(xié)議寫(xiě)多個(gè)寄存器的協(xié)議是下面這樣描述的:針對(duì)這個(gè)協(xié)議我有幾個(gè)問(wèn)題,請(qǐng)教大家:1、其中請(qǐng)求PDU中的“寄存器數(shù)量”和“字節(jié)數(shù)”兩個(gè)參數(shù)是不是冗余了?“字節(jié)數(shù)”不是可以
    發(fā)表于 05-07 15:21

    調(diào)試AD7124-8驅(qū)動(dòng)時(shí),對(duì)各寄存器配置之后再次讀各寄存器的值,多個(gè)寄存器的值都為fffffffd是為什么?

    在調(diào)試AD7124-8驅(qū)動(dòng)時(shí),對(duì)各寄存器配置之后再次讀各寄存器的值,多個(gè)寄存器的值都為fffffffd,這是為什么? 看參考程序里面對(duì)各寄存器
    發(fā)表于 12-07 08:29

    寄存器尋址方式

    寄存器尋址方式   寄存器尋址是對(duì)由指令選定的工作寄存器(R0--R7)進(jìn)行讀/寫(xiě),由指令操作碼字節(jié)的最低3位指明所尋址的工作寄存器
    發(fā)表于 03-14 15:29 ?2861次閱讀

    32位寄存器,32位寄存器是什么意思

    32位寄存器,32位寄存器是什么意思  從X8086開(kāi)始學(xué)了一年,第一個(gè)ASM的程序就是變32換16進(jìn)制的程序,不過(guò)現(xiàn)在叫我從新開(kāi)始寫(xiě)ASM程
    發(fā)表于 03-08 17:26 ?1.8w次閱讀

    使用寄存器級(jí)讀&寫(xiě)控制基于PXI平臺(tái)的FPGA

    本文以基于PXI平臺(tái)的Marvin Test Solutions 3U FPGA板卡GX3500為設(shè)計(jì)對(duì)象,通過(guò)設(shè)計(jì)實(shí)例講解如何使用寄存器級(jí)讀&寫(xiě)控制FPGA,并提供FPGA設(shè)計(jì)相關(guān)文件(如
    發(fā)表于 09-27 17:46 ?10次下載

    如何使用寄存器級(jí)讀&寫(xiě)控制基于PXI平臺(tái)的FPGA

    如何使用寄存器級(jí)讀&寫(xiě)控制基于PXI平臺(tái)的FPGA
    發(fā)表于 10-16 15:20 ?14次下載
    如何使用<b class='flag-5'>寄存器</b>級(jí)讀&<b class='flag-5'>寫(xiě)</b>控制基于PXI平臺(tái)的FPGA

    如何使用寄存器級(jí)讀&寫(xiě)控制基于PXI平臺(tái)的FPGA

    如何使用寄存器級(jí)讀&寫(xiě)控制基于PXI平臺(tái)的FPGA
    發(fā)表于 10-19 08:48 ?12次下載

    STM32系列MCU,寫(xiě)寄存器Or利用固件庫(kù)

    嵌入式的編程,往下說(shuō)就是操作MCU的寄存器。而固件庫(kù)就是函數(shù)的集合,固件庫(kù)函數(shù)的作用是向下負(fù)責(zé)與寄存器直接打交道,向上提供用戶函數(shù)調(diào)用的接口(API)。相對(duì)于固件庫(kù)的方式,直接寫(xiě)寄存器
    的頭像 發(fā)表于 08-09 17:22 ?7325次閱讀
    STM32系列MCU,<b class='flag-5'>寫(xiě)</b><b class='flag-5'>寄存器</b>Or利用固件庫(kù)

    寄存器陣列低功耗設(shè)計(jì)方案

    寄存器寫(xiě)操作的時(shí)候會(huì)改變寄存器內(nèi)容,需要時(shí)鐘鎖入新的數(shù)據(jù)。但是,對(duì)寄存器進(jìn)行讀操作的時(shí)候,寄存器內(nèi)容不改變,
    的頭像 發(fā)表于 12-08 11:19 ?657次閱讀
    <b class='flag-5'>寄存器</b>陣列低功耗設(shè)計(jì)方案

    寫(xiě)單個(gè)線圈與單個(gè)保持寄存器相關(guān)

    05功能碼用于將單個(gè)線圈寄存器(或離散輸入)設(shè)置為ON或OFF,該功能碼支持廣播模式在廣播模式下,所有從站設(shè)備的同一地址的值將被統(tǒng)一修改。查詢報(bào)文中的ON/OFF狀態(tài)由報(bào)文數(shù)據(jù)字段的常數(shù)指定
    的頭像 發(fā)表于 11-01 13:46 ?290次閱讀