chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

第十四章 USART——串口通訊

W55MH32 ? 來源:W55MH32 ? 作者:W55MH32 ? 2025-06-14 16:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

單芯片解決方案,開啟全新體驗(yàn)——W55MH32 高性能以太網(wǎng)單片機(jī)

W55MH32是WIZnet重磅推出的高性能以太網(wǎng)單片機(jī),它為用戶帶來前所未有的集成化體驗(yàn)。這顆芯片將強(qiáng)大的組件集于一身,具體來說,一顆W55MH32內(nèi)置高性能Arm? Cortex-M3核心,其主頻最高可達(dá)216MHz;配備1024KB FLASH與96KB SRAM,滿足存儲(chǔ)與數(shù)據(jù)處理需求;集成TOE引擎,包含WIZnet全硬件TCP/IP協(xié)議棧、內(nèi)置MAC以及PHY,擁有獨(dú)立的32KB以太網(wǎng)收發(fā)緩存,可供8個(gè)獨(dú)立硬件socket使用。如此配置,真正實(shí)現(xiàn)了All-in-One解決方案,為開發(fā)者提供極大便利。

在封裝規(guī)格上,W55MH32 提供了兩種選擇:QFN100和QFN68。

W55MH32L采用QFN100封裝版本,尺寸為12x12mm,其資源豐富,專為各種復(fù)雜工控場(chǎng)景設(shè)計(jì)。它擁有66個(gè)GPIO、3個(gè)ADC、12通道DMA、17個(gè)定時(shí)器、2個(gè)I2C、5個(gè)串口、2個(gè)SPI接口(其中1個(gè)帶I2S接口復(fù)用)、1個(gè)CAN、1個(gè)USB2.0以及1個(gè)SDIO接口。如此豐富的外設(shè)資源,能夠輕松應(yīng)對(duì)工業(yè)控制中多樣化的連接需求,無論是與各類傳感器、執(zhí)行器的通信,還是對(duì)復(fù)雜工業(yè)協(xié)議的支持,都能游刃有余,成為復(fù)雜工控領(lǐng)域的理想選擇。 同系列還有QFN68封裝的W55MH32Q版本,該版本體積更小,僅為8x8mm,成本低,適合集成度高的網(wǎng)關(guān)模組等場(chǎng)景,軟件使用方法一致。更多信息和資料請(qǐng)進(jìn)入http://www.w5500.com/網(wǎng)站或者私信獲取。

此外,本W(wǎng)55MH32支持硬件加密算法單元,WIZnet還推出TOE+SSL應(yīng)用,涵蓋TCP SSL、HTTP SSL以及 MQTT SSL等,為網(wǎng)絡(luò)通信安全再添保障。

為助力開發(fā)者快速上手與深入開發(fā),基于W55MH32L這顆芯片,WIZnet精心打造了配套開發(fā)板。開發(fā)板集成WIZ-Link芯片,借助一根USB C口數(shù)據(jù)線,就能輕松實(shí)現(xiàn)調(diào)試、下載以及串口打印日志等功能。開發(fā)板將所有外設(shè)全部引出,拓展功能也大幅提升,便于開發(fā)者全面評(píng)估芯片性能。

若您想獲取芯片和開發(fā)板的更多詳細(xì)信息,包括產(chǎn)品特性、技術(shù)參數(shù)以及價(jià)格等,歡迎訪問官方網(wǎng)頁:http://www.w5500.com/,我們期待與您共同探索W55MH32的無限可能。

wKgZPGgbOfaANhwzACodXd3sVzg463.png

第十四章 USART——串口通訊

本章參考資料:《W55MH32-參考手冊(cè)》USART章節(jié)。

學(xué)習(xí)本章時(shí),配合《W55MH32-參考手冊(cè)》USART章節(jié)一起閱讀, 效果會(huì)更佳,特別是涉及到寄存器說明的部分。特別說明,本書內(nèi)容是以W55MH32系列控制器資源講解。

1 串口通訊協(xié)議簡介

串口通訊(Serial Communication)是一種設(shè)備間非常常用的串行通訊方式,因?yàn)樗唵伪憬荩虼舜蟛糠蛛娮釉O(shè)備都支持該通訊方式, 電子工程師在調(diào)試設(shè)備時(shí)也經(jīng)常使用該通訊方式輸出調(diào)試信息。

在計(jì)算機(jī)科學(xué)里,大部分復(fù)雜的問題都可以通過分層來簡化。如芯片被分為內(nèi)核層和片上外設(shè);W55MH32標(biāo)準(zhǔn)庫則是在寄存器與用戶代碼之間的軟件層。 對(duì)于通訊協(xié)議,我們也以分層的方式來理解,最基本的是把它分為物理層和協(xié)議層。物理層規(guī)定通訊系統(tǒng)中具有機(jī)械、電子功能部分的特性, 確保原始數(shù)據(jù)在物理媒體的傳輸。協(xié)議層主要規(guī)定通訊邏輯,統(tǒng)一收發(fā)雙方的數(shù)據(jù)打包、解包標(biāo)準(zhǔn)。 簡單來說物理層規(guī)定我們用嘴巴還是用肢體來交流,協(xié)議層則規(guī)定我們用中文還是英文來交流。

下面我們分別對(duì)串口通訊協(xié)議的物理層及協(xié)議層進(jìn)行講解。

1.1 物理層

串口通訊的物理層有很多標(biāo)準(zhǔn)及變種,我們主要講解RS-232標(biāo)準(zhǔn) ,RS-232標(biāo)準(zhǔn)主要規(guī)定了信號(hào)的用途、通訊接口以及信號(hào)的電平標(biāo)準(zhǔn)。

使用RS-232標(biāo)準(zhǔn)的串口設(shè)備間常見的通訊結(jié)構(gòu)見下圖,串口通訊結(jié)構(gòu)圖 :

wKgZO2gu7qOAQciXAAIrDpiSSlY385.png

在上面的通訊方式中,兩個(gè)通訊設(shè)備的“DB9接口”之間通過串口信號(hào)線建立起連接,串口信號(hào)線中使用“RS-232標(biāo)準(zhǔn)”傳輸數(shù)據(jù)信號(hào)。 由于RS-232電平標(biāo)準(zhǔn)的信號(hào)不能直接被控制器直接識(shí)別,所以這些信號(hào)會(huì)經(jīng)過一個(gè)“電平轉(zhuǎn)換芯片”轉(zhuǎn)換成控制器能識(shí)別的“TTL標(biāo)準(zhǔn)”的電平信號(hào),才能實(shí)現(xiàn)通訊。

