在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

STM32CubeMX生成的代碼中串口如何發送數據?

撞上電子 ? 2025-01-13 21:02 ? 次閱讀

第一節 硬件解讀

大家的開發板到手之后,可以看見,只有一個USB口,那個口就是串口,開發板A和開發板B共用一個串口,通過按鍵切換。

我們以開發板A為例,原理圖如下:

a120974e-d1ae-11ef-9434-92fbcf53809c.png

開發板A芯片上面的PA2和PA3分別是NODEA_USART_TX和NODEA_USART_RX,而開發板A和Debugger開發板的連接如下:

a139f266-d1ae-11ef-9434-92fbcf53809c.png

a14d66c0-d1ae-11ef-9434-92fbcf53809c.png

通過查看CH443K芯片的引腳可以得到,SEL引腳的高低電平,可以讓CH443K芯片在1腳4腳連接或者3腳4腳連接中選擇。CH443K芯片引腳說明如下:

a1606f72-d1ae-11ef-9434-92fbcf53809c.png

當CH443K芯片的SEL為高電平時,其芯片COM和CH1引腳導通。DEBUGGER_TX和B_TX導通,DEBUGGER_RX和B_RX導通;反之DEBUGGER_TX和A_TX導通,DEBUGGER_RX和A_RX導通。

那么,DEBUGGER_TX和DEBUGGER_RX連接在哪?當然是DAPLINK板的MCU上面啦,如下圖:

a177debe-d1ae-11ef-9434-92fbcf53809c.png

連接到Debugger板的MCU之后,這個MCU通過內部程序(不需要我們寫,比賽的時候已經寫好了)轉到唯一的USB口上,也就是我們的串口上。

a1870d12-d1ae-11ef-9434-92fbcf53809c.png

第二節 CuebMX的配置

第一步:選擇PA2的引腳的USART2_Tx功能,如下圖:

a1a18ce6-d1ae-11ef-9434-92fbcf53809c.png

第二步:選擇PA3引腳的USART_RX功能,如下圖:

a1bb1e2c-d1ae-11ef-9434-92fbcf53809c.png

第三步:發現USART相關的引腳是黃色的,不是綠色的,這是為什么呢?注意:黃色是異常提醒,綠色是正常的。

a1d1c0a0-d1ae-11ef-9434-92fbcf53809c.png

第四步:如下圖配置USART2。注意:2代表的是異步全雙工通信;6代表波特率,數據長度,校驗位和停止位。這里波特率是115200,比賽基本上都是9600。

a1da9c5c-d1ae-11ef-9434-92fbcf53809c.png

其中:具體Mode配置信息如下:

Mode:代表串口模式,配置為(異步)Asynchronous,(同步主機)Synchronous Master,(同步從機)Synchronous Slave,(單線半雙工)Single Wire (Half - Duplex),(多處理器通信)Multiprocessor Communication,(紅外通訊)IrDA ,(局域互聯網模式)LIN ,(智能卡模式)SmartCard ;

Hard Flow Control RS232:代表RS232的硬件控制流,常用引腳為CTS,RTC,CTS/RTS或者Disabled;

Hard Flow Control RS485:代表RS485的硬件控制流;

其中:具體Configuration配置信息如下:

Baud Rate:代表串口波特率,常用波特率為9600,115200等;

Word Length:代表字節位,常用字節為:7位,8位或者9位;

Parity:代表校驗位;常用為:(無校驗)None,(奇校驗)Even或者Odd(偶校驗)Odd;

Stop Bits:代表停止位,常用為:0.5,1,1.5或者2;

Data Direction:代表數據傳輸方向,常用為(發送和接收)Receive and Transmit,(接收)Receive或者(發送)Transmit;

Over Sampling:代表過采樣,常用為8倍采樣和16倍采樣,8倍采樣,也就是一個數據位采樣8次,16倍則是16次。采樣率高精度會高一些,當然相應的功耗也會變高;

Single Sample:代表單次采樣,使能時使用單次采樣值,否則使用三次采樣值。前面的過采樣會有8或16次采樣值,當選擇單次采樣時,會使用其中的一次采樣值作為數據位邏輯電平的結果。三次采樣則用三次采樣的判斷結果為準。同樣三次采樣也是為了確保數據的準確性。

ClockPrescaler:代表時鐘預分頻器;

Fifo Mode:代表數據緩存模式;

Txfifo Threshold:代表發送數據的閾值;

Rxfifo Threshold:代表接收數據的閾值;

Auto Baudrate:代表自動波特率,顧名思義,可以根據接收到的數據進行波特率自適應;

TX Pin Active Level Inversion:代表發送電平反轉,發送引腳電平極性反轉,正常情況下空閑電平為高電平,使能該功能后變成空閑電平為低電平;

RX Pin Active Level Inversion:代表接收電平反轉,接收引腳電平極性反轉,正常情況下空閑電平為高電平,使能該功能后變成空閑電平為低電平;

