我们先使用hal生成一个代码
然后打开keil 并且在主函数中包含stdio.h库(一定要包含,重要!!!!)
hal库要是通过串口发送数据一般是阻塞式的,但是我们要用printf 发送的话就需要自己写一个函数(如图)
代码如下
int fputc(int ch, FILE *f)
{
HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);
return ch;
}
int fgetc(FILE *f)
{
uint8_t ch = 0;
HAL_UART_Receive(&huart1, &ch, 1, 0xffff);
return ch;
}
这个时候我们就可以在主函数里面写printf然年在串口中查看了
此时很多很多小伙伴按照我的操作可能会出现以下情况,明明全部按照我的操作去弄的,但是没有任何现象,其实这个很简单,我们只需要勾选一个地方就可以了
将 Use MicroLIB这一栏勾选上就可以看见串口上会显示了。