中文字幕无码不卡一区二区三区_少妇被又大又粗又爽毛片久久黑人_91精品国产在热久久无毒不卡_久久久久久亚洲综合网站

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開(kāi)發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開(kāi)發(fā)工具

提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

什么是UART通信協(xié)議?單片機(jī)UART工作原理?

更新時(shí)間: 2020-12-03
閱讀量:26320

UART(通用異步收發(fā)器),這是用于全雙工串行通信的最常見(jiàn)協(xié)議。它是設(shè)計(jì)用于執(zhí)行異步通信的單個(gè)LSI(大規(guī)模集成)芯片。該設(shè)備將數(shù)據(jù)從一個(gè)系統(tǒng)發(fā)送到另一系統(tǒng)。在本文中,英銳恩單片機(jī)開(kāi)發(fā)工程師將介紹UART通信的基礎(chǔ)知識(shí)以及UART的工作原理。

什么是UART?

“ UART”代表通用異步收發(fā)器。它是微控制器內(nèi)部的硬件外圍設(shè)備。UART的功能是將傳入和傳出的數(shù)據(jù)轉(zhuǎn)換為串行二進(jìn)制流。使用串行到并行轉(zhuǎn)換將從外圍設(shè)備接收的8位串行數(shù)據(jù)轉(zhuǎn)換為并行形式,使用串行到并行轉(zhuǎn)換將從CPU接收的并行數(shù)據(jù)轉(zhuǎn)換為并行形式。該數(shù)據(jù)以調(diào)制形式存在,并以定義的波特率傳輸。

為什么要使用UART?

諸如SPI(串行外圍接口)和USB(通用串行總線)之類的協(xié)議用于快速通信。當(dāng)不需要高速數(shù)據(jù)傳輸時(shí),使用UART。它是帶有單個(gè)發(fā)送器/接收器的廉價(jià)通信設(shè)備。它需要一根導(dǎo)線來(lái)傳輸數(shù)據(jù),而需要另一根導(dǎo)線來(lái)接收數(shù)據(jù)。

UART接口

可以使用RS232-TTL轉(zhuǎn)換器或USB-TTL轉(zhuǎn)換器將其與PC(個(gè)人計(jì)算機(jī))接口。RS232和UART之間的共同點(diǎn)是它們都不需要時(shí)鐘來(lái)發(fā)送和接收數(shù)據(jù)。Uart幀由1個(gè)起始位,1個(gè)或2個(gè)停止位以及一個(gè)用于串行數(shù)據(jù)傳輸?shù)钠媾夹r?yàn)位組成。

UART框圖

UART由以下核心組件組成。它們是發(fā)送器和接收器。發(fā)送器由發(fā)送保持寄存器,發(fā)送移位寄存器和控制邏輯組成。類似地,接收器由接收保持寄存器,接收器移位寄存器和控制邏輯組成。通常,發(fā)送器和接收器都配有波特率發(fā)生器。

UART框圖

波特率發(fā)生器生成發(fā)送器和接收器必須發(fā)送/接收數(shù)據(jù)的速度。發(fā)送保持寄存器包含要發(fā)送的數(shù)據(jù)字節(jié)。發(fā)送移位寄存器和接收移位寄存器將這些位向左或向右移位,直到發(fā)送/接收一個(gè)字節(jié)的數(shù)據(jù)為止。

除了這些,還提供了讀或?qū)懣刂七壿嬕愿嬷螘r(shí)進(jìn)行讀/寫(xiě)。波特率發(fā)生器產(chǎn)生的速度范圍從110 bps(每秒比特)到230400。大多數(shù)情況下,微控制器提供更高的波特率,例如115200和57600,以實(shí)現(xiàn)更快的數(shù)據(jù)傳輸。GPS和GSM等設(shè)備在4800和9600中使用較低的波特率。

一、UART如何工作?

要了解UART的工作原理,您需要了解串行通信的基本功能。簡(jiǎn)而言之,發(fā)送器和接收器使用開(kāi)始位,停止位和定時(shí)參數(shù)相互同步。原始數(shù)據(jù)為并行形式。例如,我們有4位數(shù)據(jù),要將其轉(zhuǎn)換為串行形式,我們需要并行到串行轉(zhuǎn)換器。通常,D觸發(fā)器或鎖存器用于設(shè)計(jì)轉(zhuǎn)換器。

