MODBUS RTU 写单个线圈
开关量写入和开关量采集
05(0x05)写单个线圈或单个离散输出
功能说明
用于将单个线圈寄存器(或离散输入)设置为ON或OFF,该功能码支持广播模式,在广播模式下,所有从站设备的同一地址的值将被统一修改,查询报文中的ON或OFF状态由报文数据字段的常熟指定,0xFF00表示ON状态,0x0000表示OFF状态。其他所有值均是非法的,并且对寄存器不起作用,将会返回异常相应。
查询报文
本功能码中,起始地址由2个字节构成,取值范围为0x0000~0xFFFF;变更目标数据由2个字节构成,取值只能为0xFF00或0x0000.
响应报文
对于从设备,在线圈或离散输出寄存器正常变更的情况下,则返回于查询报文一样的响应报文。如果修改失败,则返回一个异常响应。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
using System.IO.Ports;
using System.Threading;
namespace ReadRegister
{
internal class Program
{
static void Main(string[] args)
{
// 字节数组转字符串
byte[] vals = {
0x01, 0xAA ,0x02};
string strr = BitConverter.ToString(vals);
Console.WriteLine(strr); //结果01-AA-02
string