色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

UART的Rx和Tx引腳如何互換 電平如何反轉(zhuǎn)

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 作者:黃工的嵌入式技術 ? 2020-02-26 16:42 ? 次閱讀

今天給大家分享關于STM32關于UART的一些新特性,主要針對較新系列STM32(如:STM32H7、G0、G4等)的UART,可通過軟件改變Rx和Tx引腳、電平反轉(zhuǎn)、高低反序、介紹超時等。

支持RXD和TXD管腳互換

有些時候,我們在外接RS232芯片時,可能會將RXD和TXD兩根線接反。這類低級錯誤,一般是老司機才會犯。

如果大家知道USART的TXD和RXD管腳可以互換,那么在連接外設RS232芯片時,如果發(fā)生錯誤,就不必再修改硬件,只需直接在軟件中將RXD和TXD的管腳反轉(zhuǎn)過來即可修正錯誤。

參考上圖,設置SWAP位,即可將RXD和TXD管腳互換。

支持接收和發(fā)送的電平極性反轉(zhuǎn)

第二個新特性:Tx和Rx電平極性反轉(zhuǎn)。 通常默認串口電平是高電平為邏輯1,低電平為邏輯0。而在STM32的USART新特性中是可以將高電平設置為邏輯0,低電平設置為邏輯1的。 這一特性,讓我們在一些特殊的場景下靈活使用,如:USART外接了反相器時就可以直接使用。 在數(shù)據(jù)接收發(fā)送寄存器中,數(shù)據(jù)也是可以反轉(zhuǎn)的,原來的0變?yōu)?,原來的1變?yōu)?,這和電平極性反轉(zhuǎn)是類似。需要特別注意的是,在極性反轉(zhuǎn)的時候,起始位和結束位也都反轉(zhuǎn)了,所有的信號電平都反轉(zhuǎn);而在數(shù)據(jù)寄存器中只反轉(zhuǎn)了數(shù)據(jù)位,其中也包含了校驗位,沒有反轉(zhuǎn)信號的起始位和結束位的極性。

參考上圖,在USART_CR2寄存器中TXINV、RXINV和DATAINV位來進行設置。

支持數(shù)據(jù)高位與低位反序發(fā)送或接收

第三個新特性:發(fā)送和接收數(shù)據(jù)時,可在寄存器中設置是先發(fā)低位還是先發(fā)高位。 默認的配置都是先發(fā)送或接收低位的信號(bit 0),實際應用中,通過USART_CR2中的MSBFIRST設置后,也可以讓USART先發(fā)送或接收高位信號(bit 7/8),這一點在對數(shù)據(jù)進行反序的時候會經(jīng)常用到它。

我們可以考慮這種情況,如果需要把串口接收到的數(shù)據(jù)先進行反序操作之后,再進行計算,那這個硬件的功能就可以幫助我們節(jié)省很多軟件的工作量。

USART支持DMA傳輸

最后,STM32的USART都是支持DMA的,這一點有利于做數(shù)據(jù)的連續(xù)發(fā)送和數(shù)據(jù)的緩沖接收。在某些STM32產(chǎn)品系列中,如STM32F4和H7系列具有專門的串口FIFO,這就可以用來做串口喚醒,先讓MCU進入到Sleep模式,當接收到一個完整的數(shù)據(jù)包,這個數(shù)據(jù)包可能是100個字節(jié)或者200個字節(jié),之后再喚醒單片機,這樣既可以做到不丟數(shù)據(jù)又可以降低MCU的喚醒頻率。

另外,USART的接收還具有超時功能,可以人為設定一個時間,在USART的RTOR寄存器中進行設置,當串口接收的數(shù)據(jù)幀之間超過了這個設定值,就會引發(fā)一個超時中斷,串口中會有一個叫RTOF的標志位來顯示發(fā)生的超時事件,我們通過這個中斷中應用的代碼就可以知道串口的數(shù)據(jù)發(fā)生了中斷現(xiàn)象,近似可認為對方的數(shù)據(jù)已經(jīng)發(fā)送完成。這種方式,在串口上層協(xié)議的開發(fā)中,有很多應用場景。

USART 新特性小結

支持RXD和TXD管腳的互換

支持管腳上的電平邏輯反轉(zhuǎn)和數(shù)據(jù)寄存器中的邏輯反轉(zhuǎn)

支持數(shù)據(jù)高位與低位反序發(fā)送或接收,既可以先發(fā)送或接收低位,也可以先發(fā)送或接收高位

支持接收數(shù)據(jù)的超時功能,并且每個USART都可以支持DMA傳輸

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2271

    文章

    10923

    瀏覽量

    357108
  • 引腳
    +關注

    關注

    16

    文章

    1219

    瀏覽量

    50789
  • uart
    +關注

    關注

    22

    文章

    1243

    瀏覽量

    101645
