- 博客(5)
- 收藏
- 关注
原创 Modbus-crc16校验原理和方法(含测试代码以及演算过程)
在逻辑与运算中,只有当两个(或多个)输入条件都为真(1)时,输出结果才为真(1);如果任何一个输入条件为假(0),输出结果就为假(0)。相异或(XOR,Exclusive OR)是一种逻辑运算,它的基本原则是:当两个比较的位不同时,结果是1(真);在这里的“A”和“B”是两个比较的位,而“A XOR B”是相异或运算的结果。2.把第一个8位二进制数据(既通讯信息帧的第一个字节)与16位的CRC寄存器的低8位相异或,把结果放于CRC寄存器;(2) 功能码 (01,03,06,10,16等等)
2024-09-09 17:06:32
1858
原创 菜鸟小白的一百次试错(3)--室外温度为负值
由于浮点数的内部表示是基于二进制分数,它可能无法精确表示所有的十进制小数,某些十进制小数无法用有限的二进制分数精确表示。在某些情况下,浮点数可能会有舍入误差,导致表示的数值与实际的十进制数值略有不同。通过03功能码,在对modbus返回报文的第四第五位十六进制数据解析过程中,出现一个很大的数,其实际表示值应为负值。它用来存储一个16位的无符号整数,其取值范围从0到65535(即2^16 - 1)。类型是一种浮点数,它用于表示实数,包括小数和分数。在对modbus解析过程中,遇见室外温度为负值的情况。
2024-07-11 11:02:17
537
原创 菜鸟小白的一百次试错--(2)上传ONENET平台物模型对应数据格式
对应物模型上传的三种数据类型:int、float、string(不是C++中基本数据类型--char*)(个人记录笔记--欢迎大佬批评指正)注意值的格式:\\22B9\\22。注意值的格式:0.00。
2024-07-11 09:53:34
622
原创 菜鸟小白的一百次试错--(1)String强制为char*
编译错误:无法将'String'转换为'const char*',参数'1'转换为'int printf(const char*,…String是C++的类,类似于函数,不是基本数据类型。int char是基本变量,本质上是不同的。编译错误:无法通过'…'传递非平凡可复制类型'class String'的对象。将String变量传递给函数并进行赋值/计算时出现。(个人记录笔记--欢迎大佬批评指正)String 强制为char*arduino编译中遇。
2024-07-09 09:58:24
400
原创 求助帖~arduino对ESP32烧录时报错Wrong boot mode detected (0x13)!
同一块ESP32,别人可以烧录成功,我电脑烧录报以下错误。
2024-06-26 14:57:10
1348
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