Modbus CRC / LRC & địa chỉ thanh ghi
Tính CRC-16 RTU và LRC ASCII, tạo khung yêu cầu, đổi địa chỉ 40001 sang PDU bắt đầu từ 0.
Dữ liệu mẫu được điền sẵn và có thể sửa. Mọi tính toán chạy cục bộ, không tải lên.
Câu hỏi thường gặp
CRC-16/MODBUS: 0x8005 phản chiếu, init 0xFFFF, check 0x4B37. ARC (init 0x0000) không dùng cho RTU.
RTU thêm CRC theo little-endian: từ 0xCDC5, trên bus là C5 CD. Công cụ hiển thị cả hai.
40001 là địa chỉ bắt đầu từ 1, trên bus là 0x0000; 40010 → 0x0009. Đây là lỗi thường gặp.
Cách sử dụng
Nội dung bài viết bên dưới hiện chỉ có bản đầy đủ bằng tiếng Trung; giao diện, tiêu đề, mô tả và FAQ hiển thị theo ngôn ngữ bạn chọn.
- 输入 RTU 报文 hex(不含 CRC),得到 CRC 低/高字节、RTU 完整帧、LRC 与 ASCII 帧。
- 在地址换算区选择寄存器类型并输入人机地址,得到 PDU 地址、读取功能码与带 CRC 的读请求。
本工具用 LRC 计算 ASCII 帧、用 CRC-16/MODBUS 计算 RTU 帧,两者不能混用。读请求的数量按规范限制 0x01/0x02 最多 2000 个位、0x03/0x04 最多 125 个寄存器。
地址与功能码
| 类型 | 起始人机地址 | 报文起始地址 | 读功能码 |
|---|---|---|---|
| Coil | 00001 | 0x0000 | 0x01 |
| Discrete Input | 10001 | 0x0000 | 0x02 |
| Holding Register | 40001 | 0x0000 | 0x03 |
| Input Register | 30001 | 0x0000 | 0x04 |
RTU 帧间隔必须大于等于 3.5 个字符时间,ASCII 帧以
:开头、CRLF 结尾并用 LRC 校验。