串列埠進行通訊的方式有兩種:同步通訊方式和非同步通訊方式
spi(serial peripheral inte***ce:序列外設介面);
i2c(inter ic bus:意為ic之間匯流排),一(host)對多,以位元組為單位傳送。
uart(universal asynchronous receiver transmitter:通用非同步收發器), 一對一,以位為單位傳送。
一般uart控制器在嵌入式系統裡面都做在cpu一起,像imx6就是這樣,一共支援5個uart控制器。
總結下它的特徵:
uart一般四個pin(rs232比較多pin,但是常用的也是這幾個):
vcc:供電pin,一般是3.3v,在我們的板子上沒有過電保護,這個pin一般不接,不影響使用
gnd:接地pin,有的時候rx接受資料有問題,就要接上這個pin,一般也可不接
rx:接收資料pin
tx:傳送資料pin,我之前碰到串列埠只能收資料,不能發資料問題,經baidu,原來是設定了流控制,取消就可以了,適用於putty,securecrt
在除錯gps的時候我用到了uart,當時因為gps這個模組的特點是沒有中斷,ic資料直接通過uart上報,
除錯串列埠的時候我就直接用了兩個線連出了rx,tx,然後用gps在pc端的工具從串列埠獲取資料,直接分析gps資料,這樣測試了gps的資料沒有問題。
但是一般嵌入式的串列埠使用的是rs232協議,而很多電腦(尤其筆記本)上沒有傳統的rs232口,一般用要先把rs232的電平轉換為uart 的ttl電平,然後通過usb模擬uart連到電腦上,如下圖:
uart是通用非同步序列口的意思,rs232是uart的一種,它採用的232電平。其他的uart還有微控制器上的非同步通訊口,採用的是ttl電平。
ttl電平是3.3v的,而rs232是負邏輯電平,它定義+5~+12v為低電平,而-12~-5v為高電平。
uart串列埠的rxd、txd等一般直接與處理器晶元的引腳相連,而rs232串列埠的rxd、txd等一般需要經過電平轉換(通常由max232等晶元進行電平轉換)才能接到處理器晶元的引腳上,否則這麼高的電壓很可能會把晶元燒壞。
我們平時所用的電腦的com口即序列通訊埠(串列埠)就是rs232的,當我們在做電路工作時,應該注意下外設的串列埠是ttl型別的還是rs232型別的,如果不匹配,應當找個轉換線(通常這根轉換線內有塊類似於max232的晶元做電平轉換工作的),可不能盲目地將兩串口相連。
另注意:串列埠設計規範是不支援熱插拔。實際中有些人也熱插拔著,但盡量少吧,避免板子晶元壞了。
uart 指非同步序列通訊介面,對電平訊號沒有規定; rs232是指乙個規定了訊號電平的非同步序列通訊介面; uart所指含義更寬, rs232規定相對狹窄!
認識UART介面
沒有仔細研究過,就用了下,總結了點,也搜了點資料.簡單的講 uart與com 嵌入式裡面說的串列埠,一般是指uart口,但是我們經常搞不清楚它和com口的區別,以及rs232,ttl等關係,實際上uart,com指的物理介面形式 硬體 而ttl rs 232是指的電平標準 電訊號 uart有4個pi...
UART介面介紹
目錄 uart,universal asynchronous receiver transmitter,通用非同步收發傳輸器 uart協議規定了通訊雙方所遵守的規定,屬於資料鏈路層 rs232介面標準規定了電氣特性 邏輯電平和各種訊號線功能,屬於物理層 rs232介面是pc機上序列介面標配,有db9...
對UART介面的理解
uart是一種通用序列資料匯流排,用於非同步通訊。該匯流排雙向通訊,可以實現全雙工傳輸和接收。在嵌入式設計中,uart用來與pc進行通訊,包括與監控偵錯程式和其它器件,如eeprom通訊。uart通訊 uart首先將接收到的並行資料轉換成序列資料來傳輸。訊息幀從乙個低位起始位開始,後面是7個或8個資...