OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3396|回复: 1

解决了UCOSIII+LWIP的一个问题,但是有一个地方,知其然,不知其所以然,请大家讨论

[复制链接]

6

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2014-12-18
在线时间
9 小时
发表于 2015-9-2 02:35:31 | 显示全部楼层 |阅读模式
我最近在做UCOSIII+LWIP的程序,在做程序精简的时候,因为删除了一下代码:
#if 1
#pragma import(__use_no_semihosting)             
//标准库需要的支持函数                 
struct __FILE 

int handle; 
}; 

FILE __stdout;       
//定义_sys_exit()以避免使用半主机模式    
_sys_exit(int x) 

x = x; 

//重定义fputc函数 
int fputc(int ch, FILE *f)
{
// while((USART1->SR&0X40)==0);//循环发送,直到发送完毕   
// USART1->DR = (u8) ch;      
return ch;
}
#endif
导致程序无法进入gomain,这让我郁闷了一周,现在找到问题了。但是,我不明白,这段代码一定需要吗?难道和.s文件里面的某个东西有关联吗?请同学们踊跃的讨论哈。这段代码,我觉得,没有什么用,为什么必须要要。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

1041

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3696
金钱
3696
注册时间
2011-5-23
在线时间
2008 小时
发表于 2015-9-2 09:40:29 | 显示全部楼层
有代码引用了 printf等libc里面的函数,那么相应的桩也要实现。
RT-Thread RTOS 音频,WIFI,蓝牙
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 18:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表