Zac*_*ack 3 c printf serial-port fpga serial-communication
我有一个Xilinx Virtex-II Pro FPGA板,通过RS232连接到iRobot Create.
iRobot将字节整数流作为命令.
我发现printf实际上会通过串口发送(Hypterminal能够接收我打印的任何东西),并且我认为我可以使用printf将我的数据发送到iRobot.
问题是printf似乎格式化了ascii输出的数据,但我真的希望简单地发送数据raw.
我喜欢这样的东西:
printf(%x %x %x, 0x80, 0x88, 0x08);
Run Code Online (Sandbox Code Playgroud)
但是不是十六进制格式化,我希望它是发送的实际0x80值.
有任何想法吗?
用途fwrite:
char buf[] = { 0x80, 0x80, 0x80 };
fwrite(buf, 1, sizeof(buf), stdout);
Run Code Online (Sandbox Code Playgroud)
你可以写任何文件句柄; stdout只是一个镜像你的例子printf.
在Posix系统上,您还可以使用write写入文件描述符的特定于平台的函数.