1.1.1 電平標(biāo)準(zhǔn)

根據(jù)通訊使用的電平標(biāo)準(zhǔn)不同,串口通訊可分為TTL標(biāo)準(zhǔn)及RS-232標(biāo)準(zhǔn),見下表, TTL電平標(biāo)準(zhǔn)與RS232電平標(biāo)準(zhǔn) :

通訊標(biāo)準(zhǔn) 電平標(biāo)準(zhǔn) (發(fā)送端)
5V TTL 邏輯 1:2.4V–5V
邏輯 0:0~0.5V
RS-232 邏輯 1:-15V~-3V
邏輯 0:+3V~+15V

我們知道常見的電子電路中常使用TTL的電平標(biāo)準(zhǔn),理想狀態(tài)下,使用5V表示二進(jìn)制邏輯1,使用0V表示邏輯0; 而為了增加串口通訊的遠(yuǎn)距離傳輸及抗干擾能力,它使用-15V表示邏輯1,+15V表示邏輯0。 使用RS232與TTL電平校準(zhǔn)表示同一個(gè)信號(hào)時(shí)的對(duì)比見下圖,RS-232與TTL電平標(biāo)準(zhǔn)下表示同一個(gè)信號(hào) :

wKgZO2gu7qKAcKijAAHoL5fLRzA894.png

因?yàn)榭刂破饕话闶褂肨TL電平標(biāo)準(zhǔn),所以常常會(huì)使用MAX3232芯片對(duì)TTL及RS-232電平的信號(hào)進(jìn)行互相轉(zhuǎn)換。

1.1.2 RS-232信號(hào)線

在最初的應(yīng)用中,RS-232串口標(biāo)準(zhǔn)常用于計(jì)算機(jī)、路由與調(diào)制調(diào)解器(MODEN,俗稱“貓”)之間的通訊 ,在這種通訊系統(tǒng)中, 設(shè)備被分為數(shù)據(jù)終端設(shè)備DTE(計(jì)算機(jī)、路由)和數(shù)據(jù)通訊設(shè)備DCE(調(diào)制調(diào)解器)。我們以這種通訊模型講解它們的信號(hào)線連接方式及各個(gè)信號(hào)線的作用。

在舊式的臺(tái)式計(jì)算機(jī)中一般會(huì)有RS-232標(biāo)準(zhǔn)的COM口(也稱DB9接口),見下圖,電腦主板上的COM口及串口線 :

wKgZO2gu7qOALEs4AAUDTFo0gIw529.png

其中接線口以針式引出信號(hào)線的稱為公頭,以孔式引出信號(hào)線的稱為母頭。在計(jì)算機(jī)中一般引出公頭接口,而在調(diào)制調(diào)解器設(shè)備中引出的一般為母頭,使用上圖中的串口線即可把它與計(jì)算機(jī)連接起來。通訊時(shí),串口線中傳輸?shù)男盘?hào)就是使用前面講解的RS-232標(biāo)準(zhǔn)調(diào)制的。

在這種應(yīng)用場(chǎng)合下,DB9接口中的公頭及母頭的各個(gè)引腳的標(biāo)準(zhǔn)信號(hào)線接法見下圖,DB9標(biāo)準(zhǔn)的公頭及母頭接法見下表,DB9信號(hào)線說明 :

wKgZPGgu7qKAST9RAAHoL5fLRzA561.png

序號(hào) 名稱 符號(hào) 數(shù)據(jù)方向 說明
1 載波檢測(cè) DCD DTE→DCE Data Carrier Detect,數(shù)據(jù)載波檢測(cè),用于 DTE 告知對(duì)方,本機(jī)是否收到對(duì)方的載波信號(hào)
2 接收數(shù)據(jù) RXD DTE←DCE Receive Data,數(shù)據(jù)接收信號(hào),即輸入。
3 發(fā)送數(shù)據(jù) TXD DTE→DCE Transmit Data,數(shù)據(jù)發(fā)送信號(hào),即輸出。兩個(gè)設(shè)備之間的 TXD 與 RXD 應(yīng)交叉相連
4 數(shù)據(jù)終端 (DTE) 就緒 DTR DTE→DCE Data Terminal Ready,數(shù)據(jù)終端就緒,用于 DTE 向?qū)Ψ礁嬷緳C(jī)是否已準(zhǔn)備好
5 信號(hào)地 GND - 地線,兩個(gè)通訊設(shè)備之間的地電位可能不一樣,這會(huì)影響收發(fā)雙方的電平信號(hào),所以兩個(gè)串口設(shè)備之間必須要使用地線連接,即共地。
6 數(shù)據(jù)設(shè)備 (DCE) 就緒 DSR DTE←DCE Data Set Ready,數(shù)據(jù)發(fā)送就緒,用于 DCE 告知對(duì)方本機(jī)是否處于待命狀態(tài)
7 請(qǐng)求發(fā)送 RTS DTE→DCE Request To Send,請(qǐng)求發(fā)送,DTE 請(qǐng)求 DCE 本設(shè)備向 DCE 端發(fā)送數(shù)據(jù)
8 允許發(fā)送 CTS DTE←DCE Clear To Send,允許發(fā)送,DCE 回應(yīng)對(duì)方的 RTS 發(fā)送請(qǐng)求,告知對(duì)方是否可以發(fā)送數(shù)據(jù)
9 響鈴指示 RI DTE←DCE Ring Indicator,響鈴指示,表示 DCE 端與線路已接通

上表中的是計(jì)算機(jī)端的DB9公頭標(biāo)準(zhǔn)接法,由于兩個(gè)通訊設(shè)備之間的收發(fā)信號(hào)(RXD與TXD)應(yīng)交叉相連, 所以調(diào)制調(diào)解器端的DB9母頭的收發(fā)信號(hào)接法一般與公頭的相反,兩個(gè)設(shè)備之間連接時(shí),只要使用“直通型”的串口線連接起來即可, 見下圖,計(jì)算機(jī)與調(diào)制調(diào)解器的信號(hào)線連接 :

wKgZO2gu7qKAKR_RAADFlVLqLh4754.png

串口線中的RTS、CTS、DSR、DTR及DCD信號(hào),使用邏輯 1表示信號(hào)有效,邏輯0表示信號(hào)無效。 例如,當(dāng)計(jì)算機(jī)端控制DTR信號(hào)線表示為邏輯1時(shí),它是為了告知遠(yuǎn)端的調(diào)制調(diào)解器,本機(jī)已準(zhǔn)備好接收數(shù)據(jù),0則表示還沒準(zhǔn)備就緒。