收藏 人收藏

    評論

    相關推薦

    光纖的txrx怎么接

    光纖的TX(發(fā)送)和RX(接收)端口的連接方法主要取決于所使用的設備和光纖收發(fā)器的類型。以下是一些基本的連接步驟和注意事項: 一、連接步驟 識別端口: TX端口:用于發(fā)送數(shù)據(jù)的光纖端口。 RX
    的頭像 發(fā)表于 10-25 10:23 ?1966次閱讀

    stm32芯片 TXRX引腳出現(xiàn)對地短路的情況

    最近在做某個項目的時候發(fā)現(xiàn)stm32芯片中的TXRX引腳出現(xiàn)了對地短路的情況,目前在使用過程出現(xiàn)了2次這樣的問題。 如下圖所示,stm32的TX
    發(fā)表于 09-26 10:54

    通過UART0連接到esp8266與服務器進行通信,報UART Rx溢出和消息RX OVF錯誤怎么解決?

    buffer length of tx buffer #define UART_RX_BUFFER_SIZE 768 //Ring buffer length of rx buffer 但是,這無助于阻止
    發(fā)表于 07-11 08:05

    UART0和UART1之間是否共享Tx緩沖區(qū)?

    ); /****************************************************************************** * FunctionName : uart_config * Description: Internal used function *
    發(fā)表于 07-11 07:50

    在ESP Wemos D1 Mini Pro上將FTDI連接到RXTX遇到的疑問求解

    我在 ESP Wemos D1 Mini Pro 上將 FTDI 連接到我的 RXTX。我必須物理斷開 Wemos D1 上的 RX 引腳才能刷新新固件。我的猜測是
    發(fā)表于 07-10 07:29

    ESP32C3想修改UART0的UART_TX_SIZE為2該如何操作?

    在ESP32C3的技術參考手冊中,UART的RAM共分為4個Block,每個Block128個字節(jié),分別給UART0/1中不同的TX/RX,其中提到了可以修改幾個空間的大小。這個大小在
    發(fā)表于 06-14 06:32

    ESP32可以直接寫入RX的高低電平,和直接讀取TX的高低電平嗎?

    頭文件中,有沒有不指定RX TX引腳的情況下,直接寫入RX的高低電平,和直接讀取TX的高低
    發(fā)表于 06-07 08:20

    請問cyUSB3014 USB3.0的TXRX可以互換嗎?

    親愛的各位請問cyUSB3014 USB3.0的TXRX可以互換嗎?
    發(fā)表于 05-29 06:44

    CAN中斷對RXTX無效怎么解決?

    ;transmissionCompletedEnabled\" for TX \"rxFifo0NewMessageEnabled\" for RX 我在中央處理器寄存器上檢查過,確實已啟用。 以下是我的 TX 中斷配置
    發(fā)表于 05-22 07:42

    SPI DMA接收數(shù)據(jù)時,串口會先收到IRQ_TX之后才是IRQ_RX為什么?

    在MOSI上發(fā)送一段0xff,理論上MOSI電平應該不變??? DMA接收完成后(SCK不變了),串口會先收到IRQ_TX之后才是IRQ_RX,也就是說同時進入了DMA1 的2和3通道的中斷服務函數(shù) 這是為什么???
    發(fā)表于 04-15 07:43

    兩片STM32的CAN接口,可以直接用TXRX引腳連接正常通訊嗎?

    兩片 STM32的CAN接口,可以直接用TXRX引腳連接(不接CAN收發(fā)器芯片)正常通訊嗎
    發(fā)表于 04-01 07:38

    ELF 1技術貼|應用層更改引腳復用的方法

    在嵌入式系統(tǒng)設計中,引腳復用功能通常是通過設備樹(DeviceTree)預先配置設定的。出廠的設備樹中UART2_TX_DATA和UART2_RX_DATA兩個引腳被復用成了
    的頭像 發(fā)表于 03-27 14:14 ?537次閱讀
    ELF 1技術貼|應用層更改<b class='flag-5'>引腳</b>復用的方法

    STM32F407VET6串口5的三個引腳TX RX GND跟STM32F103VET6串口5的RX TX GND三個引腳相連后燒毀的原因?

    我把STM32F407VET6芯片的串口5的三個引腳TX RX GND分別跟STM32F103VET6串口5的RX TX GND 三個
    發(fā)表于 03-26 08:03

    CYT2B9如何控制UART RxTx?

    嗨 我正在使用 CYT2B9。 硬件中的 UART 線路由 1 根導線組成。 因此,UART 通信是在 MCU 的 TX/RX 引腳短路的情
    發(fā)表于 03-05 07:51

    HM-10 RX引腳是否接收要傳輸?shù)臄?shù)據(jù)?

    我設法讓自己感到非常困惑。HM-10(BLE模塊)有一個RX和一個TX引腳,它們連接到Arduino,如下所示(我認為), Arduino的TX
    發(fā)表于 01-31 06:23
    主站蜘蛛池模板: 黄色三级视频网站 | 久久囯产精品777蜜桃传媒 | 国产亚洲日韩在线播放不卡 | 男生互捏jiji的故事 | 亚洲成人免费 | 久久草福利自拍视频在线观看 | 久久精品久久精品 | 少妇无码吹潮久久精品AV网站 | 麻豆精品传媒卡一卡二传媒短视频 | 欧美牲交视频免费观看K8经典 | 国产精品亚洲在钱视频 | 成人a视频在线观看 | 色婷婷欧美在线播放内射 | 麻豆AV无码蜜臀AV色哟 | 忘忧草在线社区WWW日本-韩国 | 欧美jizz19性欧美 | 无码乱人伦一区二区亚洲一 | 亚洲综合中文字幕无线码 | 无码人妻丰满熟妇区五十路久久 | 麻豆精品传媒2021网站入口 | 97精品国产亚洲AV高清 | 樱花动漫成人隐藏入口 | 忘忧草下载 | 中文字幕 人妻熟女 | 蜜桃成熟时2电影免费观看d | 中文免费视频 | 亚洲视频在线免费看 | 久久青青热 | 亚洲一级电影 | 哪灬你的鸣巴好大 | 国产精品第十页 | 一个人的视频全免费在线观看www | 国产精品成人自拍 | 在线播放国产视频 | 嫩草影院久久99 | 欧美色图14p | 精品99久久久久成人网站 | 欧美国产精品主播一区 | 琪琪SEE色原网色原网站18 | 麻豆国产精品va在线观看约 | 国产精品久久久久久人妻精品流 |