4 回答
皈依舞
TA贡献1851条经验 获得超3个赞
没办法输出,所以keil中使用printf函数没有意义,可是又有许多程序使用,原来是为了调试,对printf函数进行了重定向,代码如下:
int fputc(int ch,FILE *f)
{
/* Write a character to the USART */
USART_SendData(USART2, (unsigned char) ch);
/* Loop until the end of transmission */
while(USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET);
return ch;
}
这样就把本来应该输出到屏幕的字符输出到串口中,使用串口调试助手就可以看到相关的调试信息,为什么keil没有输出界面呢,因为keil本身具有非常强大的调试功能,使用debug模式可以让代码依次执行,你可以看到每一条代码的执行过程和变量的变化过程,更不用说还有寄存器的操作等等,因此keil就没有输出界面
添加回答
举报
0/150
提交
取消