嵌入式開發板到手後一般都會開放串列埠,對串列埠的操作可以說是最基本的操作,那麼拿到開發板後怎樣操作串列埠呢?怎樣利用串列埠向外傳送資料呢?
我做的是乙個通過串列埠來傳送一串字元,實現nbiot的傳輸,系統是linux系統下的,傳送的資料需要是16進製制的資料。以下是c語言開發串列埠的相關**記錄。
1.找到串列埠的裝置號
在linux系統下,所有的裝置都是檔案,所以要先找到串列埠這個裝置檔案,之後就可以對這個串列埠進行操作。
#define uart_dev 「/dev/ttyama2」
2.開啟串列埠並初始化串列埠
串列埠的開啟只需要乙個open函式就可以開啟,下面有乙個初始化的函式,先將串列埠開啟,如果開啟成功,會返回乙個裝置描述符。
int uart_init(void )
set_opt(fd);
return fd;
}
int set_opt(int fd)
這樣設定好了以後,串列埠的初始化基本就完成了。
3.用串列埠傳送一串資料
利用串列埠傳送一串資料,write
int uart_send( int fd, char * str)
4.讀出串列埠接收到的資料,read
int uart_recv(int fd)
close(fd);
return nread ;
}
C 串列埠通訊 最基礎程式(附帶注釋)
前提 c 要實現串列埠通訊一定要建立乙個form 原始碼及說明 這是乙個連線com3串列埠,通過鍵盤摁鍵發出資訊的基礎程式 摁鍵對應小鍵盤的1,2,3 using system using system.collections.generic using system.componentmodel ...
串列埠通訊 串列埠通訊原理
1 rs232介面 rs232 c介面聯結器一般使用型號為db 9的9芯插頭座,只需3條介面線,即 傳送資料 接收資料 和 訊號地 即可傳輸資料,其9個引腳的定義如圖11 3所示。圖11 3 rs232 c介面聯結器定義 在rs232的規範中,電壓值在 3v 15v 一般使用 6v 稱為 0 或 o...
串列埠同步通訊和串列埠非同步通訊
串列埠掃盲貼 現實中不存在絕對精確的時鐘,標稱值同樣是1mhz,發端和接收端的時鐘總會存在差異,如果接收端不進行時鐘同步,而是使用自己本地的時鐘,則足夠長的時間後接收到的資料總會出現不可預知的重複或丟失,導致接收錯誤。因此發端必須將與資料速率相關的時鐘訊號傳輸給接收端,時鐘訊號可以走單獨的訊號線,也...