Data Inversion:代表數據電平反轉收發數據的邏輯電平極性反轉,正常是高電平為邏輯1,低電平為邏輯0,使能該功能后則變成低電平為邏輯1,高電平為邏輯0。校驗位也隨著反轉;

TX and RX Pins Swapping:代表收發引腳互換,接收和發送引腳互換,適用于外部硬件連線錯誤時進行切換。

Overrun:代表溢出檢測,:用于開啟接收溢出檢測,使用該功能后,當接收數據未取出時,又接收到一個數據,此時會觸發一個溢出標志。

DMA on RX Error:代表接收錯誤時不禁用DMA,使能該功能后,即使出現接收錯誤也不會關閉DMA傳輸;

MSB First:代表數據高位先發,正常數據是先發低位再發高位,使能該功能后可以先發高位數據;

第三節 MDK代碼

第一步:編寫串口發送函數,如下圖:

a1f60cee-d1ae-11ef-9434-92fbcf53809c.png

第二步:聲明串口發送函數,如下圖:

a20c40cc-d1ae-11ef-9434-92fbcf53809c.png

第三步:編寫主函數,如下圖:

a219ef88-d1ae-11ef-9434-92fbcf53809c.png

第四步,配置MicroLIB庫,如下:【注意:不使用printf,可以不配置;如果使用printf但是不配置,程序將卡死】

a22d861a-d1ae-11ef-9434-92fbcf53809c.png

第五步:配置好下載器之后,編譯代碼,下載即可。

第六步:打開串口軟件,如下圖配置:選擇串口號;接收緩存區選擇HEX模式,波特率選擇115200;串口號請掃描,選擇正確的串口號,不一定是COM4;最后打開串口。

a2467242-d1ae-11ef-9434-92fbcf53809c.png ? ?

第四節 實驗現象

注意:

1,請用USB線連接電腦與開發板;

2,請選擇A開發板;

3,一定要勾選微庫。

現象:

1,串口發送以115200波特率發送數據。

來源:撞上電子微信公眾號

版權:東莞市東城墨竹公子電子工作室

日期:2024.11.13

第五節 課后作業

利用按鍵,串口打印按鍵按下的次數。

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

    關注

    2270

    文章

    10914

    瀏覽量

    356723
  • 串口
    +關注

    關注

    14

    文章

    1557

    瀏覽量

    76717
  • 開發板
    +關注

    關注

    25

    文章

    5087

    瀏覽量

    97792
