在任何地方都有c ++或c代码可以帮助我在keil uvision 5中使用printf作为stm32f4-eval2板吗?我知道你必须重新开始使用uart和usart,但是即使在我在网上找到的网站的帮助下我也无法做到这一点。
我希望能够使用debug printf viewer。
我尝试了以下链接但不起作用:http://www.keil.com/support/man/docs/ulinkpro/ulinkpro_trace_itm_viewer.htm
答案 0 :(得分:1)
如果您想通过UART进行打印或者想通过ITM调试通道进行打印,则不是非常具体。对于ITM来说,它非常简单。创建包含以下内容的文件,并确保在调试连接上启用了SWO跟踪:
#include <stdio.h>
/* Replace next line: Include the device system header file here */
#error "device include file missing"
/* e.g.: #include "STM32F4xx.h" */
#pragma import(__use_no_semihosting_swi)
volatile int ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* CMSIS Debug Input */
int fputc(int c, FILE *f) {
return (ITM_SendChar(c));
}
int fgetc(FILE *f) {
while (ITM_CheckChar() != 1) __NOP();
return (ITM_ReceiveChar());
}
确保勾选目标选项中的“使用MicroLib”选项 - >目标