《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > STM32串口多機通信
STM32串口多機通信
摘要: STM32 的UART數據寄存器是9位,數據傳輸先傳低位(LSB)--實際應用發現9位數據大時候有丟包錯包問題??利用USART可以進行多機處理器通信,其原理就是使從機處于靜默模式,由主機在需要的時候發送指令喚醒從機,并傳輸數據。STM
關鍵詞: STM32 UART 多機通信
Abstract:
Key words :

 STM32UART數據寄存器是9位,數據傳輸先傳低位(LSB)

--實際應用發現9位數據大時候有丟包錯包問題??

利用USART可以進行多機處理器通信,其原理就是使從機處于靜默模式,由主機在需要的時候發送指令喚醒從機,并傳輸數據。STM32靜默模式特點:1、所有接收狀態位都不會被設置;2、所有的接收中斷都被禁止;3、USART_CR1寄存器中的RWU位被置1,RUW可以硬件自動控制或者在某些條件下由軟件寫。

連接方法很簡單,主機的TX輸出與從機的RX端口直接相連,從機TX端口要經過與門與主機RX端口連接。

多機通信方式有2種:空閑幀喚醒和地址喚醒。

空閑幀喚醒可以同時喚醒所有從機,在從機處于靜默模式時發送空閑幀(即所有位均為1的數據),喚醒多個從機,實現多個從機同步。

地址喚醒可以喚醒單個從機,從機靜默時發送地址幀,從機自動對比地址,地址配對正確則該從機喚醒,否則繼續進入靜默。這樣只有被尋址者才被激活,來接收數據,減少由未被尋址的接收機器參與帶來的多余的USART服務開銷。這種模式下,MSB為1的字節被認為是地址,否則被認為是數據(MSB一般為數據傳送的最高位,8位傳送則MSB為第八位;9位傳送則MSB為第九位)。在一個地址字節中,目標接收者的地址放在低4位。這4位會被接收器拿來和設置在USART_CR2寄存器中ADD位中的自身地址比較。當接收到一個和設置地址相匹配的地址字符時,RWU被清除,后面的字節將正常接收。因為RWU位已經被清除,RXEN位會因為接收到地址符被置1。當從機再次接收到地址符,如若地址不匹配則從機再次進入靜默模式。

程序實際編寫時可以注意以下3部分的設置:

一、設置靜默模式:

函數原形

void USART_WakeUpConfig(USART_TypeDef* USARTx, u16 USART_WakeUp)

其中USART_WakeUp:USART的喚醒方式:

1、USART_WakeUp_IdleLine 空閑總線喚醒

2、USART_WakeUp_AddressMark 地址標記喚醒

二、地址喚醒中地址設置:

函數原形

void USART_SetAddress(USART_TypeDef* USARTx, u8 USART_Address)

其中USART_Address:是設置USART 節點的地址。

例如:USART_SetAddress(USART2, 0x5);

三、是否進入靜默:

函數原形

void USART_ReceiverWakeUpCmd(USART_TypeDef* USARTx, FunctionalState Newstate)

其中NewState: USART 靜默模式的新狀態這個參數可以?。篍NABLE或者DISABLE。

Address mark detection (WAKE=1)

In this mode, bytes are recognized as addresses if their MSB is a ‘1 else they are

considered as data. In an address byte, the address of the targeted receiver is put on the 4

LSB. This 4-bit word is compared by the receiver with its own address which is programmed

in the ADD bits in the USART_CR2 register.

The USART enters mute mode when an address character is received which does not

match its programmed address. In this case, the RWU bit is set by hardware. The RXNE flag

is not set for this address byte and no interrupt nor DMA request is issued as the USART

would have entered mute mode.

It exits from mute mode when an address character is received which matches the

programmed address. Then the RWU bit is cleared and subsequent bytes are received

normally. The RXNE bit is set for the address character since the RWU bit has been cleared.

