在SMT32CubeIDE 中配置printf串口输出及在Freertos中的注意点
- 在 STM32CubeIDE “Project”->“Properties”->“C/C++ Bulider”->“Settings”->“Tool Settings”->“MCU Settings” 下照图勾选
2.在CubeIDE中配置好usart后,在usart.c下加入代码
/* USER CODE BEGIN 0 */
#include “stdio.h”
#ifdef GNUC
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
PUTCHAR_PROTOTYPE
{
// 注意下面第一个参数是&huart1,因为cubeide配置了串口1自动生成
HAL_UART_Transmit(&huart1, (uint8_t*)&ch, 1, HAL_MAX_DELAY);
return ch;
}
#endif
/* USER CODE END 0 */
3.若是在CubeIDE中配置了freertos,要在CubeIDE中配置堆栈至少256,并且先要在main中执行一次printf才行,否则直接Hard Fault异常。