遇到一個問題,子串口模塊發送的數據0x0D,在ARM板上接收並打印出來時變成了0x0A。
解決方案是在配置串口時,添加上以下語句:
Newtio.c_iflag &= ~ICRNL;
理論依據是:
ICRNL 將輸入的回車轉化成換行(如果IGNCR未設置的情況下)
0x0D 回車符CR
0x11 ^Q VSTART字符
0x13 ^S VSTOP字符
解決方案是在配置串口時,添加上以下語句:
Newtio.c_iflag &= ~ICRNL;
理論依據是:
ICRNL 將輸入的回車轉化成換行(如果IGNCR未設置的情況下)
0x0D 回車符CR
0x11 ^Q VSTART字符
0x13 ^S VSTOP字符