在目前的其它工業(yè)控制使用的串口通訊中,一般只使用RXD、TXD以及GND三條信號(hào)線, 直接傳輸數(shù)據(jù)信號(hào),而RTS、CTS、DSR、DTR及DCD信號(hào)都被裁剪掉了。

1.2 協(xié)議層

串口通訊的數(shù)據(jù)包由發(fā)送設(shè)備通過自身的TXD接口傳輸?shù)浇邮赵O(shè)備的RXD接口。在串口通訊的協(xié)議層中, 規(guī)定了數(shù)據(jù)包的內(nèi)容,它由啟始位、主體數(shù)據(jù)、校驗(yàn)位以及停止位組成,通訊雙方的數(shù)據(jù)包格式要約定一致才能正常收發(fā)數(shù)據(jù), 其組成見下圖,串口數(shù)據(jù)包的基本組成 :

wKgZO2gu7qKAXiiPAAA4fgAmO14702.png

1.2.1 波特率

本章中主要講解的是串口異步通訊,異步通訊中由于沒有時(shí)鐘信號(hào)(如前面講解的DB9接口中是沒有時(shí)鐘信號(hào)的), 所以兩個(gè)通訊設(shè)備之間需要約定好波特率,即每個(gè)碼元的長度,以便對(duì)信號(hào)進(jìn)行解碼, 圖 串口數(shù)據(jù)包的基本組成 中用虛線分開的每一格就是代表一個(gè)碼元。常見的波特率為4800、9600、115200等。

1.2.2 通訊的起始和停止信號(hào)

串口通訊的一個(gè)數(shù)據(jù)包從起始信號(hào)開始,直到停止信號(hào)結(jié)束。數(shù)據(jù)包的起始信號(hào)由一個(gè)邏輯0的數(shù)據(jù)位表示, 而數(shù)據(jù)包的停止信號(hào)可由0.5、1、1.5或2個(gè)邏輯1的數(shù)據(jù)位表示,只要雙方約定一致即可。

1.2.3 有效數(shù)據(jù)

在數(shù)據(jù)包的起始位之后緊接著的就是要傳輸?shù)闹黧w數(shù)據(jù)內(nèi)容,也稱為有效數(shù)據(jù),有效數(shù)據(jù)的長度常被約定為5、6、7或8位長。

1.2.4 數(shù)據(jù)校驗(yàn)

在有效數(shù)據(jù)之后,有一個(gè)可選的數(shù)據(jù)校驗(yàn)位。由于數(shù)據(jù)通信相對(duì)更容易受到外部干擾導(dǎo)致傳輸數(shù)據(jù)出現(xiàn)偏差, 可以在傳輸過程加上校驗(yàn)位來解決這個(gè)問題。校驗(yàn)方法有奇校驗(yàn)(odd)、偶校驗(yàn)(even)、0校驗(yàn)(space)、1校驗(yàn)(mark)以及無校驗(yàn)(noparity)。

奇校驗(yàn)要求有效數(shù)據(jù)和校驗(yàn)位中“1”的個(gè)數(shù)為奇數(shù),比如一個(gè)8位長的有效數(shù)據(jù)為:01101001,此時(shí)總共有4個(gè)“1”, 為達(dá)到奇校驗(yàn)效果,校驗(yàn)位為“1”,最后傳輸?shù)臄?shù)據(jù)將是8位的有效數(shù)據(jù)加上1位的校驗(yàn)位總共9位。

偶校驗(yàn)與奇校驗(yàn)要求剛好相反,要求幀數(shù)據(jù)和校驗(yàn)位中“1”的個(gè)數(shù)為偶數(shù), 比如數(shù)據(jù)幀:11001010,此時(shí)數(shù)據(jù)幀“1”的個(gè)數(shù)為4個(gè),所以偶校驗(yàn)位為“0”。

0校驗(yàn)是不管有效數(shù)據(jù)中的內(nèi)容是什么,校驗(yàn)位總為“0”,1校驗(yàn)是校驗(yàn)位總為“1”。

2 W55MH32的USART簡介

通用同步異步收發(fā)器(Universal Synchronous Asynchronous Receiver and Transmitter)是一個(gè)串行通信設(shè)備, 可以靈活地與外部設(shè)備進(jìn)行全雙工數(shù)據(jù)交換。 有別于USART還有一個(gè)UART(Universal Asynchronous Receiver and Transmitter), 它是在USART基礎(chǔ)上裁剪掉了同步通信功能,只有異步通信。 簡單區(qū)分同步和異步就是看通信時(shí)需不需要對(duì)外提供時(shí)鐘輸出,我們平時(shí)用的串口通信基本都是UART。

串行通信一般是以幀格式傳輸數(shù)據(jù),即是一幀一幀的傳輸,每幀包含有起始信號(hào)、數(shù)據(jù)信息、停止信息, 可能還有校驗(yàn)信息。USART就是對(duì)這些傳輸參數(shù)有具體規(guī)定,當(dāng)然也不是只有唯一一個(gè)參數(shù)值,很多參數(shù)值都可以自定義設(shè)置,只是增強(qiáng)它的兼容性。

USART滿足外部設(shè)備對(duì)工業(yè)標(biāo)準(zhǔn)NRZ異步串行數(shù)據(jù)格式的要求,并且使用了小數(shù)波特率發(fā)生器, 可以提供多種波特率,使得它的應(yīng)用更加廣泛。USART支持同步單向通信和半雙工單線通信;還支持局域互連網(wǎng)絡(luò)LIN、 智能卡(SmartCard)協(xié)議與lrDA(紅外線數(shù)據(jù)協(xié)會(huì)) SIR ENDEC規(guī)范。

USART支持使用DMA,可實(shí)現(xiàn)高速數(shù)據(jù)通信,有關(guān)DMA具體應(yīng)用將在DMA章節(jié)作具體講解。

USART在W55MH32應(yīng)用最多莫過于“打印”程序信息,一般在硬件設(shè)計(jì)時(shí)都會(huì)預(yù)留一個(gè)USART通信接口連接電腦, 用于在調(diào)試程序是可以把一些調(diào)試信息“打印”在電腦端的串口調(diào)試助手工具上,從而了解程序運(yùn)行是否正確、如果出錯(cuò)哪具體哪里出錯(cuò)等等。

3 USART功能框圖

USART的功能框圖包含了USART最核心內(nèi)容,掌握了功能框圖,對(duì)USART就有一個(gè)整體的把握, 在編程時(shí)就思路就非常清晰。USART功能框圖見下圖,USART功能框圖 :

wKgZPGgu7qOATfUlAASgN0Ir5xk640.png

