/********看了一下感觉TC264的串口好复杂呀,平时还基本用不到,发数据直接上逐飞配置好的printf就行,看摄像头图像也有相应的函数一步到位,就先不研究了,权当一个stm32串口回忆篇就好了*****/
#include "isr_config.h"
这是一个设定优先级的头文件
stm32回顾:
要先在cube中选择心仪的串口开启异步模式并进行相关配置
并使能中断
发送函数
HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);
参数说明: 句柄 发送内容储存地址 字节长度 最大时间限制
发送中断
HAL_UART_Transmit_IT(&huart1,txDataBuffer,sizeof(txDataBuffer));
中断回调函数
void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
接收中断
HAL_UART_Receive_IT(&huart1,rxDataBuffer,sizeof(rxDataBuffer));
回调函数
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
if( huart == &huart1)
{
//do something
HAL_UART_Receive_IT(&huart6,rxDataBuffer,sizeof(rxDataBuffer));
//重新接收
}
}
重定向
#include “stdio.h”
extern UART_HandleTypeDef huart1;
//在user code begin 4 和 user code end 4 之间写 重定向函数
int fputc(int ch, FILE *f)
{
HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);
return ch;
}
并记得勾选MicroLIB
不过在TC264中逐飞已经帮我们重定向过了,所以直接无脑 printf(" ") 就行