日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

linux 串口控制read()的说明

發布時間:2024/9/3 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 串口控制read()的说明 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在數組c_cc中有兩個下標(VTIME和VMIN)對應的元素不是控制符,并且只是在原始的模式下才有效。串口的模式控制是通過options.c_lflag控制的,如:options.c_lflag &=~ICANON設置串口為原始模式。在原始模式下,它們決定了read()函數在什么時候返

回。在標準的模式下,除非設置了非阻塞的模式(O_NONBLICK)選項,否則只有當遇到行結束符或者文件結束符以后才函數讀才返回。

??????VTIME定義要求等待零到幾百毫秒的時間量通常為一個8位的無符號數。VMIN定義了要求等待的最小字節數這個字節可能是零。??

????? 如果VTIME和VMIN都不為零,VTIME定義的是當接收到第一個字節的數據后開始計算等待的時間量。如果調用read()函數時可以得到數據,計時器馬上開始計時。函數read()會讀取到VIMN字節數據后返回也可能是計時到了后返回,取決于那個條件首先實現。

????? 阻塞訪問的效率通常比非阻塞訪問的效率高。阻塞訪問時不能獲取資源的進程將進入休眠,它將cpu資源讓給其他的進程去調用。非阻塞訪問時用戶獲取設備資源只能不停的查詢,這反而無謂地耗費cpu資源。

總結

以上是生活随笔為你收集整理的linux 串口控制read()的说明的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。