日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 小麥大叔
[導(dǎo)讀]這篇基礎(chǔ)的UART,獻(xiàn)給剛好需要的您!


前面的話

自從國(guó)慶長(zhǎng)假被密密麻麻的紅色炸彈擊中之后,酒也沒(méi)少喝,最終喝到斷片進(jìn)了醫(yī)院,身體恢復(fù)后終于更新了一篇基礎(chǔ)的UART,獻(xiàn)給剛好需要的您;



目錄

  • 1 UART發(fā)展歷史

    • 1.1 早期的串行通訊設(shè)備

    • 1.2 早期的芯片級(jí)UART

    • 1.3 現(xiàn)代UART的發(fā)展

  • 2 預(yù)備知識(shí)

  • 3 協(xié)議層

    • 起始位

    • 數(shù)據(jù)

    • 校驗(yàn)位

    • 停止位

    • 波特率

  • 4 傳輸過(guò)程

  • 5 物理層

  • 6 優(yōu)缺點(diǎn)


1 UART發(fā)展歷史

1.1 早期的串行通訊設(shè)備

早期的電報(bào)機(jī)器使用長(zhǎng)度可變的脈沖信號(hào)進(jìn)行數(shù)據(jù)傳輸,比如摩斯電碼;

摩斯電碼

后來(lái)電傳打印機(jī)(teleprinters )普遍使用5、6、7或8個(gè)數(shù)據(jù)位來(lái)表示各種字符編碼,最終成為計(jì)算機(jī)外圍設(shè)備。電傳打字機(jī)( teletypewriter 簡(jiǎn)稱(chēng) tty)成為小型計(jì)算機(jī)十分出色的通用I/O設(shè)備。

Teletypewritter

由于歷史的發(fā)展原因,早期在Unix終端是一個(gè)名字為ASR33的電傳打字機(jī),而電傳打字機(jī)的英文單詞為Teletype(或Teletypewritter),縮寫(xiě)為tty。因此,終端設(shè)備也被稱(chēng)為tty設(shè)備。這就是TTY這個(gè)名稱(chēng)的來(lái)源。

1.2 早期的芯片級(jí)UART

DEC(Digital Equipment Corporation)公司的Gordon Bell 為該公司的PDP系列計(jì)算機(jī)設(shè)計(jì)了第一個(gè)UART,不過(guò)體積龐大,UART的線路占據(jù)了整個(gè)電路板;

后來(lái)DEC將串行線路單元的設(shè)計(jì)濃縮為早期的UART單芯片,以方便自己使用。

DEC公司Logo

DEC是美國(guó)一家計(jì)算機(jī)公司;

西部數(shù)據(jù)(Western Digital)公司在1971年左右將其開(kāi)發(fā)為第一個(gè)廣泛可用的UART單芯片 WD1402A。這是中型集成電路的早期產(chǎn)品。

Western Digital是美國(guó)計(jì)算機(jī)硬盤(pán)驅(qū)動(dòng)器制造商和數(shù)據(jù)存儲(chǔ)公司。

1.3 現(xiàn)代UART的發(fā)展

2000年代開(kāi)始,大多數(shù)IBM或者相關(guān)的計(jì)算機(jī)都刪除了其外部RS232的COM端口,將其替換為帶寬性能更加出色的USB端口;

早期帶RS232的PC

對(duì)于仍然需要RS-232串行COM端口的用戶,現(xiàn)在通常使用外部USB轉(zhuǎn)UART轉(zhuǎn)換器,常見(jiàn)的有CH340,Silicon Labs 210x的驅(qū)動(dòng)程序,現(xiàn)在很多處理器和芯片都內(nèi)置了UART。

2 預(yù)備知識(shí)

通用異步收發(fā)傳輸器Universal Asynchronous Receiver/Transmitter,通常稱(chēng)為UART),在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ù)。具體如下圖所示;

3 協(xié)議層

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è)停止位,具體如下圖所示;

協(xié)議格式

起始位

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ù)?strong>實(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)。當(dāng)然沒(méi)有校驗(yàn)位也是可以的。

