STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向

STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向


运行环境

  • Windows10
  • STM32CubeMX___Version 5.0.0
  • Keil5(MDK5)___Version 5.15

简介

本例程主要讲解如何通过串口发送数据和重定向printf


STM32CubeMx基本配置

基础配置过程请参考 STM32CubeMx+Keil5开发之路—0准备篇


STM32CubeMx USART1配置

1——点击USART1进行设置
2——模式选择Asynchronous异步传输
3——可以看到右边自动出现了Tx和Rx
4——可以自行设置波特率,停止位,校验位等参数

STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向

代码修改

  • 1——选择main.c文件
  • 2——在USER CODE中添加如下代码
int fputc(int ch, FILE *f)
{
    HAL_UART_Transmit(&huart1, (uint8_t *)&ch,1, 0xFFFF);
    return ch;
}
STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向

  • 在主循环中添加如下代码
	  int num=99;
	  char tx_buf[]={"HelloWorld!"};
	  
	  printf("\nnum = %d\n",num);
	  HAL_Delay(1000);
	  HAL_UART_Transmit(&huart1, (unsigned char*)tx_buf,11,10);
	  HAL_Delay(1000);
STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向

  • 烧录代码后打开出口调试助手
  • 正确的话会看到如下输出
STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向

小结

串口常用场合

  • 打印调试
  • 进行串口通信
  • 对某些芯片的读取

本节主要讲串口发送和printf的重定向,没有对串口接收进行讲解,后续可能会在DMA章节一起讲解,敬请期待。


据说我的红包码开过光!扫一扫运气贼好! ^_^ 撰写不易,望打赏一杯茶水钱。

你的鼓励就是我前行的动力!

STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向STM32CubeMx+Keil5开发之路—3发送USART数据和printf重定向