我想這對某些串行端口(即ttyS9)寫串行端口在Linux
motordrivers通過cutecom(十六進制輸入),機器人程序,我可以把下面的輸入,這給了我結果我想到:
5aaa0700fffff000
現在我想實現一個C程序,即執行以下操作相同的結果:
int port9 = open("/dev/ttyS9", O_RDWR | O_NONBLOCK);
char buff[17] = "5aaa0700fffff000";
write(port9, buff, 16);
我也試過初始化buff
seperately的十六進制值:
buff[0] = 0x5;
buff[1] = 0xa;
等等等等
兩個不工作。我的代碼或驅動程序中存在問題嗎?
我使用gcc編譯,然後用sudo運行它。 open函數還返回適當的值(無錯誤)以及寫入值。
看[問]並提供[mcve]。不要像管理員那樣運行這樣的代碼。 – Olaf