(1)D–觸發(fā)器的工作

基本D觸發(fā)器

D觸發(fā)器也稱為數(shù)據(jù)觸發(fā)器,當(dāng)且僅當(dāng)時(shí)鐘將時(shí)鐘從高態(tài)轉(zhuǎn)換為低電平或從低態(tài)轉(zhuǎn)換為高態(tài)時(shí),才從輸入側(cè)向輸出側(cè)移位一位。同樣,如果要傳輸四位數(shù)據(jù),則??需要4個(gè)觸發(fā)器。

注意,在這里:

“D”代表輸入數(shù)據(jù)。
“CLK”表示時(shí)鐘脈沖。
“Q”表示輸出數(shù)據(jù)。現(xiàn)在,讓我們?cè)O(shè)計(jì)一個(gè)并行到串行和串行到并行轉(zhuǎn)換器。

(2)并行到串行轉(zhuǎn)換

并行到串行轉(zhuǎn)換

級(jí)聯(lián)連接–并行到串行

步驟1:

取4個(gè)觸發(fā)器。觸發(fā)器的數(shù)量等于要發(fā)送的位數(shù)。同樣,將多路復(fù)用器放在每個(gè)觸發(fā)器的前面,但不包括第一個(gè)。放置一個(gè)多路復(fù)用器以合并數(shù)據(jù)并將其轉(zhuǎn)換為串行位。它有兩個(gè)輸入,一個(gè)并行位數(shù)據(jù),另一個(gè)來(lái)自前一個(gè)觸發(fā)器。

第2步:

現(xiàn)在,一次在D個(gè)觸發(fā)器中加載數(shù)據(jù)。它將拉出并行數(shù)據(jù),并移動(dòng)最后一個(gè)觸發(fā)器的最后一位(四個(gè)),然后是第三位,第二位,最后是第一位?,F(xiàn)在,為了將并行數(shù)據(jù)轉(zhuǎn)換為串行形式,使用了串行到并行轉(zhuǎn)換器。

(3)串行到并行轉(zhuǎn)換

串行到并行轉(zhuǎn)換


級(jí)聯(lián)連接–串行到并行轉(zhuǎn)換

步驟1:

取4個(gè)觸發(fā)器。觸發(fā)器的數(shù)量與要發(fā)送的位數(shù)相同。

步驟2:

最初,禁用并行總線。直到所有位都加載后才啟用。將數(shù)據(jù)存儲(chǔ)在第一個(gè)觸發(fā)器的輸入處。現(xiàn)在將時(shí)鐘設(shè)為高電平,這會(huì)將最低有效位移至第二個(gè)觸發(fā)器的輸入和第一個(gè)觸發(fā)器的輸出。同樣,通過(guò)使時(shí)鐘脈沖為高,將所有位一一移位。轉(zhuǎn)換器處于保持狀態(tài),直到所有位都傳輸?shù)捷敵鰹橹埂?br/>
步驟3:

現(xiàn)在,每個(gè)觸發(fā)器都包含一位串行數(shù)據(jù)。同時(shí),所有位都傳送到觸發(fā)器輸出,使能總線。這將使轉(zhuǎn)換器一次發(fā)送所有位。

(4)協(xié)議格式

UART從起始位“0”開(kāi)始通信。起始位啟動(dòng)串行數(shù)據(jù)的傳輸,終止位結(jié)束數(shù)據(jù)事務(wù)。

UART協(xié)議格式

它還具有奇偶校驗(yàn)位(偶數(shù)或奇數(shù))。偶校驗(yàn)位由“0”(偶數(shù)1)表示,奇校驗(yàn)位由“1”(偶數(shù)1)表示。

(5)傳輸

使用單條傳輸線(TxD)完成數(shù)據(jù)傳輸。在這里,“0”被認(rèn)為是空格,而“1”被認(rèn)為是標(biāo)記狀態(tài)。

UART傳輸

發(fā)送器一次發(fā)送一位。發(fā)送一位后,發(fā)送下一位。這樣,所有數(shù)據(jù)位都以預(yù)定義的波特率發(fā)送到接收器。傳輸每個(gè)位會(huì)有一定的延遲。例如,要以9600波特率發(fā)送一個(gè)字節(jié)的數(shù)據(jù),則每個(gè)比特以108微秒的延遲發(fā)送。數(shù)據(jù)添加有奇偶校驗(yàn)位。因此,需要10位數(shù)據(jù)才能發(fā)送7位數(shù)據(jù)。注意:在發(fā)送時(shí),始終首先發(fā)送LSB(最低有效位)。

