添加开启接收中断函数
/* USER CODE BEGIN 2 */
//开启接收中断
//1:单字节接收即产生中断 &aRxBuffer:缓冲区
HAL_UART_Receive_IT(&huart3, (uint8_t *)&aRxBuffer, 1);
//Uart3_RxBuff:buff长度多字节接收才产生中断 Uart3_RxBuff为接收缓冲区
//HAL_UART_Receive_IT(&huart3, Uart3_RxBuff, sizeof(Uart3_RxBuff));
/* USER CODE END 2 */
此处需勾选
下方贴上重定向代码
/**
* 函数功能: 重定向c库函数printf到DEBUG_USARTx
* 输入参数: 无
* 返 回 值: 无
* 说 明:无
*/
int fputc(int ch, FILE *f)
{
HAL_UART_Transmit(&huart3, (uint8_t *)&ch, 1, 0x00ff);
return ch;
}
// HAL_UART_Transmit 是同步函数,会阻塞直到数据发送完毕。
//HAL_UART_Transmit_IT 是异步函数,会立即返回,数据发送完成后会触发中断回调函数
/**
* 函数功能: 重定向c库函数getchar,scanf到DEBUG_USARTx
* 输入参数: 无
* 返 回 值: 无
* 说 明:无
*/
int fgetc(FILE *f)
{
uint8_t ch = 0;
HAL_UART_Receive(&huart3, &ch, 1, 0xffff);
return ch;
}
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务