The RWU bit can be written to as 0 or 1 when the receiver buffer contains no data (RXNE=0

in the USART_SR register). Otherwise the write attempt is ignored.

Bit 1 RWU: Receiver wakeup

This bit determines if the USART is in mute mode or not. It is set and cleared by software

and can be cleared by hardware when a wakeup sequence is recognized.

0: Receiver in active mode

1: Receiver in mute mode

Note: 1: Before selecting Mute mode (by setting the RWU bit) the USART must first receive a

data byte, otherwise it cannot function in Mute mode with wakeup by Idle line detection.

2: In Address Mark Detection wakeup configuration (WAKE bit=1) the RWU bit cannot

be modified by software while the RXNE bit is set.

Bit 11 WAKE: Wakeup method

This bit determines the USART wakeup method, it is set or cleared by software.

0: Idle Line

1: Address Mark

“logically ANDed ” 指的是邏輯上的關系。某些情況下,不需要另外加與門電路。

比如:板上有3個STM32,1主2從,中間未加電平變換芯片(直連),從機的發送腳都配置成open drain輸出并帶上拉,這種情況下2個從STM32芯片的TX腳可以 直接連到主STM32芯片的RX腳。

如果用了電平變換芯片比如MAX232,一般需要另外加與門電路。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一区二区三区高清不卡| 亚洲第一免费播放区| 国产亚洲成av人在线观看导航 | 欧美一区二区免费| 一区二区不卡在线视频 午夜欧美不卡在| 久久成人一区二区| 性色av一区二区三区红粉影视| 99re6这里只有精品| 亚洲国产视频一区| 在线观看视频免费一区二区三区| 国产一区视频在线看| 国产精品美女久久久| 欧美日韩综合在线| 欧美午夜精品理论片a级按摩| 欧美日韩国产影院| 欧美日韩精品免费看| 欧美激情综合亚洲一二区| 浪潮色综合久久天堂| 久久这里只有精品视频首页| 欧美在线网址| 久久久精品一区二区三区| 久久大综合网| 久久爱www| 久久九九精品99国产精品| 久久久久久久尹人综合网亚洲| 久久xxxx| 久久影视精品| 欧美高清一区二区| 欧美日韩免费一区二区三区视频 | 欧美视频一区| 国产精品男女猛烈高潮激情| 国产精品女主播一区二区三区| 国产精品久久久久77777| 国产精品日韩欧美一区二区三区| 国产精品免费福利| 国产一区在线观看视频| 在线免费观看日本欧美| 亚洲国产精品成人综合色在线婷婷| 在线观看国产精品淫| 亚洲黄一区二区| 一本大道久久a久久精品综合| 中日韩高清电影网| 香蕉久久夜色精品国产| 亚洲国产精彩中文乱码av在线播放| 亚洲精品一二区| 这里只有精品在线播放| 性欧美暴力猛交另类hd| 久久九九热re6这里有精品| 美女脱光内衣内裤视频久久影院 | 欧美亚洲免费在线| 久久夜色撩人精品| 欧美欧美天天天天操| 欧美日韩影院| 国产亚洲二区| 亚洲精品久久久久中文字幕欢迎你| 一本色道久久88综合日韩精品| 亚洲欧美日韩精品综合在线观看| 久久精品国产视频| 亚洲看片免费| 欧美一区二区三区在线观看视频| 久久久久国内| 欧美久久一区| 国产亚洲免费的视频看| 91久久精品国产91久久| 亚洲一区二区三区高清| 亚洲高清激情| 亚洲永久网站| 免费日韩av电影| 国产精品成人免费| 黄色精品网站| 亚洲网在线观看| 亚洲第一久久影院| 亚洲在线免费| 免费久久99精品国产自| 国产精品久久97| 精品成人乱色一区二区| 亚洲午夜精品| 亚洲精品你懂的| 欧美有码在线观看视频| 欧美另类视频在线| 国语对白精品一区二区| 亚洲一区二区影院| 99精品国产在热久久婷婷| 久久久www成人免费无遮挡大片 | 美国成人直播| 国产亚洲毛片| 亚洲四色影视在线观看| 日韩一区二区精品| 老巨人导航500精品| 国产区亚洲区欧美区| 一区二区日韩| 夜夜嗨av色一区二区不卡| 麻豆av福利av久久av| 国产拍揄自揄精品视频麻豆| 一本一本a久久| 99ri日韩精品视频| 欧美www在线| 激情久久中文字幕| 欧美一区国产二区| 亚洲欧美一区二区三区极速播放| 欧美顶级大胆免费视频| 国产一区二区三区久久| 亚洲一区日韩在线| 亚洲乱码久久| 欧美99久久| 国产区二精品视| 99精品欧美一区二区三区 | 亚洲午夜av在线| 美女视频黄a大片欧美| 国产精品免费观看视频| 亚洲经典一区| 久久国产精品72免费观看| 亚洲一二三区视频在线观看| 欧美日韩国产在线播放| 一区二区亚洲欧洲国产日韩| 亚洲女女做受ⅹxx高潮| 一区二区三区视频观看| 免费一区二区三区| 国产一区二区主播在线| 亚洲午夜精品福利| 一区二区三区欧美亚洲| 欧美不卡视频| 激情欧美一区二区| 亚洲激情亚洲| 久久另类ts人妖一区二区| 国产精品一级在线| 一区二区精品在线观看| 亚洲精品久久久蜜桃| 欧美一区二区三区免费看| 国产精品视频一二三| 一本色道久久综合亚洲91| 亚洲乱码国产乱码精品精98午夜| 久久久噜噜噜久久| 国产日韩一区二区三区| 亚洲免费在线观看| 亚洲尤物视频在线| 国产美女搞久久| 亚洲主播在线| 亚洲一区二区三区在线看| 欧美日韩不卡一区| 亚洲黄色在线看| 亚洲国产91色在线| 久久影院午夜论| 国内偷自视频区视频综合| 午夜精品短视频| 亚洲一二三区精品| 国产精品一区二区三区免费观看| 99国产精品久久久久久久久久 | 另类图片国产| 伊人久久久大香线蕉综合直播| 欧美中文字幕在线| 久久久久久精| 伊大人香蕉综合8在线视| 久久aⅴ国产紧身牛仔裤| 欧美国产综合一区二区| 亚洲国产欧美日韩另类综合| 亚洲精品国精品久久99热| 欧美国产激情| 亚洲美女在线观看| 欧美一区二区三区婷婷月色 | 国产精品亚洲综合色区韩国| 亚洲午夜在线观看| 性欧美精品高清| 国产精品影视天天线| 欧美亚洲一区二区在线| 久久久一区二区| 在线观看一区欧美| 夜夜夜精品看看| 国产精品成人在线观看| 亚洲一级黄色| 欧美一区二区视频在线观看| 精东粉嫩av免费一区二区三区| 亚洲激情视频网站| 欧美另类高清视频在线| 一本色道**综合亚洲精品蜜桃冫| 亚洲一区二区不卡免费| 国产尤物精品| 亚洲理伦电影| 欧美系列精品| 性做久久久久久| 老司机免费视频一区二区三区 | 亚洲电影第1页| 欧美精品乱人伦久久久久久| 一区二区日韩伦理片| 欧美一区二区性| 在线不卡视频| 亚洲午夜女主播在线直播| 国产精品视频最多的网站| 久久精品日韩| 欧美日韩高清在线观看| 宅男噜噜噜66国产日韩在线观看| 欧美一二三区在线观看| 影音先锋中文字幕一区二区| 99国产欧美久久久精品| 国产精品乱码久久久久久| 久久精品人人做人人综合| 国产精品美女诱惑| 亚洲国产视频a| 欧美久久久久免费| 欧美一级专区|