KEIL5--Error: L6915E: Library reports error: __use_no_semihosting was requested报错解决方法

发布时间 2023-04-23 14:22:32作者: moluqitu

__use_no_semihosting was requested:要求不使用半主机模式。

 比较简单的一个解决方法就是点击“魔术棒” ,在Target标签下有个Use MicroLIB,勾选Use MicroLIB,再编译就不会报错了。

”Use MicroLIB”,这是KEIL自带的一个简易的库,使用Use MicroLIB微库不需要强调不使用半主机(no semihosting)模式。

要想修改用printf函数输出到指定串口,可以通过修改usart.c中的重定义fputc函数代码来改变输出到指定串口:

int fputc(int ch, FILE *f)
{      
    while((USART1->SR&0X40)==0);//循环发送,直到发送完毕   
    USART1->DR = (u8) ch;      
    return ch;
}

如果使用串口2,可以修改while((USART1->SR&0X40)==0);和USART1->DR = (u8) ch;中的USART1为USART2。