概述
在使用STM32CUBEIDE開發(fā)STM32H5項目時,串口打印被證明是一項極其有益的調(diào)試工具,能夠在開發(fā)過程中實時輸出信息和調(diào)試數(shù)據(jù),起到了至關(guān)重要的作用。通過充分利用串口打印功能,開發(fā)者可以輕松地在代碼中插入打印語句,通過串口將這些信息傳輸至連接于PC端的終端軟件,從而方便地監(jiān)測程序的狀態(tài)以及各變量的實時值。
在項目中,我們可以將標準C庫中的"printf"函數(shù)輸出進行重定向,使其輸出通過USART1通信接口進行傳輸。值得注意的是,USART1接口與CH340芯片相連接,而CH340則通過串口連接于PC端。這種設(shè)置允許我們使用串口助手等工具來實時捕獲和顯示"printf"函數(shù)的輸出內(nèi)容,從而更加高效地進行程序的調(diào)試和性能優(yōu)化。
最近在弄ST的課程,需要樣片的可以加群申請:615061293 。
樣品申請
https://www.wjx.top/vm/PpC1kRR.aspx
硬件準備
在開始進行開發(fā)之前,首先需要準備一塊合適的開發(fā)板,所選用的是搭載了STM32H503RB芯片的開發(fā)板,,具備了豐富多樣的外設(shè)和功能,非常適合各類應(yīng)用領(lǐng)域的開發(fā)需求。
生成例程
通過查看原理圖,可以了解到PB14與USART1的Tx(發(fā)送)功能相連接,而PB15則與USART1的Rx(接收)功能相連接。這樣的連接配置使得您可以通過USART1接口進行雙向的串口通信。
在"Configuration"(配置)選項卡下,找到USART1的配置部分。選擇"Async Mode"(異步模式)以啟用異步串口通信。
通過確保將PB14設(shè)置為Tx引腳,將PB15設(shè)置為Rx引腳,將能夠正確地配置USART1的引腳,實現(xiàn)正確的串口通信連接。這將為開發(fā)提供了一個穩(wěn)定的通信通道,使能夠在開發(fā)板上實現(xiàn)數(shù)據(jù)的雙向傳輸。記得在代碼中使用正確的引腳名稱,以確保與配置一致。
通過將USART1的波特率設(shè)置為115200,將確保與其他設(shè)備進行穩(wěn)定和高效的串口通信。這個設(shè)置將影響數(shù)據(jù)傳輸速率,確保您的數(shù)據(jù)能夠及時、準確地在通信通道中傳遞。在編寫代碼時,確保使用正確的波特率設(shè)置,以便在通信的兩端保持一致。
本實驗的STM32H503以250 MHz運行。
配置調(diào)試口
代碼生成配置
項目配置
調(diào)試配置
點擊小蟲子按鈕進入調(diào)試器配置
或者點擊工程。
配置調(diào)試器,這里使用jlink進行調(diào)試。
串口重定向
在main.c中,添加頭文件,否則可能會出現(xiàn)"identifier 'FILE' is undefined"錯誤。
通過包含頭文件,可以解決"identifier 'FILE' is undefined"錯誤。這是因為該頭文件聲明了與文件輸入/輸出相關(guān)的標準函數(shù)和類型,包括FILE類型,它在標準輸入/輸出流的處理中非常重要。
請確保在main.c文件中添加該頭文件,并在需要使用文件輸入/輸出或其他標準I/O函數(shù)時,以正確的方式使用它們。
/* USER CODE BEGIN Includes */
#include "stdio.h"
/* USER CODE END Includes */
函數(shù)聲明和串口重定向:
/* USER CODE BEGIN PFP */
#ifdef __GNUC__ //串口重定????
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
HAL_UART_Transmit(&huart1 , (uint8_t *)&ch, 1, 0xFFFF);
return ch;
}
/* USER CODE END PFP */
打印測試
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
printf("Hello World!nr");
HAL_Delay(1000);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
結(jié)果
審核編輯:湯梓紅
-
STM32
+關(guān)注
關(guān)注
2270文章
10914瀏覽量
356712 -
串口
+關(guān)注
關(guān)注
14文章
1557瀏覽量
76711 -
串口通信
+關(guān)注
關(guān)注
34文章
1627瀏覽量
55597
發(fā)布評論請先 登錄
相關(guān)推薦
評論