文章目錄
- 一、串口通信
- 二、串口通信實驗
- 1.引腳配置
- 2.時鐘配置
- 3.生成代碼
- 總結
# 前言 在前面已經學習了LED、BEEP以及按鍵的操作,本篇博客將繼續和大家學習關于串口通信的配置,
通過本篇的學習,會進一步認識到CubeMX配置的簡單化,
一、串口通信
串口作為 MCU 的重要外部介面,同時也是軟體開發重要的除錯手段,其重要性不言而喻,
現在基本上所有的 MCU 都會帶有串口,STM32 自然也不例外,
二、串口通信實驗
1.引腳配置
1、在功能選擇區搜索USART1

2、模式選擇Asynchronous
3、功能配置區點擊NVIC Settings,勾選使能串口中斷,

2.時鐘配置
RCC時鐘配置如前文一樣(此處一般情況是不變的),
【STM32F4】HAL庫 CubeMX(一)--------創建工程(點亮LED)
3.生成代碼
由于串口通信的函式使用有些不方便,為了使用方便,我們重新定義了一些函式,使得可以類比C語言,用scanf作為輸入,printf作為輸出,
1、打開生成的代碼,點擊檔案,copy以下代碼

int fputc(int ch, FILE *f)
{
HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);
return ch;
}
int fgetc(FILE *f)
{
uint8_t ch = 0;
HAL_UART_Receive(&huart1, &ch, 1, 0xffff);
return ch;
}
2、在對應.h檔案添加這個頭檔案

#include <stdio.h>
3、一切準備就緒,讓我們根據原子的實驗寫HAL庫的main函式吧(由于我們更改了函式,所以操作起來比庫函式簡單很多)

char t;
scanf("%c",&t);
HAL_Delay(1000);
printf(您發送的資訊是 %c\n",t);
總結
至此,串口的操作是不是都掌握了呢,串口作為一個通信介面,在除錯代碼的時候有意想不到的便利喲,-------操作是不是也很簡單呢

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/165681.html
標籤:python
