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

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

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

開發(fā)工具

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

技術(shù)支持

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

新品推廣

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

新聞中心

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

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

更新時間: 2020-12-03
閱讀量:26373

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

什么是UART?

“ UART”代表通用異步收發(fā)器。它是微控制器內(nèi)部的硬件外圍設(shè)備。UART的功能是將傳入和傳出的數(shù)據(jù)轉(zhuǎ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ù)傳輸時,使用UART。它是帶有單個發(fā)送器/接收器的廉價通信設(shè)備。它需要一根導(dǎo)線來傳輸數(shù)據(jù),而需要另一根導(dǎo)線來接收數(shù)據(jù)。

UART接口

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

UART框圖

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

UART框圖

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

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

一、UART如何工作?

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

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

基本D觸發(fā)器

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

注意,在這里:

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

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

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

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

步驟1:

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

第2步:

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

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

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


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

步驟1:

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

步驟2:

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

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

(4)協(xié)議格式

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

UART協(xié)議格式

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

(5)傳輸

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

UART傳輸

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

(6)接收幀

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

接收幀

(7)UART接口示例

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

MAX232引腳

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

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

ESP8266與UART接口

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

以下是與PC進行串行通信的步驟。

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)點與缺點

1.優(yōu)點

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

2.缺點

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

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

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

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

單片機開發(fā)方案


米泉市| 阿拉善左旗| 韩城市| 夹江县| 绍兴市| 福建省| 株洲县| 馆陶县| 南江县| 蚌埠市| 常州市| 铜陵市| 德钦县| 大连市| 临清市| 昭苏县| 堆龙德庆县| 太仓市| 西畴县| 嵊泗县| 库尔勒市| 桐梓县| 定陶县| 扶沟县| 西和县| 犍为县| 乐平市| 绥江县| 和硕县| 长垣县| 洛南县| 图片| 定州市| 锡林浩特市| 阜康市| 搜索| 宁波市| 义马市| 新和县| 大城县| 丁青县|