(6)接收幀

在接收過(guò)程中,RxD線(接收器)用于接收數(shù)據(jù)。

接收幀

(7)UART接口示例

本示例演示了ESP8266 UART與MAX232的接口。但是,在介紹接口細(xì)節(jié)之前,讓我分享一下Max232驅(qū)動(dòng)程序的引腳細(xì)節(jié)。

MAX232引腳

MAX232 IC由5V電源供電,該電源包括一個(gè)電容電壓發(fā)生器,用于驅(qū)動(dòng)232電平電壓。它帶有雙發(fā)送器,也稱為驅(qū)動(dòng)器(TIN,TOUT)和接收器(RIN和ROUT)。

在這里,我使用了內(nèi)置UART的ESP8266(32位微控制器)。ESP8266可以使用AT指令通過(guò)RS232到TTL電平轉(zhuǎn)換器(MAX232)進(jìn)行通信。下圖顯示了ESP8266與PC(個(gè)人計(jì)算機(jī))的連接。

ESP8266與UART接口

通過(guò)通過(guò)PC請(qǐng)求有效的AT命令,WiFi芯片將以確認(rèn)響應(yīng)。我不想深入了解ESP8266,在以后的教程中將對(duì)此進(jìn)行解釋。

以下是與PC進(jìn)行串行通信的步驟。

1.將ESP8266的發(fā)射器(TX)連接到RS232的接收器(TX)到TTL電平轉(zhuǎn)換器(MAX232)和PC的RX。
2.將ESP8266的接收器(RX)連接到PC的TX和TTL轉(zhuǎn)換器的RX。

ESP8266指令

(8)UART與USART

USART是UART的基本形式。從技術(shù)上講,它們是不同的。但是,兩者的定義相同。這些是微控制器外設(shè),可將并行數(shù)據(jù)轉(zhuǎn)換為串行位,反之亦然。

(9)UART的優(yōu)點(diǎn)與缺點(diǎn)

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

UART的優(yōu)點(diǎn)是,它支持使用兩條線的全雙工通信。而且,它不需要外部時(shí)鐘就可以進(jìn)行數(shù)據(jù)通信。它支持使用奇偶校驗(yàn)位進(jìn)行錯(cuò)誤檢查,并且可以輕松更改數(shù)據(jù)長(zhǎng)度。

2.缺點(diǎn)

UART的主要缺點(diǎn)是,它不支持多從機(jī)或多主機(jī)配置。并且,數(shù)據(jù)分組的大小被限制為9位。UART不適合在高能耗下進(jìn)行繁重的串行通信。

(10)應(yīng)用領(lǐng)域

1.串行調(diào)試端口使用UART驅(qū)動(dòng)程序來(lái)打印來(lái)自外部世界的數(shù)據(jù)。
2.我們可以使用它來(lái)向嵌入式設(shè)備發(fā)送命令和從嵌入式設(shè)備接收命令。
3.在通訊GPS,GSM / GPRS調(diào)制解調(diào)器,Wi-Fi芯片等與UART操作。
4.在大型機(jī)訪問(wèn)中用于連接不同的計(jì)算機(jī)。

以上就是英銳恩單片機(jī)開(kāi)發(fā)工程師分享的UART通信協(xié)議與單片機(jī)UART的工作原理。

單片機(jī)開(kāi)發(fā)方案


铜鼓县| 九龙县| 龙游县| 依安县| 罗平县| 花莲市| 调兵山市| 涞源县| 平利县| 保山市| 翁牛特旗| 年辖:市辖区| 渭南市| 海原县| 恩施市| 田林县| 乐都县| 金塔县| 澄迈县| 灵丘县| 虎林市| 马尔康县| 海丰县| 全南县| 石家庄市| 民县| 德格县| 辉南县| 津南区| 遂溪县| 五河县| 福安市| 青铜峡市| 普定县| 同心县| 吉隆县| 盐池县| 伽师县| 潜江市| 望城县| 甘洛县|