TX: 發(fā)送數(shù)據(jù)輸出引腳。

RX: 接收數(shù)據(jù)輸入引腳。

SW_RX: 數(shù)據(jù)接收引腳,只用于單線和智能卡模式,屬于內(nèi)部引腳,沒有具體外部引腳。

nRTS: 請(qǐng)求已發(fā)送(Request To Send),n表示低電平有效。如果使能RTS流控制,當(dāng)USART接收器準(zhǔn)備好接收新數(shù)據(jù)時(shí)就會(huì)將nRTS變成低電平; 當(dāng)接收寄存器已滿時(shí),nRTS將被設(shè)置為高電平。該引腳只適用于硬件流控制。

nCTS: 清除以發(fā)送(Clear To Send),n表示低電平有效。如果使能CTS流控制,發(fā)送器在發(fā)送下一幀數(shù)據(jù)之前會(huì)檢測(cè)nCTS引腳, 如果為低電平,表示可以發(fā)送數(shù)據(jù),如果為高電平則在發(fā)送完當(dāng)前數(shù)據(jù)幀之后停止發(fā)送。該引腳只適用于硬件流控制。

SCLK: 發(fā)送器時(shí)鐘輸出引腳。這個(gè)引腳僅適用于同步模式。

USART引腳在W55MH32芯片具體分布見下表,W55MH32芯片的USART引腳 :

引腳 APB2 總線(USART1) APB1 總線
USART1 USART2 USART3 UART4 UART5
TX PA9 PA2 PB10 PC10 PC12
RX PA10 PA3 PB11 PC11 PD2
SCLK PA8 PA4 PB12
nCTS PA11 PA0 PB13
nRTS PA12 PA1 PB14

W55MH32系統(tǒng)控制器有三個(gè)USART和兩個(gè)UART,其中USART1和時(shí)鐘來源于APB2總線時(shí)鐘,其最大頻率為216MHz, 其他四個(gè)的時(shí)鐘來源于APB1總線時(shí)鐘,其最大頻率為108MHz。UART只是異步傳輸功能,所以沒有SCLK、nCTS和nRTS功能引腳。

數(shù)據(jù)寄存器

USART數(shù)據(jù)寄存器(USART_DR)只有低9位有效,并且第9位數(shù)據(jù)是否有效要取決于USART控制寄存器1(USART_CR1)的M位設(shè)置, 當(dāng)M位為0時(shí)表示8位數(shù)據(jù)字長,當(dāng)M位為1表示9位數(shù)據(jù)字長,我們一般使用8位數(shù)據(jù)字長。

USART_DR包含了已發(fā)送的數(shù)據(jù)或者接收到的數(shù)據(jù)。USART_DR實(shí)際是包含了兩個(gè)寄存器,一個(gè)專門用于發(fā)送的可寫TDR, 一個(gè)專門用于接收的可讀RDR。當(dāng)進(jìn)行發(fā)送操作時(shí),往USART_DR寫入數(shù)據(jù)會(huì)自動(dòng)存儲(chǔ)在TDR內(nèi);當(dāng)進(jìn)行讀取操作時(shí),向USART_DR讀取數(shù)據(jù)會(huì)自動(dòng)提取RDR數(shù)據(jù)。

TDR和RDR都是介于系統(tǒng)總線和移位寄存器之間。串行通信是一個(gè)位一個(gè)位傳輸?shù)模l(fā)送時(shí)把TDR內(nèi)容轉(zhuǎn)移到發(fā)送移位寄存器, 然后把移位寄存器數(shù)據(jù)每一位發(fā)送出去,接收時(shí)把接收到的每一位順序保存在接收移位寄存器內(nèi)然后才轉(zhuǎn)移到RDR。

USART支持DMA傳輸,可以實(shí)現(xiàn)高速數(shù)據(jù)傳輸,具體DMA使用將在DMA章節(jié)講解。

控制器

USART有專門控制發(fā)送的發(fā)送器、控制接收的接收器,還有喚醒單元、中斷控制等等。 使用USART之前需要向USART_CR1寄存器的UE位置1使能USART,UE位用來開啟供給給串口的時(shí)鐘。

發(fā)送或者接收數(shù)據(jù)字長可選8位或9位,由USART_CR1的M位控制。

發(fā)送器

當(dāng)USART_CR1寄存器的發(fā)送使能位TE置1時(shí),啟動(dòng)數(shù)據(jù)發(fā)送,發(fā)送移位寄存器的數(shù)據(jù)會(huì)在TX引腳輸出, 低位在前,高位在后。如果是同步模式SCLK也輸出時(shí)鐘信號(hào)。

一個(gè)字符幀發(fā)送需要三個(gè)部分:起始位+數(shù)據(jù)幀+停止位。起始位是一個(gè)位周期的低電平,位周期就是每一位占用的時(shí)間; 數(shù)據(jù)幀就是我們要發(fā)送的8位或9位數(shù)據(jù),數(shù)據(jù)是從最低位開始傳輸?shù)?;停止位是一定時(shí)間周期的高電平。

停止位時(shí)間長短是可以通過USART控制寄存器2(USART_CR2)的STOP[1:0]位控制,可選0.5個(gè)、1個(gè)、1.5個(gè)和2個(gè)停止位。 默認(rèn)使用1個(gè)停止位。2個(gè)停止位適用于正常USART模式、單線模式和調(diào)制解調(diào)器模式。0.5個(gè)和1.5個(gè)停止位用于智能卡模式。

當(dāng)選擇8位字長,使用1個(gè)停止位時(shí),具體發(fā)送字符時(shí)序圖見下圖,字符發(fā)送時(shí)序圖 :

wKgZPGgu7qKADrf9AABZYcInQQ8248.png

當(dāng)發(fā)送使能位TE置1之后,發(fā)送器開始會(huì)先發(fā)送一個(gè)空閑幀(一個(gè)數(shù)據(jù)幀長度的高電平),接下來就可以往USART_DR寄存器寫入要發(fā)送的數(shù)據(jù)。 在寫入最后一個(gè)數(shù)據(jù)后,需要等待USART狀態(tài)寄存器(USART_SR)的TC位為1,表示數(shù)據(jù)傳輸完成,如果USART_CR1寄存器的TCIE位置1,將產(chǎn)生中斷。

在發(fā)送數(shù)據(jù)時(shí),編程的時(shí)候有幾個(gè)比較重要的標(biāo)志位我們來總結(jié)下:

名稱 描述
TE 發(fā)送使能
TXE 發(fā)送寄存器為空,發(fā)送單個(gè)字節(jié)的時(shí)候使用
TC 發(fā)送完成,發(fā)送多個(gè)字節(jié)數(shù)據(jù)的時(shí)候使用
TXIE 發(fā)送完成中斷使能