收藏 人收藏

    評論

    相關推薦

    請問simulink/STM32CubeMX如何聯合生成STM32串口發送代碼

    請問simulink/STM32CubeMX如何聯合生成STM32串口發送代碼
    發表于 11-19 06:46

    STM32cubeMX串口使用教程免費下載

    本文檔的主要內容詳細介紹的是STM32cubeMX串口使用教程免費下載。
    發表于 12-03 11:31 ?27次下載
    <b class='flag-5'>STM32cubeMX</b>的<b class='flag-5'>串口</b>使用教程免費下載

    STM32CUBEMX配置教程(八)STM32串口輪詢發送中斷接收+重定義+優化

    有些遺忘,因此寫下這一系列教程以供記憶,順便讓我這個大萌新給廣大小萌新提供一些學習幫助。此次工程效果:串口115200波特率,接收串口助手XCOM發送數據
    發表于 11-19 13:36 ?11次下載
    <b class='flag-5'>STM32CUBEMX</b>配置教程(八)<b class='flag-5'>STM32</b><b class='flag-5'>串口</b>輪詢<b class='flag-5'>發送</b>中斷接收+重定義+優化

    stm32CubeMX生成程序完成流水燈以及完成STM32的USART串口通訊程序實現STM32系統給上位機(win10)連續發送

    一、STM32CubeMX簡介及安裝STM32CubeMX 是 ST 意法半導體近幾年來大力推薦的STM32 芯片圖形化配置工具,目的就是為了方便開發者, 允許用戶使用圖形化向導生成C
    發表于 11-26 12:51 ?6次下載
    在 <b class='flag-5'>stm32CubeMX</b>下<b class='flag-5'>生成</b>程序完成流水燈以及完成<b class='flag-5'>STM32</b>的USART<b class='flag-5'>串口</b>通訊程序實現<b class='flag-5'>STM32</b>系統給上位機(win10)連續<b class='flag-5'>發送</b>“

    STM32F407的串口UART 基礎配置STM32CubeMX

    STM32F407的串口UART 基礎配置STM32CubeMX
    發表于 11-29 16:06 ?56次下載
    <b class='flag-5'>STM32</b>F407的<b class='flag-5'>串口</b>UART 基礎配置<b class='flag-5'>STM32CubeMX</b>

    STM32CubeMX生成代碼在SW4STM32下移植STemWin(CLion+CubeMX

    STM32CubeMX生成代碼在SW4STM32下移植STemWin(CLion+CubeMX)文章目錄
    發表于 12-04 14:36 ?12次下載
    <b class='flag-5'>STM32CubeMX</b><b class='flag-5'>生成</b><b class='flag-5'>代碼</b>在SW4<b class='flag-5'>STM32</b>下移植STemWin(CLion+<b class='flag-5'>CubeMX</b>)

    使用STM32CubeMX簡化編程以及串口通信和波形觀察

    目錄一、使用STM32CubeMX點亮流水燈1.準備工作2.用STM32CubeMX生成代碼參數2.1配置環境2.2配置參數2.3在keil下添加亮燈
    發表于 12-06 20:21 ?11次下載
    使用<b class='flag-5'>STM32CubeMX</b>簡化編程以及<b class='flag-5'>串口</b>通信和波形觀察

    STM32CubeMX完成USART串口通信

    STM32CubeMX完成USART串口通信
    發表于 12-06 20:36 ?24次下載
    <b class='flag-5'>STM32CubeMX</b>完成USART<b class='flag-5'>串口</b>通信

    STM32CubeMX使用串口中斷方式實現串口通信

    中斷方式),要求:1)設置波特率為115200,1位停止位,無校驗位;2)STM32系統給上位機(win10)連續發送“hello windows!”。win10采用“串口助手”工具接收二、C
    發表于 12-07 10:36 ?10次下載
    <b class='flag-5'>STM32CubeMX</b>使用<b class='flag-5'>串口</b>中斷方式實現<b class='flag-5'>串口</b>通信

    STM32CubeMX HAL庫串口+DMA數據發送不定長度數據接收,解決第一筆數據無法收發問題

    具:STM32CubeMX 6.01 生成代碼DfuSe V3.0.6 DFU驅動STM32虛擬COM端口驅動程序 在App端需要用到USB虛擬
    發表于 12-20 19:36 ?2次下載
    <b class='flag-5'>STM32CubeMX</b> HAL庫<b class='flag-5'>串口</b>+DMA<b class='flag-5'>數據</b><b class='flag-5'>發送</b>不定長度<b class='flag-5'>數據</b>接收,解決第一筆<b class='flag-5'>數據</b>無法收發問題

    STM32CUBEMX配置教程(九)STM32串口DMA收發數據

    ,因此寫下這一系列教程以供記憶,順便讓我這個大萌新給廣大小萌新提供一些學習幫助。此次工程效果:串口115200波特率,接收串口助手XCOM發送數據
    發表于 12-24 18:47 ?24次下載
    <b class='flag-5'>STM32CUBEMX</b>配置教程(九)<b class='flag-5'>STM32</b><b class='flag-5'>串口</b>DMA收發<b class='flag-5'>數據</b>

    STM32CubeMX實現串口通信(中斷方式)

    這里寫目錄標題一、STM32CubeMX工程創建1、題目要求2、配置STM32CubeMX工程一、STM32CubeMX工程創建1、題目要求完成一個STM32的USART
    發表于 12-24 19:18 ?11次下載
    <b class='flag-5'>STM32CubeMX</b>實現<b class='flag-5'>串口</b>通信(中斷方式)

    STM32CubeMX用于STM32配置并初始化C代碼生成

    STM32CubeMX用于STM32配置 并初始化C代碼生成.STM32CubeMXSTM32
    發表于 02-14 11:00 ?5次下載

    使用STM32CubeMX生成初始化代碼

    我使用STM32CubeMX生成初始化代碼,使用LL庫,這里只介紹跟i2c相關的部分,其他必要的初始化需要自己完成。芯片使用stm32f042。本文的
    的頭像 發表于 03-22 15:26 ?3072次閱讀

    STM32CubeMX的配置和C代碼生成

    電子發燒友網站提供《STM32CubeMX的配置和C代碼生成.pdf》資料免費下載
    發表于 09-20 09:53 ?8次下載
    <b class='flag-5'>STM32CubeMX</b>的配置和C<b class='flag-5'>代碼</b>的<b class='flag-5'>生成</b>
    主站蜘蛛池模板: 日本黄色绿像| 欧美成人 色 图| 在线观看视频在线观看| 久久久精品免费观看| 波多野结衣在线免费视频| 国产精品一区二区三区免费视频 | 精品视频网站| 国模网站| 97菊爱网| 国产一级在线观看www色| 国产欧美在线一区二区三区| 成年人网站黄色| 午夜国产高清精品一区免费| 国产成人综合欧美精品久久| 欧美feer| 国产一级毛片外aaaa| 夜夜骑天天干| a色在线| 午夜精品久久久久久久| 女女色综合影院| 久久伊人草| 免费看啪| 男女交性特一级| 毛片基地在线| 轻点灬大ji巴太粗太长了爽文| 在线天堂中文字幕| 色屋网| 国产农村女人一级毛片了| 午夜100| 四虎tv在线观看884aa| 成人在线一区二区三区| 国产又粗又大又爽又免费| 黄色网视频| 影院成人区精品一区二区婷婷丽春院影视| 四虎永久网址| 国产一级做a爰大片免费久久 | 日本三级在线视频| 日本黄色免费电影| 国产精品www视频免费看| 欧美成人免费观看bbb| 亚洲一区二区三区免费|