小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

STM32串口通信基本原理

 新用戶25123383 2022-12-19 發(fā)布于江蘇

通信接口背景知識(shí)

設(shè)備之間通信的方式

一般情況下,設(shè)備之間的通信方式可以分成并行通信和串行通信兩種。并行與串行通信的區(qū)別如下表所示。

文章圖片1

串行通信的分類(lèi)

1、按照數(shù)據(jù)傳送方向,分為:

  • 單工:數(shù)據(jù)傳輸只支持?jǐn)?shù)據(jù)在一個(gè)方向上傳輸;
  • 半雙工:允許數(shù)據(jù)在兩個(gè)方向上傳輸。但是,在某一時(shí)刻,只允許數(shù)據(jù)在一個(gè)方向上傳輸,它實(shí)際上是一種切換方向的單工通信;它不需要獨(dú)立的接收端和發(fā)送端,兩者可以合并一起使用一個(gè)端口。
  • 全雙工:允許數(shù)據(jù)同時(shí)在兩個(gè)方向上傳輸。因此,全雙工通信是兩個(gè)單工通信方式的結(jié)合,需要獨(dú)立的接收端和發(fā)送端。
文章圖片2

2、按照通信方式,分為:

  • 同步通信:帶時(shí)鐘同步信號(hào)傳輸。比如:SPI,IIC通信接口。
  • 異步通信:不帶時(shí)鐘同步信號(hào)。比如:UART(通用異步收發(fā)器),單總線。

在同步通訊中,收發(fā)設(shè)備上方會(huì)使用一根信號(hào)線傳輸信號(hào),在時(shí)鐘信號(hào)的驅(qū)動(dòng)下雙方進(jìn)行協(xié)調(diào),同步數(shù)據(jù)。例如,通訊中通常雙方會(huì)統(tǒng)一規(guī)定在時(shí)鐘信號(hào)的上升沿或者下降沿對(duì)數(shù)據(jù)線進(jìn)行采樣。

在異步通訊中不使用時(shí)鐘信號(hào)進(jìn)行數(shù)據(jù)同步,它們直接在數(shù)據(jù)信號(hào)中穿插一些用于同步的信號(hào)位,或者將主題數(shù)據(jù)進(jìn)行打包,以數(shù)據(jù)幀的格式傳輸數(shù)據(jù)。通訊中還需要雙方規(guī)約好數(shù)據(jù)的傳輸速率(也就是波特率)等,以便更好地同步。常用的波特率有4800bps、9600bps、115200bps等。

在同步通訊中,數(shù)據(jù)信號(hào)所傳輸?shù)膬?nèi)容絕大部分是有效數(shù)據(jù),而異步通訊中會(huì)則會(huì)包含數(shù)據(jù)幀的各種標(biāo)識(shí)符,所以同步通訊效率高,但是同步通訊雙方的時(shí)鐘允許誤差小,稍稍時(shí)鐘出錯(cuò)就可能導(dǎo)致數(shù)據(jù)錯(cuò)亂,異步通訊雙方的時(shí)鐘允許誤差較大。

常見(jiàn)的串行通信接口

文章圖片3

STM32串口通信基礎(chǔ)

STM32的串口通信接口有兩種,分別是:UART(通用異步收發(fā)器)、USART(通用同步異步收發(fā)器)。而對(duì)于大容量STM32F10x系列芯片,分別有3個(gè)USART和2個(gè)UART。

嵌入式物聯(lián)網(wǎng)需要學(xué)的東西真的非常多,千萬(wàn)不要學(xué)錯(cuò)了路線和內(nèi)容,導(dǎo)致工資要不上去!

無(wú)償分享大家一個(gè)資料包,差不多150多G。里面學(xué)習(xí)內(nèi)容、面經(jīng)、項(xiàng)目都比較新也比較全!某魚(yú)上買(mǎi)估計(jì)至少要好幾十。

點(diǎn)擊這里找小助理0元領(lǐng)?。?/span>加微信領(lǐng)取資料

文章圖片4
文章圖片5

UART引腳連接方法

  • RXD:數(shù)據(jù)輸入引腳,數(shù)據(jù)接受;
  • TXD:數(shù)據(jù)發(fā)送引腳,數(shù)據(jù)發(fā)送。
文章圖片6

對(duì)于兩個(gè)芯片之間的連接,兩個(gè)芯片GND共地,同時(shí)TXD和RXD交叉連接。這里的交叉連接的意思就是,芯片1的RxD連接芯片2的TXD,芯片2的RXD連接芯片1的TXD。這樣,兩個(gè)芯片之間就可以進(jìn)行TTL電平通信了。

文章圖片7

若是芯片與PC機(jī)(或上位機(jī))相連,除了共地之外,就不能這樣直接交叉連接了。盡管PC機(jī)和芯片都有TXD和RXD引腳,但是通常PC機(jī)(或上位機(jī))通常使用的都是RS232接口(通常為DB9封裝),因此不能直接交叉連接。RS232接口是9針(或引腳),通常是TxD和RxD經(jīng)過(guò)電平轉(zhuǎn)換得到的。故,要想使得芯片與PC機(jī)的RS232接口直接通信,需要也將芯片的輸入輸出端口也電平轉(zhuǎn)換成rs232類(lèi)型,再交叉連接。

