終端I O之波特率函式

2022-05-04 19:51:42 字數 1025 閱讀 5611

波特率(baud rate)是乙個以往採用的術語,現在它指的是"位/秒"(bits per second)。雖然大多數終端裝置對輸入和輸出使用同一波特率,但是只要硬體許可,可以將它們設定為兩個不同值。

#include

speed_t cfgetispeed(const struct termios *termptr);

speed_t cfgetospeed(const struct termios *termptr);

兩個函式的返回值:波特率值

int cfsetispeed(struct termios *termptr, speed_t speed);

int cfsetospeed(struct termios *termptr, speed_t speed);

兩個函式的返回值:若成功則返回0,出錯則返回-1

bb兩個cfget函式的返回值,以及兩個cfset函式的speed引數都是下列常量之一:b50、b70、b110、b134、b150、b200、b300、b600、b1200、b1800、b2400、b4800、b9600、b19200或b38400。常量b0表示"結束通話"。在呼叫tcsetattr時,如若將輸出波特率指定為b0,則數據機的控制線就不再起作用。

大多數系統定義了另外 的波特率值,例如b57600以及b115200。

使用這些函式時,應當理解輸入、輸出波特率是存放在圖18-3(所示的裝置termios結構中的。在呼叫任一cfget函式之前,先要用tcgetattr獲得裝置的termios結構。與此類似,在呼叫任一cfset函式後,應將波特率設定到termios結構中。為使這種更改影響到裝置,應當呼叫tcsetattr函式。如果所設定的波特率有錯,則在呼叫tcsetattr之前,不會發現這種錯誤。

這4個波特率函式使應用程式不必考慮具體實現在termios結構中表示波特率的不同方法。

波特率 位元率和波特率

最近因為專案在複習通訊原理,對於位元率和波特率概念始終區分不是很明確,網上找了很多教程,找到了我認為最好理解的乙個版本。一,位元 bit 與資訊度量衡 度量衡是乙個名詞,通俗簡單的理解就是某個東西的單位,舉個栗子 1,乙個妹子的重量是100kg,那麼kg就是單位,用來描述物體 妹子 的性質 質量 k...

波特率程式設計

波特率指資料訊號對載波的調製速率,它用單位時間內載波調製狀態改變次數來表示 1 波特率發生器不是產生波特率時鐘的,波特率時鐘頻率 波特率因子 波特率。波特率發生器的作用是從輸入時鐘轉換出需要的波特率clk 乙個完整的由verilog實現的波特率發生器 module baud gen clk 50mh...

UART和波特率

什麼是 uart uart是一種通用序列資料匯流排,用於非同步通訊。該匯流排雙向通訊,可以實現全雙工傳輸和接收。在嵌入式設計中,uart用來與pc進行通訊,包括與監控偵錯程式和其它器件,如eeprom通訊。uart通訊 uart首先將接收到的並行資料轉換成序列資料來傳輸。訊息幀從乙個低位起始位開始,...