接收器

如果將USART_CR1寄存器的RE位置1,使能USART接收,使得接收器在RX線開始搜索起始位。 在確定到起始位后就根據(jù)RX線電平狀態(tài)把數(shù)據(jù)存放在接收移位寄存器內(nèi)。接收完成后就把接收移位寄存器數(shù)據(jù)移到RDR內(nèi), 并把USART_SR寄存器的RXNE位置1,同時(shí)如果USART_CR2寄存器的RXNEIE置1的話可以產(chǎn)生中斷。

在接收數(shù)據(jù)時(shí),編程的時(shí)候有幾個(gè)比較重要的標(biāo)志位我們來總結(jié)下:

名稱 描述
RE 接收使能
RXNE 讀數(shù)據(jù)寄存器非空
RXNEIE 接收完成中斷使能

小數(shù)波特率生成

波特率指數(shù)據(jù)信號(hào)對(duì)載波的調(diào)制速率,它用單位時(shí)間內(nèi)載波調(diào)制狀態(tài)改變次數(shù)來表示,單位為波特。 比特率指單位時(shí)間內(nèi)傳輸?shù)谋忍財(cái)?shù),單位bit/s(bps)。對(duì)于USART波特率與比特率相等,以后不區(qū)分這兩個(gè)概念。波特率越大,傳輸速率越快。

USART的發(fā)送器和接收器使用相同的波特率。計(jì)算公式如下:

wKgZPGgu7qKAMfiKAAAa84GGGik434.png

其中,fPLCK為USART時(shí)鐘, USARTDIV是一個(gè)存放在波特率寄存器(USART_BRR)的一個(gè)無符號(hào)定點(diǎn)數(shù)。 其中DIV_Mantissa[11:0]位定義USARTDIV的整數(shù)部分,DIV_Fraction[3:0]位定義USARTDIV的小數(shù)部分。

例如:DIV_Mantissa=24(0x18),DIV_Fraction=10(0x0A),此時(shí)USART_BRR值為0x18A; 那么USARTDIV的小數(shù)位10/16=0.625;整數(shù)位24,最終USARTDIV的值為24.625。

如果知道USARTDIV值為27.68,那么DIV_Fraction=16*0.68=10.88,最接近的正整數(shù)為11, 所以DIV_Fraction[3:0]為0xB;DIV_Mantissa=整數(shù)(27.68)=27,即為0x1B。

波特率的常用值有2400、9600、19200、115200。下面以實(shí)例講解如何設(shè)定寄存器值得到波特率的值。

我們知道USART1使用APB2總線時(shí)鐘,最高可達(dá)72MHz,其他USART的最高頻率為108MHz。 我們選取USART1作為實(shí)例講解,即fPLCK=216MHz。為得到115200bps的波特率,此時(shí):

115200=21600000016/16?USARTDIV

解得USARTDIV=117.1875,可算得DIV_Fraction=0.1875*16=3=0x03,DIV_Mantissa=117=0x75,即應(yīng)該設(shè)置USART_BRR的值為0x753。

3.1 校驗(yàn)控制

W55MH32系列控制器USART支持奇偶校驗(yàn)。當(dāng)使用校驗(yàn)位時(shí),串口傳輸?shù)拈L度將是8位的數(shù)據(jù)幀加上1位的校驗(yàn)位總共9位, 此時(shí)USART_CR1寄存器的M位需要設(shè)置為1,即9數(shù)據(jù)位。將USART_CR1寄存器的PCE位置1就可以啟動(dòng)奇偶校驗(yàn)控制, 奇偶校驗(yàn)由硬件自動(dòng)完成。啟動(dòng)了奇偶校驗(yàn)控制之后,在發(fā)送數(shù)據(jù)幀時(shí)會(huì)自動(dòng)添加校驗(yàn)位,接收數(shù)據(jù)時(shí)自動(dòng)驗(yàn)證校驗(yàn)位。 接收數(shù)據(jù)時(shí)如果出現(xiàn)奇偶校驗(yàn)位驗(yàn)證失敗,會(huì)見USART_SR寄存器的PE位置1,并可以產(chǎn)生奇偶校驗(yàn)中斷。

使能了奇偶校驗(yàn)控制后,每個(gè)字符幀的格式將變成:起始位+數(shù)據(jù)幀+校驗(yàn)位+停止位。

3.2 中斷控制

USART有多個(gè)中斷請(qǐng)求事件,具體見下表,USART中斷請(qǐng)求 :

中斷事件 事件標(biāo)志 使能控制位
發(fā)送數(shù)據(jù)寄存器為空 TXE TXEIE
CTS 標(biāo)志 CTS CTSIE
發(fā)送完成 TC TCIE
準(zhǔn)備好讀取接收到的數(shù)據(jù) RXNE RXNEIE
檢測(cè)到上溢錯(cuò)誤 ORE
檢測(cè)到空閑線路 IDLE IDLEIE
奇偶校驗(yàn)錯(cuò)誤 PE PEIE
斷路標(biāo)志 LBD LBDIE
多緩沖通信中的噪聲標(biāo)志、上溢錯(cuò)誤和幀錯(cuò)誤 NF/ORE/FE EIE

4 USART初始化結(jié)構(gòu)體詳解

標(biāo)準(zhǔn)庫函數(shù)對(duì)每個(gè)外設(shè)都建立了一個(gè)初始化結(jié)構(gòu)體,比如USART_InitTypeDef,結(jié)構(gòu)體成員用于設(shè)置外設(shè)工作參數(shù), 并由外設(shè)初始化配置函數(shù),比如USART_Init()調(diào)用,這些設(shè)定參數(shù)將會(huì)設(shè)置外設(shè)相應(yīng)的寄存器,達(dá)到配置外設(shè)工作環(huán)境的目的。

初始化結(jié)構(gòu)體和初始化庫函數(shù)配合使用是標(biāo)準(zhǔn)庫精髓所在,理解了初始化結(jié)構(gòu)體每個(gè)成員意義基本上就可以對(duì)該外設(shè)運(yùn)用自如了。 初始化結(jié)構(gòu)體定義在W55MH32_usart.h文件中,初始化庫函數(shù)定義在W55MH32_usart.c文件中,編程時(shí)我們可以結(jié)合這兩個(gè)文件內(nèi)注釋使用。

USART初始化結(jié)構(gòu)體

