資料介紹
介紹UART
最早的串行通訊設(shè)備可以追溯到電報(bào)機(jī),它使用長(zhǎng)度可變的脈沖信號(hào)進(jìn)行數(shù)據(jù)傳輸。要說(shuō)早期的芯片級(jí)UART,不得不提一下DEC,該公司的PDP系列計(jì)算機(jī)用上了第一個(gè)UART。當(dāng)時(shí)的UART的線路占據(jù)了整個(gè)電路板,體積巨大!可以聯(lián)想一下早期計(jì)算機(jī)的樣子,如下圖。

如今PC機(jī)上的串口早已被USB取代,對(duì)RS-232(也稱標(biāo)準(zhǔn)串口)有需求的用戶通常使用USB轉(zhuǎn)串口線,這里常見(jiàn)的有CH340串口驅(qū)動(dòng)程序。在UART通信中,兩個(gè)UART直接通信。
發(fā)送端的UART將來(lái)自控制設(shè)備(如CPU)的并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù),以串行方式將其發(fā)送到接收端的UART,然后由接收端的UART將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)以用于接收設(shè)備的正常處理。這里只需要兩條線RX/TX即可在兩個(gè)UART之間傳輸數(shù)據(jù),如下圖所示。

UART傳輸?shù)臄?shù)據(jù)被封裝成數(shù)據(jù)包。每個(gè)數(shù)據(jù)包包含1個(gè)起始位,5~9個(gè)數(shù)據(jù)位(取決于UART的具體設(shè)置),一個(gè)可選的奇偶校驗(yàn)位以及1個(gè)或2個(gè)停止位,如下圖所示。

起始位
UART數(shù)據(jù)傳輸線通常在不傳輸數(shù)據(jù)時(shí)保持在高電平。為了開(kāi)始數(shù)據(jù)傳輸,發(fā)送端UART在一個(gè)時(shí)鐘周期內(nèi)將傳輸線從高電平拉低到低電平。當(dāng)接收端UART檢測(cè)到高電壓到低電壓轉(zhuǎn)換時(shí),它開(kāi)始以波特率的頻率讀取數(shù)據(jù)位中的每一位數(shù)據(jù)。
數(shù)據(jù)
數(shù)據(jù)位包含正在傳輸?shù)膶?shí)際數(shù)據(jù)。如果使用奇偶校驗(yàn)位,則可以是5位,最多8位。如果不使用奇偶校驗(yàn)位,則數(shù)據(jù)幀的長(zhǎng)度可以為9位。在大多數(shù)情況下,數(shù)據(jù)首先以低有效位發(fā)送。
校驗(yàn)位
在串口通信中一種簡(jiǎn)單的檢錯(cuò)方式。有四種檢錯(cuò)方式:
偶校驗(yàn)
奇校驗(yàn)
高校驗(yàn)
低校驗(yàn)
對(duì)于偶和奇校驗(yàn)的情況,串口會(huì)設(shè)置校驗(yàn)位(數(shù)據(jù)位后面的一位),用一個(gè)值確保傳輸?shù)臄?shù)據(jù)有偶個(gè)或者奇?zhèn)€邏輯高位。
停止位
發(fā)送端UART將數(shù)據(jù)傳輸線從低電壓驅(qū)動(dòng)到高電壓至少持續(xù)兩位數(shù)據(jù)的時(shí)間寬度來(lái)表示整個(gè)數(shù)據(jù)包的傳輸已經(jīng)結(jié)束。由于數(shù)據(jù)是在傳輸線上定時(shí)的,并且每一個(gè)設(shè)備有其自己的時(shí)鐘,很可能在通信中兩臺(tái)設(shè)備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計(jì)算機(jī)校正時(shí)鐘同步的機(jī)會(huì)。適用于停止位的位數(shù)越多,不同時(shí)鐘同步的容錯(cuò)性越好,但是數(shù)據(jù)傳輸率同時(shí)也越慢。
波特率
波特率是串口數(shù)據(jù)的傳輸速度,即Bit/s,常見(jiàn)的波特率比如:9600,19200,38400,57600,115200等。假設(shè)目前UART的配置為,1個(gè)起始位,8個(gè)數(shù)據(jù)位,0個(gè)校驗(yàn)位,1個(gè)停止位,那么9600的波特率,可以計(jì)算出每一位數(shù)據(jù)的時(shí)間寬度為:

