|
使能以下代码重定向prinft为什么,串口软件都是1024个字节为单位接收的,在 / Infinite loop / / USER CODE BEGIN WHILE / while (1) { / USER CODE END WHILE / printf("1"); HAL_Delay(50); / USER CODE BEGIN 3 / } / USER CODE END 3 / } 这里需要循环1024次串口才能接收到,(从串口软件这边看每次数据都是1024递增的) /***** 重新编写printf函数 **/ ifdef GNUCdefine PUTCHAR_PROTOTYPE int __io_putchar(int ch)define GETCHAR_PROTOTYPE int __io_getchar(FILE *f)elsedefine PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)define GETCHAR_PROTOTYPE int fgetc(FILE *f)endif / GNUC /PUTCHAR_PROTOTYPE { HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF); return ch; } GETCHAR_PROTOTYPE { uint8_t ch = 0; HAL_UART_Receive(&huart1,(uint8_t *)&ch, 1, 0xFFFF); if (ch == '\r') {
} return __io_putchar(ch); } /*****/ |
| 在STM32CubeIDE用户手册UM2609的2.2.2.1章节专门介绍了Printf的实现过程,你参考下。那里谈到了多种方式。如果基于UART输出的话,其实完全不必理会那些C库函数,生成字符或字符串后直接通过UART发送即可,我平常就是这样的操作。 |
STM32CubeIDE for VS Code使用问题咨询?
感谢大佬的指点,问题解决
H7demo板下载点灯没反应
IDE下载程序问题
更新了一下VScode,ST最新版本是3.6.4
STM32CubeID V1.19.0 无法识别串口设备
cubeIDE编译后如何能把部分代码存放到内部Flash,剩下的存放在外部Flash?
cubeide的代码怎么编译到内部+外部FLASH里面去
有人用过正式版的STM32CubeIDE for Visual Studio Code了吗?
配置CubeMX后(STM32H723VGT6),自动生成的代码,编译报错
微信公众号
手机版