typedef struct {
    uint32_t USART_BaudRate;            // 波特率
    uint16_t USART_WordLength;          // 字長
    uint16_t USART_StopBits;            // 停止位
    uint16_t USART_Parity;              // 校驗(yàn)位
    uint16_t USART_Mode;                // USART模式
    uint16_t USART_HardwareFlowControl; // 硬件流控制
} USART_InitTypeDef;

USART_BaudRate: 波特率設(shè)置。一般設(shè)置為2400、9600、19200、115200。標(biāo)準(zhǔn)庫函數(shù)會(huì)根據(jù)設(shè)定值計(jì)算得到USARTDIV值,從而設(shè)置USART_BRR寄存器值。

USART_WordLength: 數(shù)據(jù)幀字長,可選8位或9位。它設(shè)定USART_CR1寄存器的M位的值。如果沒有使能奇偶校驗(yàn)控制,一般使用8數(shù)據(jù)位;如果使能了奇偶校驗(yàn)則一般設(shè)置為9數(shù)據(jù)位。

USART_StopBits: 停止位設(shè)置,可選0.5個(gè)、1個(gè)、1.5個(gè)和2個(gè)停止位,它設(shè)定USART_CR2寄存器的STOP[1:0]位的值,一般我們選擇1個(gè)停止位。

USART_Parity: 奇偶校驗(yàn)控制選擇,可選USART_Parity_No(無校驗(yàn))、USART_Parity_Even(偶校驗(yàn))以及USART_Parity_Odd(奇校驗(yàn)),它設(shè)定USART_CR1寄存器的PCE位和PS位的值。

USART_Mode: USART模式選擇,有USART_Mode_Rx和USART_Mode_Tx,允許使用邏輯或運(yùn)算選擇兩個(gè),它設(shè)定USART_CR1寄存器的RE位和TE位。

USART_HardwareFlowControl: 硬件流控制選擇,只有在硬件流控制模式才有效,可選有使能RTS、使能CTS、同時(shí)使能RTS和CTS、不使能硬件流。

當(dāng)使用同步模式時(shí)需要配置SCLK引腳輸出脈沖的屬性,標(biāo)準(zhǔn)庫使用一個(gè)時(shí)鐘初始化結(jié)構(gòu)體USART_ClockInitTypeDef來設(shè)置,該結(jié)構(gòu)體內(nèi)容也只有在同步模式才需要設(shè)置。

USART時(shí)鐘初始化結(jié)構(gòu)體

typedef struct {
    uint16_t USART_Clock;    // 時(shí)鐘使能控制
    uint16_t USART_CPOL;     // 時(shí)鐘極性
    uint16_t USART_CPHA;     // 時(shí)鐘相位
    uint16_t USART_LastBit;  // 最尾位時(shí)鐘脈沖
} USART_ClockInitTypeDef;

USART_Clock: 同步模式下SCLK引腳上時(shí)鐘輸出使能控制,可選禁止時(shí)鐘輸出(USART_Clock_Disable)或開啟時(shí)鐘輸出(USART_Clock_Enable);如果使用同步模式發(fā)送,一般都需要開啟時(shí)鐘。它設(shè)定USART_CR2寄存器的CLKEN位的值。

USART_CPOL: 同步模式下SCLK引腳上輸出時(shí)鐘極性設(shè)置,可設(shè)置在空閑時(shí)SCLK引腳為低電平(USART_CPOL_Low)或高電平(USART_CPOL_High)。它設(shè)定USART_CR2寄存器的CPOL位的值。

USART_CPHA: 同步模式下SCLK引腳上輸出時(shí)鐘相位設(shè)置,可設(shè)置在時(shí)鐘第一個(gè)變化沿捕獲數(shù)據(jù)(USART_CPHA_1Edge)或在時(shí)鐘第二個(gè)變化沿捕獲數(shù)據(jù)。它設(shè)定USART_CR2寄存器的CPHA位的值。USART_CPHA與USART_CPOL配合使用可以獲得多種模式時(shí)鐘關(guān)系。

USART_LastBit: 選擇在發(fā)送最后一個(gè)數(shù)據(jù)位的時(shí)候時(shí)鐘脈沖是否在SCLK引腳輸出,可以是不輸出脈沖(USART_LastBit_Disable)、輸出脈沖(USART_LastBit_Enable)。它設(shè)定USART_CR2寄存器的LBCL位的值。

5 USART_Rs485

5.1 代碼解析

USART1 作為調(diào)試終端(接收命令、打印結(jié)果),USARTx 作為 RS485 接口(收發(fā)數(shù)據(jù))。通過輪詢方式檢測(cè)命令和數(shù)據(jù),演示了 RS485 總線的基本通信流程。適用于需要 RS485 通信的嵌入式系統(tǒng)開發(fā),可作為工業(yè)通信設(shè)備(如 Modbus 從機(jī))的原型基礎(chǔ)。核心邏輯清晰,依賴自定義的rs485.h驅(qū)動(dòng)實(shí)現(xiàn)硬件細(xì)節(jié),便于移植和擴(kuò)展。程序流程如下:

1. 基礎(chǔ)配置與依賴

頭文件:包含標(biāo)準(zhǔn)庫、延時(shí)驅(qū)動(dòng)(delay.h)、硬件抽象層(W55MH32.h)及自定義 RS485 驅(qū)動(dòng)(rs485.h)。

宏定義:DATA_LEN指定通信數(shù)據(jù)長度(5 字節(jié))。

全局變量:USART_TEST指向 USART1(調(diào)試串口),rs485buf存儲(chǔ) RS485 收發(fā)數(shù)據(jù)。

2. 主函數(shù)流程

初始化階段:系統(tǒng)初始化

delay_init():初始化延時(shí)函數(shù)。

UART_Configuration(115200):配置 USART1(PA9/TX, PA10/RX)為調(diào)試串口,波特率 115200。打印系統(tǒng)時(shí)鐘頻率(SYSCLK/HCLK/PCLK1/PCLK2/ADCCLK)。

RS485 初始化:RS485_Init(9600):配置 RS485 總線(波特率 9600),具體實(shí)現(xiàn)(如 GPIO、USART 配置)封裝在rs485.h中。

主循環(huán)邏輯