經(jīng)過(guò)電平轉(zhuǎn)換后,芯片串口和rs232的電平標(biāo)準(zhǔn)是不一樣的:

  • 單片機(jī)的電平標(biāo)準(zhǔn)(TTL電平):+5V表示1,0V表示0;
  • Rs232的電平標(biāo)準(zhǔn):+15/+13 V表示0,-15/-13表示1。

RS-232通訊協(xié)議標(biāo)準(zhǔn)串口的設(shè)備間通訊結(jié)構(gòu)圖如下:

文章圖片8

所以單片機(jī)串口與PC串口通信就應(yīng)該遵循下面的連接方式:在單片機(jī)串口與上位機(jī)給出的rs232口之間,通過(guò)電平轉(zhuǎn)換電路(如下面圖中的Max232芯片) 實(shí)現(xiàn)TTL電平與RS232電平之間的轉(zhuǎn)換。

文章圖片9

RS232串口簡(jiǎn)介

臺(tái)式機(jī)電腦后面的9針接口就是com口(串口) 在工業(yè)控制 數(shù)據(jù)采集上應(yīng)用廣泛上圖中,最右邊的是串口接口統(tǒng)稱(chēng)為RS232接口,是常見(jiàn)的DB9封裝。

文章圖片10

通信過(guò)程中只有兩個(gè)腳參與通信。

  • 2腳:電腦的輸入RXD
  • 3腳:電腦的輸出TXD 通過(guò)2 ,3 腳就可以實(shí)現(xiàn)全雙工(可同時(shí)收發(fā))的串行異步 通信
  • 5腳:接地

單片機(jī)的P3口是有兩個(gè)復(fù)用接口RXD 和TXD。這是單片機(jī)進(jìn)行串行通信的收發(fā)口,連接應(yīng)該錯(cuò)位的對(duì)應(yīng)到電腦的TDX RDX上。注意:?jiǎn)纹瑱C(jī)和RS232的電平標(biāo)準(zhǔn)是不一樣的。

單片機(jī)的電平標(biāo)準(zhǔn) TTL電平 :+5V表示1 0V表示0。

RS232的電平標(biāo)準(zhǔn) +15/+13 V表示1 -15/-13 表示0。

所以 單片機(jī)與電腦串口通信就應(yīng)該遵循下面的連接方式:

在單片機(jī)與上位機(jī)給出的rs232口之間 通過(guò)電平轉(zhuǎn)換電路(最上面圖中的Max232芯片) 實(shí)現(xiàn)TTL電平與RS232電平之間的轉(zhuǎn)換,PC串口與單片機(jī)串口連接方式圖:

文章圖片11

注意這兩個(gè)DB9:DB91是在電腦上的 DB92是在單片機(jī)實(shí)驗(yàn)板上焊接著的。

這里的交叉連接的意思是 DB91的RXD連著DB92的TXD。

DB92的RXD連著DB91的TXD這樣交叉著連接,如果電腦沒(méi)有RS232口 只有USB口,可以用串口轉(zhuǎn)接線轉(zhuǎn)出串口,如下圖所示。

文章圖片12

這個(gè)時(shí)候在電腦上位機(jī)上需要安裝串口驅(qū)動(dòng)程序。

注意,這個(gè)驅(qū)動(dòng)程序驅(qū)動(dòng)的是PL2303芯片(在上圖的大頭里面) 使得RS232信息轉(zhuǎn)換成USB信息。

下圖為上圖的內(nèi)部結(jié)構(gòu):

文章圖片13

用串口通信比USB簡(jiǎn)單,因?yàn)榇谕ㄐ艣](méi)有協(xié)議,使用方便簡(jiǎn)單。

STM32的UART特點(diǎn)

  • 全雙工異步通信;
  • 分?jǐn)?shù)波特率發(fā)生器系統(tǒng),提供精確的波特率。發(fā)送和接受共用的可編程波特率,最高可達(dá)4.5Mbits/s;
  • 可編程的數(shù)據(jù)字長(zhǎng)度(8位或者9位);
  • 可配置的停止位(支持1或者2位停止位);
  • 可配置的使用DMA多緩沖器通信;
  • 單獨(dú)的發(fā)送器和接收器使能位;
  • 檢測(cè)標(biāo)志:
  • ① 接受緩沖器
  • ②發(fā)送緩沖器空
  • ③傳輸結(jié)束標(biāo)志;
  • 多個(gè)帶標(biāo)志的中斷源,觸發(fā)中斷;
  • 其他:校驗(yàn)控制,四個(gè)錯(cuò)誤檢測(cè)標(biāo)志。

串口通信過(guò)程

文章圖片14

STM32中UART參數(shù)

串口通訊的數(shù)據(jù)包由發(fā)送設(shè)備通過(guò)自身的TXD接口傳輸?shù)浇邮赵O(shè)備的RXD接口,通訊雙方的數(shù)據(jù)包格式要規(guī)約一致才能正常收發(fā)數(shù)據(jù)。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多