大家好
我有一个问题与AT+CIPSEND
命令。它接收作为ASCII数据的输入数据,因此当我检查服务器时,我接收到的数据格式是错误的。我希望以字节为单位接收数据。因此,我已经将字节数组转换为ASCII数组以正确接收它。但是在ASCII中有一个独特的字符,如1
和8
,串行通信执行这些特殊字符的动作,而不是发送它们。
发送char bytes[] = { 120, 120, 13, 1, 8, 103, 149, 144, 52, 66, 103, 130, 0, 13, 51, 81, 13, 10 };
的字节数组
我收到{ 120, 120, 13, 103, 149, 144, 52, 66, 103, 130, 0, 13, 51, 81, 13, 10 };
谢谢你。
解决方案使用AT+CIPSEND=n
,其中n
是要发送的字节数。
示例char bytes[] = { 120,120,13,1,8,103,149,144,52,66,103,130,0,13,51,81,13,10 };
executeAT+CIPSEND=18
则发送18字节的值
char bytes[] = { 120,120,13,1,8,103,149,144,52,66,103,130,0,13,51,81,13,10 };
A9G.print("AT+CIPSEND=18rn");
for (int i = 0; i < 18; ++i) { A9G.write(bytes[i]); }