if(mySerial.available()){
size_t len = mySerial.available();
uint8_t sbuf[len];
mySerial.readBytes(sbuf, len);
//push UART data to all connected telnet clients
for(i = 0; i < MAX_SRV_CLIENTS; i++){
if (serverClients[i] && serverClients[i].connected()){
serverClients[i].write(sbuf, len);
delay(1);
我使用此代码从UART端口接收数据,并直接发送到telnet客户端。因为我收到一个Modbus十六进制代码:
10 03 02 01 1F 04 1F
我需要提取第4对和第5对011F并仅发送它作为a 十进制数到TCP。
我知道我必须将它存储到字符串或数组中吗?然后从中提取数据,但由于我没有共同的换行符结束并且我的数字发生了变化(但保留了格式) 我不知道从哪里开始。我试图在网上找到,但我只是陷入困境,需要帮助。
有人可以指导我查看或构建代码,并尝试解释他所做的事情的逻辑。
由于我在ESP8266上这样做,我试图保持简单。