串口是計算機上一種非常通用設備通信的協議。大多數計算機包含兩個基於RS232的串口。串口通信的概念非常簡單,串口按位(bit)發送和接收字節。盡管比按字節(byte)的並行通信慢,但是由於串口通信是異步的,串口可以在使用一根線發送數據的同時用另一根線接收數據。它很簡單並且能夠實現遠距離通信。串口通信最重要的參數是波特率、數據位、停止位和奇偶校驗。
linux下串口通信主要有下面幾個步驟:

先介紹下打開串口的步驟:
1 //打開串口 2 int open_port(void) 3 { 4 int fd; 5 6 fd=open("/dev/ttyUSB0",O_RDWR | O_NOCTTY | O_NONBLOCK);//O_NONBLOCK設置為非阻塞模式,在read時不會阻塞住,在讀的時候將read放在while循環中,下一節篇文檔將詳細講解阻塞和非阻塞 7 // printf("fd=%d\n",fd); 8 9 if(fd==-1) 10 { 11 perror("Can't Open SerialPort"); 12 } 13 14 return fd; 15 }
