一、串口重定向

发现正常发送函数可用,但使用重定向不能使用,检测keil下载设置中

upload successful

这里要打勾

二、HAL库串口接收 结束字符

在库函数中就很简单,接收一个字节就进入串口中断去检测其数据,写通信协议很方便,如下

upload successful

但是在HAL库中他进行了包装,增加了发送中断,和接收回调,直接接受完指定长度的数据后进入回调函数,就没必要按库函数那么写了

upload successful

当然非要按库函数那么写,可以在中断复位函数的HAL_UART_Receive_IT(&huart2, (uint8_t *)&RxBuffer, LENGTH);LENGTH长度配置为1,这样接收一个字节就进入回调函数了,就跟库函数一样了,但显然这样就没意义了。没有发挥HAL库的方便。

我在实际使用后,回调函数这个真难用啊,只能接收长度,不能定义结束字符,还得再找到USART1_IRQHandler(void) 函数自己重新定义。不然只能把长度改为1,当中断函数使了。。。

upload successful

看来得学习DMA了呀!