调用printf函数 编译时提示Error[Pe020]: identifier "FILE" is undefined
我基本上都是按照串口例程7改写的 想用printf输出AD采样出来的电压值 printf("ADC = %X Volt = %d mv\r\n", ADC_ConvertedValue, ADC_ConvertedValue*3300/4096);
不知道问题会出在哪里,高手帮帮忙!谢谢!!!!
/* Private define ------------------------------------------------------------*/
#ifdef __GNUC__ /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf set to 'Yes') calls __io_putchar() */ #define PUTCHAR_PROTOTYPE int __io_putchar(int ch) #else #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) #endif /* __GNUC__ */
/************************************************* 函数: void Put_String(void) 功能: 向串口输出字符串 参数: 无 返回: 无 **************************************************/ void Put_String(u8 *p) { while(*p) { USART_SendData(USART1, *p++); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET) { } } }
/***************************************************** 函数:PUTCHAR_PROTOTYPE 功能: 重定向C库printf函数 参数: 无 返回: 无 *****************************************************/ PUTCHAR_PROTOTYPE { USART_SendData(USART1, (u8) ch);//发送一字节数据 while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET) { }//等待发送完成 return ch; }
我用的开发环境是IAR4.42 工具是ST-LINK-II |