int main(void)
{
    uint8_t           key;
    uint8_t           rs485buf[5], i;
    RCC_ClocksTypeDef clocks;

    delay_init();
    UART_Configuration(115200);
    RCC_GetClocksFreq(&clocks);

    printf("n");
    printf("SYSCLK: %3.1fMhz, HCLK: %3.1fMhz, PCLK1: %3.1fMhz, PCLK2: %3.1fMhz, ADCCLK: %3.1fMhzn",
           (float)clocks.SYSCLK_Frequency / 1000000, (float)clocks.HCLK_Frequency / 1000000,
           (float)clocks.PCLK1_Frequency / 1000000, (float)clocks.PCLK2_Frequency / 1000000, (float)clocks.ADCCLK_Frequency / 1000000);

    printf("USART RS485 Test.n");

    RS485_Init(9600); //Initialize RS485

    while (1)
    {
        if (GetCmd() == 's')
        {
            for (i = 0; i < DATA_LEN; i++)
            {
                rs485buf[i] = 0x5A + i;
            }
            RS485_Send_Data(rs485buf, DATA_LEN);
            printf("RS485 Send Data Successn");
        }

        RS485_Receive_Data(rs485buf, &key);
        if (key) //Data received
        {
            printf("RS485 Recv Data Successn");
            if (key > DATA_LEN) key = DATA_LEN; //The maximum is 5 data.
            for (i = 0; i < DATA_LEN; i++)
            {
                printf("rs485buf[%d] = 0x%xn", i, rs485buf[i]);
            }
        }
    }
}

命令檢測(cè)(USART1 輸入):通過GetCmd()輪詢 USART1 接收緩沖區(qū),檢測(cè)是否收到字符's'。收到's' 后,生成測(cè)試數(shù)據(jù)(0x5A~0x5E),調(diào)用RS485_Send_Data發(fā)送。

RS485 數(shù)據(jù)收發(fā):

發(fā)送:周期性發(fā)送預(yù)設(shè)數(shù)據(jù)(如未使用中斷,需確保半雙工模式下的收發(fā)切換)。

接收:調(diào)用RS485_Receive_Data輪詢接收數(shù)據(jù),收到后通過 USART1 打印數(shù)據(jù)內(nèi)容。

調(diào)試輸出:通過重定向的printf輸出狀態(tài)信息(如發(fā)送成功、接收數(shù)據(jù))。

5.2 實(shí)驗(yàn)現(xiàn)象

程序初始化成功之后,會(huì)打印輸出各時(shí)鐘的頻率和串口測(cè)試信息,我們發(fā)送字符“s”,W55MH32就打印了串口發(fā)送成功的消息:

wKgZPGgu7qOAR6LoAAF5l_1rOTI297.png

6 補(bǔ)充說明

對(duì)于W55M32芯片,各個(gè)引腳可以做什么外設(shè)功能或者電氣特性參數(shù)在數(shù)據(jù)手冊(cè) 查閱,引腳和外設(shè)的功能特性和對(duì)應(yīng)寄存器的使用在 參考手冊(cè) 查閱。

以下對(duì)于W55MH32芯片,當(dāng)根據(jù)數(shù)據(jù)手冊(cè)確定要使用某個(gè)引腳做某個(gè)外設(shè)功能時(shí),在參考手冊(cè)如下查閱外設(shè)的GPIO應(yīng)該如何配置,當(dāng)對(duì)各種配置不了解時(shí)以能在手冊(cè)查閱出的結(jié)果為準(zhǔn)。

6.1 TIM1/TIM8引腳配置

TIM1/TIM8 引腳 配置 GPIO 配置
TIM1/8_CHx 輸入捕獲通道 x 浮空輸入
TIM1/8_CHx 輸出比較通道 x 推挽復(fù)用輸出
TIM1/8_CHxN 互補(bǔ)輸出通道 x 推挽復(fù)用輸出
TIM1/8_BKIN 剎車輸入 浮空輸入
TIM1/8_ETR 外部觸發(fā)時(shí)鐘輸入 浮空輸入

6.2 通用定時(shí)器TIM2/3/4/5引腳配置

TIM2/3/4/5 引腳 配置 GPIO 配置
TIM2/3/4/5_CHx 輸入捕獲通道 x 浮空輸入
TIM2/3/4/5_CHx 輸出比較通道 x 推挽復(fù)用輸出
TIM2/3/4/5_ETR 外部觸發(fā)時(shí)鐘輸入 浮空輸入

6.3 USART引腳配置

USART 引腳 配置 GPIO 配置
USARTx_TX 全雙工模式 推挽復(fù)用輸出
USARTx_TX 半雙工同步模式 推挽復(fù)用輸出
USARTx_RX 全雙工模式 浮空輸入或帶上拉輸入
USARTx_RX 半雙工同步模式 未用,可作為通用 I/O
USARTx_CK 同步模式 推挽復(fù)用輸出
USARTx_RTS 硬件流量控制 推挽復(fù)用輸出
USARTx_CTS 硬件流量控制 浮空輸入或帶上拉輸入

關(guān)于串口中斷的使用,以串口1舉例,在參考手冊(cè)、庫內(nèi)定義和啟動(dòng)文件等可以看出 串口1使用 USART1_IRQn 一個(gè)中斷源,使用 USART1_IRQHandler 一個(gè)中斷函數(shù),回顧EXIT章節(jié)的補(bǔ)充說明有類似意思, 對(duì)于串口1這里,如果使能了多個(gè)標(biāo)志位的中斷,它們會(huì)在各自的時(shí)序流程觸發(fā)中斷,因此在中斷函數(shù)里面用多個(gè)GetITStatus函數(shù)判斷標(biāo)志并來做此標(biāo)志的流程操作,查閱手冊(cè)中的寄存器描述了解各標(biāo)志位的時(shí)序和如何清除標(biāo)志位等, 某些標(biāo)志位優(yōu)先以手冊(cè)中有描述的軟件清除流程而可以不使用ClearFlag函數(shù)。

wKgZPGgu7qOAJaW2AAM83661dZA450.png

以上補(bǔ)充總結(jié)對(duì)之后的外設(shè)學(xué)習(xí)也是同樣道理,注意對(duì)于GPIO配置和外設(shè)在不同系列芯片會(huì)存在差異,重點(diǎn)在于掌握整體概念,學(xué)會(huì)在不同芯片的手冊(cè)中查閱對(duì)應(yīng)內(nèi)容。

WIZnet 是一家無晶圓廠半導(dǎo)體公司,成立于 1998 年。產(chǎn)品包括互聯(lián)網(wǎng)處理器 iMCU?,它采用 TOE(TCP/IP 卸載引擎)技術(shù),基于獨(dú)特的專利全硬連線 TCP/IP。iMCU? 面向各種應(yīng)用中的嵌入式互聯(lián)網(wǎng)設(shè)備。

WIZnet 在全球擁有 70 多家分銷商,在香港、韓國、美國設(shè)有辦事處,提供技術(shù)支持和產(chǎn)品營銷。

