我正在使用一个 android 应用程序来发送值来控制伺服系统。代码:
char inputData[4];
char buffer[3];
void loop()
{
if(Serial.available() > 3) {
for (int i = 0; i < 4; i++){
inputData[i] = Serial.read();
}
char buffer[4];
buffer[0] = inputData[1];
buffer[1] = inputData[2];
buffer[2] = inputData[3];
buffer[3] = '\0';
int angle = atoi(buffer);
Serial.write(angle);
}
}
问题:我得到值 + AF 字母来寻址每个伺服 - A10、A180、B30 等。现在问题是将其转换为实际整数。如您所见,我已经声明了一个字符数组来存储整数,并且按照 arduino 论坛上的帖子中的建议,我在数组末尾添加了一个 \0。目前,Atoi 返回随机字符,主要是正方形和一些随机数。我什至尝试将它们分配给一个字符串,然后分配给 .toInt() 但同样的问题,主要是正方形。有任何想法吗?谢谢!