那么傳輸一個(gè)字節(jié)(也就是10 bit 數(shù)據(jù))需要的時(shí)間為 1.04 毫秒。
UART傳輸過(guò)程
①發(fā)送端UART從數(shù)據(jù)總線轉(zhuǎn)換并行數(shù)據(jù)。
②發(fā)送端UART將起始位,奇偶校驗(yàn)位和停止位添加到數(shù)據(jù)包中,示意圖如下。

③整個(gè)數(shù)據(jù)包從發(fā)送端UART串行發(fā)送到接收端UART,接收端UART按照預(yù)先配置好的波特率對(duì)數(shù)據(jù)線進(jìn)行采樣,示意圖如下。

④接收端UART解析接收的數(shù)據(jù),丟棄數(shù)據(jù)包中的起始位,奇偶校驗(yàn)位和停止位。
⑤接收UART將串行數(shù)據(jù)轉(zhuǎn)換回并行數(shù)據(jù),并將其傳輸?shù)浇邮斩说臄?shù)據(jù)總線。
本文轉(zhuǎn)自: STM32嵌入式開(kāi)發(fā)(微信號(hào):c-stm32),作者:acket,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。
- 不同類(lèi)型單片機(jī)之間如何“搭訕”?
- 單片機(jī)串行通信UART(通用異步收發(fā)傳輸器)是如何工作的資料下載
- AT89S51單片機(jī)串行口的詳細(xì)資料介紹 13次下載
- 單片機(jī)與FPGA異步串行通信的實(shí)現(xiàn)方法 8次下載
- 51單片機(jī)的UART基礎(chǔ)知識(shí)說(shuō)明 12次下載
- 51單片機(jī)的IO口如何模擬串行通信實(shí)現(xiàn)方法詳細(xì)說(shuō)明 2次下載
- 51單片機(jī)與計(jì)算機(jī)進(jìn)行異步串行通信的實(shí)例說(shuō)明
- 單片機(jī)的UART接口知識(shí)點(diǎn)簡(jiǎn)介
- 使用51單片機(jī)與計(jì)算機(jī)進(jìn)行異步串行通信的實(shí)戰(zhàn)資料說(shuō)明
- 使用51單片機(jī)實(shí)現(xiàn)異步串行雙機(jī)通信多字節(jié)傳輸?shù)腃語(yǔ)言程序免費(fèi)下載
- 單片機(jī)串行通信發(fā)射機(jī)單片機(jī)串行通信發(fā)射機(jī) 16次下載
- pic單片機(jī)與pc機(jī)異步串行通信的設(shè)計(jì)
- AVR單片機(jī)串行接口及應(yīng)用
- LM3S系列單片機(jī)串行(UART)升級(jí)方案解決
- 基于AVR單片機(jī)的異步串行信號(hào)檢測(cè)裝置
- 單片機(jī)的全雙工的異步串行通信接口 4366次閱讀
- UART通用異步收發(fā)器與I2C總線 1656次閱讀
- SPCE061A單片機(jī)與指紋識(shí)別模塊的接口電路設(shè)計(jì) 4565次閱讀
- 使用51單片機(jī)進(jìn)行串口調(diào)試的基本方法有哪些 1.3w次閱讀
- PIC單片機(jī)與PC機(jī)實(shí)現(xiàn)串行通信的設(shè)計(jì) 2954次閱讀
- 51單片機(jī)串口調(diào)試的基本方法介紹 9678次閱讀
- 51單片機(jī)擴(kuò)充串行口的方法 9606次閱讀
- PIC單片機(jī)虛擬串行通信設(shè)計(jì) 1421次閱讀
- 如何實(shí)現(xiàn)單片機(jī)UART串行數(shù)據(jù)與CAN數(shù)據(jù)之間相互轉(zhuǎn)換 2.1w次閱讀
- 單片機(jī)串行口介紹,8051單片機(jī)的通信方式 1.6w次閱讀
- 單片機(jī)通信uart和modbus有什么區(qū)別 2w次閱讀
- 單片機(jī)之間UART通信示意圖分享 1.6w次閱讀
- 學(xué)習(xí)51單片機(jī)晶振這21問(wèn)題搞懂了學(xué)單片機(jī)就簡(jiǎn)單了 1.2w次閱讀
- 單片機(jī)與PLC之間的串行通信實(shí)現(xiàn) 3.2w次閱讀
- 單片機(jī)必須了解的外設(shè)功能——GPIO/串行通信 1.8w次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論