2014-02-21 32 views
0

我可以串行发送1字节的char型数据。现在我坚持发送浮点型数据。这里是我的串行发送数据的代码。使用C++ .in Linux的串行通信

fd = open("/dev/ttyO1", O_RDWR | O_NOCTTY); 
char byte_out[] = {0x47}; 
write(fd, byte_out, strlen(byte_out)+1); 

我该如何写(或发送)串行浮点型数据。请帮帮我 。提前致谢 。

+0

你应该定义的协议和二进制(或文本)表示您正在发送(这可能取决于另一边)。如果可能的话,选择一个文本表示(也许[JSON](http://json.org/)可以激励你)。而你的代码是错误的:'byte_out'应该是0结束的。 –

回答

0

没有什么不同..而且你需要把float类型的大小合适..

fd = open("/dev/ttyO1", O_RDWR | O_NOCTTY); 
float float_out[] = {1.2342}; 
write(fd, (void *) float_out, sizeof(float));