口轮询方式发送函数HAL_UART_Transmit_IT()的具体执行过程及函数调用情况
时间: 2023-12-01 08:24:30 浏览: 153
stm32 HAL UART2 中断发送接收.zip_STM32 uart2 串口_aheaddbb_arm_dot_pro
5星 · 资源好评率100%
口轮询方式发送函数HAL_UART_Transmit_IT()的具体执行过程如下:
1. 调用该函数时,将发送数据缓存区的指针、数据长度和UART设备句柄作为参数传入。
2. 函数内部会首先判断当前是否有其他发送操作正在进行,如果有则返回错误码。
3. 接下来将发送标志位置为1,表示当前有发送操作正在进行。
4. 将发送缓存区的指针和数据长度保存到UART设备句柄中。
5. 调用HAL_UART_Transmit_IT()函数,开始发送第一个字符。
6. 发送完成后,中断处理函数会被调用,继续发送下一个字符,直到所有字符都发送完成。
7. 所有字符发送完成后,将发送标志位清零,表示发送操作已完成。
函数调用情况如下:
1. 调用HAL_UART_Transmit_IT()函数,开始发送第一个字符。
2. 发送完成后,中断处理函数被调用,调用HAL_UART_IRQHandler()函数。
3. HAL_UART_IRQHandler()函数会检查发送中断标志位,如果为1,则继续发送下一个字符,直到所有字符都发送完成。
4. 发送完成后,将中断标志位清零,并调用回调函数,通知应用程序发送完成。
阅读全文