當前位置:首頁 > 單片機 > 單片機
[導讀]初學stm32,初次接觸USART串口通信。對USART通信硬件原理的個人總結(jié)。從MCU(Micro Controller Unit,也就是ST芯片)出來的TTL電平經(jīng)過電平轉(zhuǎn)換芯片轉(zhuǎn)化為USB電平,從而實現(xiàn)與PC的通信。USART(Universal Synchronous

初學stm32,初次接觸USART串口通信。

對USART通信硬件原理的個人總結(jié)。從MCU(Micro Controller Unit,也就是ST芯片)出來的TTL電平經(jīng)過電平轉(zhuǎn)換芯片轉(zhuǎn)化為USB電平,從而實現(xiàn)與PC的通信。

USART(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/異步串行接收/發(fā)送器。

這邊只作異步通信說,異步通信與同步通信的主要區(qū)別區(qū)別是時鐘,所以這邊的SLCK是關閉的。USART總共有TX、RX、nRTS、nCTS、SCLK這5個外接引腳(框圖中的SW_RX在內(nèi)部,n表示低電平有效)。在學習與PC上位機通信時,是關閉硬件流控制模式的,所以異步通信只涉及到TX(Transmit)和RX(Receive)這兩個引腳。

大致思路:數(shù)據(jù)由軟件傳給發(fā)送數(shù)據(jù)寄存器USART_DR(TRD),判斷TC(Transmit complete,發(fā)送完成)是否置1。若置1,表示發(fā)送移位寄存器發(fā)送完成,發(fā)送數(shù)據(jù)寄存器中的數(shù)據(jù)發(fā)送到發(fā)送移位寄存器開始發(fā)送,判斷TXE(Transmit data register empty,發(fā)送數(shù)據(jù)寄存器為空),讀取下一個數(shù)據(jù)到TDR;若TC為0,則等待。TC置0由軟件序列(讀取USART_SR寄存器,然后寫入USART_DR寄存器),也可以向該位寫“”0“”實現(xiàn)。硬件復位時,TC由硬件置1。

接收數(shù)據(jù)時,數(shù)據(jù)傳入接收移位寄存器,再傳入讀取數(shù)據(jù)寄存器,這時RXNE(Read data register not empty,讀取數(shù)據(jù)寄存器不為空)置1,可產(chǎn)生中斷標志RXNEIE。

數(shù)據(jù)格式:1位起始位,8位數(shù)據(jù)位(USART_CR1,控制寄存器1中的位12-M置0),無校驗位(USART_SR,狀態(tài)寄存器中位1-PE置0——無奇偶校驗錯誤),1位停止位(USART_CR2,控制寄存器2中位13:12-STOP賦值00)。因為是開發(fā)板與PC機之間的通信,距離短,通信環(huán)境好,所以不設置奇偶校驗。

使用的是USART1,TX選擇的是PA9,RX選擇的是PA10。

代碼流程:1、初始化 a、打開外設時鐘(如果想使用任何外設,都要先使能時鐘),打開掛載到AHB1上的GPIOA和掛載到APB2上的USART1的時鐘,調(diào)用固件庫函數(shù)RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE)和RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE)

b、初始化串口相關的GPIO口,對GPIO_InitTypeDef GPIO_InitStruct結(jié)構(gòu)體進行賦值,再通過GPIO_Init(GPIOA,&GPIO_InitStruct)映射給寄存器

c、配置選擇復用功能,調(diào)用固件庫函數(shù)GPIO_PinAFConfig(形參,形參,形參)確定引腳的復用功能

d、初始化串口,USART初始化結(jié)構(gòu)體,設置波特率、數(shù)據(jù)位長度、停止位、校驗位選擇、硬件流控制模式選擇、USART模式控制(使能接收/發(fā)送),最后通過USART_Init(...)完成配置

e、如果需要中斷執(zhí)行服務,則初始化NVIC(嵌套向量中斷控制器),若不需要,則跳過

f、使能串口,調(diào)用USART_Cmd(.....)使能USART1

2、編寫數(shù)據(jù)發(fā)送函數(shù),由于USART_DR只有8位有效,所以這里分為字節(jié)發(fā)送、雙字節(jié)發(fā)送、字符串發(fā)送、數(shù)組發(fā)送,這四種發(fā)送均基于固件庫函數(shù)USART_SendData(...),在發(fā)一個字節(jié)時,判斷TXE是否為1,若為1,則準備發(fā)送下一個數(shù)據(jù)至發(fā)送數(shù)據(jù)寄存器;若為0,則等待。獲取中斷狀態(tài)位的固件庫函數(shù)為ITStatus USART_GetITStatus(...),最后可以加以判斷TC是否為1,即判斷發(fā)送是否完成。

3、編寫數(shù)據(jù)接收函數(shù),調(diào)用固件庫函數(shù)USART_ReceiveData(...)獲取最新的USARTx的數(shù)據(jù)。判斷RXNE,為1表示接收完成,為0表示未接收數(shù)據(jù),所以數(shù)據(jù)接收函數(shù)的內(nèi)容應該在判斷RXNE為1的條件下編寫。

4、main()函數(shù)調(diào)用即可。

根據(jù)野火教程,參考手冊,新手理解,純粹為個人重新回憶一遍。若有不對,還請指出,若寫的不好,好多見諒。

作為新手,還有諸多問題不懂,1、如果設置奇偶校驗,那接收方是不是應該要處理?如何處理?如果說單片機與PC通信是這樣,那單片機與單片機呢?

2、發(fā)送8位的數(shù)據(jù)要寫一個函數(shù),發(fā)送16位的又要寫一個函數(shù),發(fā)送數(shù)組只能發(fā)送8字節(jié)類型的數(shù)組,可能是我認識還不夠,對我來說是不明白。


本站聲明: 本文章由作者或相關機構(gòu)授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