香港辦事處管理的區(qū)域包括:澳大利亞、印度、土耳其、亞洲(韓國和日本除外)。

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

    關(guān)注

    6071

    文章

    45257

    瀏覽量

    660111
  • 以太網(wǎng)
    +關(guān)注

    關(guān)注

    41

    文章

    5867

    瀏覽量

    178615
  • 串口通訊
    +關(guān)注

    關(guān)注

    2

    文章

    266

    瀏覽量

    26049
  • USART
    +關(guān)注

    關(guān)注

    1

    文章

    201

    瀏覽量

    32648
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    至芯科技之a(chǎn)ltera 系列FPGA教程 第十四篇 分配管腳

    至芯科技之a(chǎn)ltera 系列FPGA教程 第十四篇 分配管腳
    發(fā)表于 08-11 03:33

    視頻詳解:上海尤老師verilog入門到實(shí)戰(zhàn)第十四

    上海尤老師verilog入門到實(shí)戰(zhàn)第十四課——無線通信中的CIC插值濾波器; 百度云網(wǎng)盤鏈接后綴:/s/1i5Q9JDj, 加群討論252520964,307510678
    發(fā)表于 10-09 11:10

    「正點(diǎn)原子Linux連載」第十四章蜂鳴器試驗(yàn)

    1)實(shí)驗(yàn)平臺(tái):正點(diǎn)原子Linux開發(fā)板2)摘自《正點(diǎn)原子I.MX6U嵌入式Linux驅(qū)動(dòng)開發(fā)指南》關(guān)注官方微信號(hào)公眾號(hào),獲取更多資料:正點(diǎn)原子第十四章蜂鳴器試驗(yàn) 前幾章試驗(yàn)中的驅(qū)動(dòng)LED燈亮滅屬于
    發(fā)表于 12-21 12:05

    軟件定義無線電手冊(cè),第十四

    軟件定義無線電手冊(cè),第十四版。pentek公司出的資料。
    發(fā)表于 02-18 09:52

    第十四講 555定時(shí)器

    第十四講 555定時(shí)器 5.5.1 555定時(shí)器的電路結(jié)構(gòu)及其功能 一、結(jié)構(gòu)框圖(圖5.5.1 雙極型)1.
    發(fā)表于 03-30 16:20 ?4365次閱讀
    <b class='flag-5'>第十四</b>講 555定時(shí)器

    視頻_高速放大器設(shè)計(jì)指南 第十四

    視頻_高速放大器設(shè)計(jì)指南 第十四
    發(fā)表于 03-05 15:34 ?0次下載

    STM32的USART串口通訊程序

    STM32的USART串口通訊程序一、了解串口通信及準(zhǔn)備工作1.串口通信簡介2.STM32 的 USAR
    發(fā)表于 11-18 18:51 ?10次下載
    STM32的<b class='flag-5'>USART</b><b class='flag-5'>串口</b><b class='flag-5'>通訊</b>程序

    【STM32學(xué)習(xí)筆記】串口通訊USART / UART

    文章目錄通訊的基本概念串口通訊協(xié)議簡介物理層RS-232標(biāo)準(zhǔn)USB轉(zhuǎn)串口原生的串口串口TTL和
    發(fā)表于 11-26 11:51 ?16次下載
    【STM32學(xué)習(xí)筆記】<b class='flag-5'>串口</b><b class='flag-5'>通訊</b> — <b class='flag-5'>USART</b> / UART

    STM32_USART 串口通訊

    STM32_USART 串口通訊通信方式的分類按照通信方式分類:按照數(shù)據(jù)傳送方向分類:通信接口及其說明如下圖所示:STM32的串口通信引腳接線串口
    發(fā)表于 11-26 12:06 ?13次下載
    STM32_<b class='flag-5'>USART</b> <b class='flag-5'>串口</b><b class='flag-5'>通訊</b>

    才茂亮相第十四屆配電技術(shù)應(yīng)用大會(huì)

    日前,第十四屆配電技術(shù)應(yīng)用大會(huì)在南京圓滿落下帷幕。眾多行業(yè)精英齊聚一堂,共謀現(xiàn)代智慧配電網(wǎng)的宏偉藍(lán)圖。
    的頭像 發(fā)表于 08-23 09:16 ?898次閱讀

    【北京迅為】iTOP-i.MX6開發(fā)板使用手冊(cè)第四部分固件編譯第十四章非設(shè)備樹Android4.4系統(tǒng)編譯

    【北京迅為】iTOP-i.MX6開發(fā)板使用手冊(cè)第四部分固件編譯第十四章非設(shè)備樹Android4.4系統(tǒng)編譯
    的頭像 發(fā)表于 09-12 15:43 ?1243次閱讀
    【北京迅為】iTOP-i.MX6開發(fā)板使用手冊(cè)第四部分固件編譯<b class='flag-5'>第十四章</b>非設(shè)備樹Android4.4系統(tǒng)編譯

    第十四屆芯原CEO論壇五大預(yù)測(cè)

    2025年1月19日,以“Chiplet的發(fā)展機(jī)遇”為主題的第十四屆芯原CEO論壇在上海海鷗麗晶酒店舉辦。
    的頭像 發(fā)表于 01-21 09:44 ?663次閱讀

    四維圖新亮相第十四屆智能交通市場(chǎng)年會(huì)

    3月5日-6日,由賽文交通網(wǎng)主辦的第十四屆(2025)智能交通市場(chǎng)年會(huì)在蘇州舉行,會(huì)上同期舉行了第十四屆智能交通最具影響力企業(yè)評(píng)選頒獎(jiǎng)典禮。
    的頭像 發(fā)表于 03-07 16:33 ?652次閱讀

    慧爾視亮相第十四屆智能交通市場(chǎng)年會(huì)

    2025年3月5-6日,由賽文交通網(wǎng)主辦的第十四屆(2025)智能交通市場(chǎng)年會(huì)在蘇州成功召開。
    的頭像 發(fā)表于 03-07 17:15 ?968次閱讀

    中興通訊高校戰(zhàn)略合作發(fā)展委員會(huì)第十四屆年會(huì)圓滿收官

    日前,中興通訊高校戰(zhàn)略合作發(fā)展委員會(huì)第十四屆年會(huì)(以下簡稱“年會(huì)”)在深圳隆重開幕,本次年會(huì)以“數(shù)聯(lián)世界,智啟未來”為主題,來自教育部、全國多所高校及中興通訊的120余位嘉賓齊聚一堂,與會(huì)嘉賓聚焦AI與數(shù)智化轉(zhuǎn)型升級(jí)機(jī)遇,深入探
    的頭像 發(fā)表于 08-07 17:19 ?823次閱讀