STM32Cube串口通信(上)串口發(fā)送
工作環(huán)境:
STM32CubeMXv6
Keil5
串口調試助手
????單單的串口發(fā)送相對而言還是比較簡單,因為不用打開配置串口中斷相關的配置。
????首先打開左側的下拉框Connectivity,點擊USART1選項;

????在打開的選單中點擊Mode的下拉框,選中Asynchronous;

????在下方的配置框中選中Parameter Settings進行配置:
????Baud Rate:波特率
????Word Length:字長
????Parity: 奇偶校驗
????Stop Bits:停止位
????Data Directon:數(shù)據(jù)方向
????Over Sampling:超采樣
????Auto Baudrate: 自動波特率
????TX Pin Active Level Inversion:輸出引腳有效電平反轉
????RX Pin Active Level Inversion:輸入引腳有效電平反轉
????Data Inversion:數(shù)據(jù)反轉
????TX and RX Pin Swapping:輸出和輸入引腳交換
????DMA on RX Error:DMA接收錯誤
????MSP First:MSP優(yōu)先

設置完成后
點擊Project Manager頁面,輸入工程名和工程位置,選擇工具鏈和IDE為MDK-ARM,版本為5.27;

打開左側Code Generater菜單勾選Generate peripheral initialization as a pair of'.c/.h'file per peripheral;

最后點擊右上角的GENERATE CODE按鈕后生成代碼。
生成代碼后打開工程文件夾,用Keil5打開工程。

編譯后運行
此時還是無法進行串口通信的
打開usart.c,在#include "usart.h"下添加以下代碼
好了,現(xiàn)在可以使用
直接在串口1中輸出了
如果不想改變stm32cube生成的函數(shù),那么可以不用添加這段代碼,直接使用
函數(shù)中的三個形參分別是串口名,串口數(shù)組名,數(shù)組長度,超時時間(因為是阻塞式的)。
參考資料:
STM32F7開發(fā)指南-HAL庫版本_V1.1
HAL庫教程5:串口數(shù)據(jù)發(fā)送? ? https://blog.csdn.net/geek_monkey/article/details/89164939