当前位置: 技术问答>linux和unix
【求指点】一个关于串口通信数据位数的问题
来源: 互联网 发布时间:2016-10-14
本文导语: 本帖最后由 yiya50002linux 于 2010-11-05 13:20:51 编辑 我要完成的任务是一个32位处理器和16位处理器之间的串口uart通信。 32位机写数据通过串口传给16位机。 在16位处理器中,typedef unsigned char uint8_t ; ...
32位机写数据通过串口传给16位机。
在16位处理器中,typedef unsigned char uint8_t ;
而且串口读取数据处理函数定义为 unit8_t recv() {...} 即只可接收1字节数据。
那么我想让16位处理器成功接收到1个完整的8位数据,在32位处理器的写串口函数中应该如何操作呢?
char buf[2];
char buf[0]='a';
write(fd,buf,2); //fd为串口设备文件描述符,size应该写1还是2呢?的问题很困扰我,如果用buf[]就避开不了结束符的问题,那还有什么方法可以只传递8位数据呢?strcpy?
|
write(fd,buf,1);
用1 即可。
用1 即可。