如果我通过串口通讯将以下字符串发送到rpi
echo "#q10" > /dev/ttyUSB0
编辑: 这是来自覆盆子pi的app输出(换行符^ M似乎是问题)
我尝试过不同长度的字符串也会产生不一致
代码如下。我正在使用串行接线库 Gordons project
#include <stdio.h>
#include <wiringSerial.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
int fd;
struct obj_Properties
{
char *one;
char *two;
char *three;
char *four;
};
int main()
{
if ((fd = serialOpen("/dev/ttyUSB0", 9600)) < 0)
{
return 1;
}
for(;;){
while (serialDataAvail (fd))
{
struct obj_Properties prop;
prop.one = serialGetchar(fd);
prop.two = serialGetchar(fd);
prop.three = serialGetchar(fd);
prop.four = serialGetchar(fd);
printf ("%c %c %c %c\n", prop.one, prop.two, prop.three, prop.four);
fflush (stdout) ;
}
usleep(10000);
}
}