stm32HAL庫中串口部分各個傳輸和接收函數分析


前段時間在項目的HAL庫串口配置區耗費了很長時間(其實我是為了研究hal庫對於stm32串口內部函數的執行過程以及對於重寫回調函數和信號量的執行效率)


HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);//發送數據,阻塞發送Timeout為溢出時間
HAL_StatusTypeDef HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);//接收數據,阻塞接收Timeout為溢出時間
HAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);//發送中斷
HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);//接收中斷
HAL_StatusTypeDef HAL_UART_Transmit_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);//串口DMA發送
HAL_StatusTypeDef HAL_UART_Receive_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);//串口DMA接收
HAL_StatusTypeDef HAL_UART_DMAPause(UART_HandleTypeDef *huart);//串口DMA暫停
HAL_StatusTypeDef HAL_UART_DMAResume(UART_HandleTypeDef *huart);//串口DMA恢復
HAL_StatusTypeDef HAL_UART_DMAStop(UART_HandleTypeDef *huart);//串口DMA停止

回調函數自己按照官方的寫就可以了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM