一建立STM32cubeMX工程1.建立新工程,選擇芯片STM32F302CCTx2. 在Pinout 中時鐘配置為高速外部時鐘, UART配置為異步通信, cube 會自動分配引腳。3.Clock Configuration 中配置如下4.configuration 中點擊USART1可進入配置在USART1 configuration 中Parameter Settings 可以配置波特率,發送數據字長,奇偶校驗位和停止位等。NVIC Setting 可以配置中斷優先級。5.生成keil 軟件代碼點擊工具欄中的齒輪按鈕,可以選擇代碼的開發平臺, ok 結束。(文件保存路徑一定要是全英文的)進過了我們一系列的配置, cube 會為我們自動生成keil 軟件的代碼,代碼中包括工程所需的固件庫,配套的頭文件,啟動文件及用戶文件。在main.c 中包括了我們工程所需外設的初始化,包括了系統時鐘初始化,中斷初始化, GPIO初始化, USART1初始化, HAL庫初始化。我們只需要在main.c 中添加我們自己的代碼就可以了。二keil 軟件代碼及HAL庫使用UART_HandleTypeDef huart1;生成的代碼中有聲明一個USART處理的結構體HAL庫中串口的數據收發有四個函數HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_tSize, uint32_t Timeout);HAL_StatusTypeDef HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_tSize, uint32_t Timeout);指針huart 指向我們之前定義的USART處理結構體, 我們將在函數中對結構體中的參數進行操作。pDate 是我們自己定義的數據發送接收緩存, Size 發送接收數據個數, Timeout 超時持續時間。UART狀態的結構體:我們在發送接收函數中要經常對USART的狀態進行判斷,以便我們對函數結構體中的參數進行操作
標簽:
stm32cubemx
串口
上傳時間:
2022-06-22
上傳用戶:shjgzh