對(duì)于偶和奇校驗(yàn)的情況,串口會(huì)設(shè)置校驗(yàn)位(數(shù)據(jù)位后面的一位),用一個(gè)值確保傳輸?shù)臄?shù)據(jù)有偶個(gè)或者奇?zhèn)€邏輯高位。

舉個(gè)例子,如果數(shù)據(jù)是011,則滿足;

偶校驗(yàn),校驗(yàn)位為0,保證邏輯高的位數(shù)是偶數(shù)個(gè)。

校驗(yàn),校驗(yàn)位為1,這樣就有3個(gè)邏輯高位。

具體如下圖所示;

奇校驗(yàn)和偶校驗(yàn)

高位和低位不是真正的檢查數(shù)據(jù),而是強(qiáng)行將校驗(yàn)位設(shè)置為邏輯高或者邏輯低。這樣使得接收設(shè)備能夠知道一個(gè)位的狀態(tài),有機(jī)會(huì)判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步。

停止位

發(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,當(dāng)然還有很多波特率,不再一一給出;

假設(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的TX上的信號(hào),其中一位數(shù)據(jù)的時(shí)間寬度為26微秒,具體如下圖所示;

則可以簡(jiǎn)單計(jì)算得到;

因此波特率大概為 38400;

下表是各個(gè)波特率下數(shù)據(jù)位時(shí)間寬度;

Time Baud Rate
3333μs (3.3ms) 300
833μs 1200
416μs 2400
208μs 4800
104μs 9600
69μs 14400
52μs 19200
34μs 28800
26μs 38400
17.3μs 57600
8μs 115200
4.34μs 230400




4 傳輸過(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ù)總線:

5 物理層

UART、RS232、RS485在串口通信中,主要區(qū)別是電平的不同,其中UART通常使用TTL電平,下面介紹這幾個(gè)存在的差異;

TTL

TTL全名是晶體管-晶體管邏輯集成電路(Transistor-Transistor Logic)

  • 輸入高電平最小2V,輸出高電平最小2.4V,典型值3.4V;

  • 輸入低電平最大0.8V,輸出低電平最大0.4V,典型值0.2V。

RS232

RS232 邏輯1電平(MARK)=-3V~-15V,邏輯0電平(SPACE)=+3~+15V;

同樣的,對(duì)于傳輸數(shù)據(jù)0x55,即二進(jìn)制的01010101,RS232和TTL的區(qū)別如下;

RS485

RS485是差分信號(hào)進(jìn)行串行傳輸;

  • 邏輯1以兩線間的電壓差為 +(2~6)V表示;
  • 邏輯"0"以兩線間的電壓差為 -(2~6)V表示;

在工業(yè)通信中,使用RS485比較多,因?yàn)镽S485是差分信號(hào),可以抑制共模干擾,因此在惡劣的環(huán)境中擁有很好的抗干擾性,比較穩(wěn)定;

6 優(yōu)缺點(diǎn)

沒(méi)有任何通信協(xié)議是完美的,以下是UART的一些利弊,可幫助您確定它們是否適合您的項(xiàng)目需求:

優(yōu)點(diǎn)

  • 通信只需要兩條數(shù)據(jù)線;
  • 無(wú)需時(shí)鐘信號(hào);
  • 有奇偶校驗(yàn)位,方便通信的差錯(cuò)檢查;
  • 只需要接收端和發(fā)送端設(shè)置好數(shù)據(jù)包結(jié)構(gòu),即可穩(wěn)定通信;

缺點(diǎn)

  • 數(shù)據(jù)幀最大支持9位數(shù)據(jù);
  • 不支持多主機(jī)或多從機(jī)的主從系統(tǒng);

?簡(jiǎn)易PID算法的快速掃盲?

?一文教你搞懂C語(yǔ)言的Q格式

??現(xiàn)成輪子OSAL操作系統(tǒng)抽象層的移植

?一招教你單片機(jī)固件快速瘦身

基礎(chǔ)知識(shí) | hex文件格式詳解


—— The End?—


長(zhǎng)按識(shí)別二維碼關(guān)注獲取更多內(nèi)容




免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