打印

分享:stm32 keil编译错误体验心得

[复制链接]
3756|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
拿起书本|  楼主 | 2012-3-19 13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这几天在移植ucosii,其实关于stm32的ucosii网上有很多例子,但是想改成自己用的芯片型号以及把自己的程序加进去还得做些改动,今天就遇到一些麻烦,而且与以前遇到的境况相同。
  有时编译器会在不知名的情况下自己调用keil自带的stm32固件库,导致新库和旧库版本不兼容出现很多错误,但是明明没有写调用自带库的语句却为什么keil会强行从自带库中加载文件导致出错,这个问题以前整了我好多次,今天终于记住了,原因归结于keil的编译器在查找C/C++类文件时要求用户指明搜索路径,而且它不会自动搜索该路径下的子目录,如果所需要的文件在指定路径中无法找到,编译器就会在自带库中搜索。今天遇到很多错误首先就是由于包含路径不全,这路径最好按照一个简单的顺序,还有就是如果自己想用st库函数自己建立一个工程,强烈建议把stm32 官方库的文件将组织结构简化成2个文件,一个是将所有核心文件直接放在CMSIS文件夹下,另一个将库的所有头文件和C文件放在SRC文件夹下,这样在创建工程后会带来很多方便。比如指定工程文件包含路径的时候就很方便,因为关于库的文件夹只有2个,两下就填好了,但是如果按照官方的文件组织结构就需要在工程中添加很多次,而且可能漏掉某个路径,因为路径不支持自动搜索目录。
  今天最后遇到的问题提示是:
startup_stm32f10x_hcl.0指不到main函数,很郁闷,最后重建立工程,简化文件结构,没有再出错。
沙发
gaochy1126| | 2012-3-19 16:56 | 只看该作者
很好,感谢楼主分享自己成功道路上的经验!!!!

使用特权

评论回复
板凳
logokfu| | 2012-3-19 17:32 | 只看该作者
这个我之前我也体会到了,呵呵

使用特权

评论回复
地板
xsgy123| | 2012-3-19 18:24 | 只看该作者
很不错的心得体会

使用特权

评论回复
5
yybj| | 2012-3-19 18:35 | 只看该作者
错误心得总结的很好,对keil编译调试应该很有用

使用特权

评论回复
6
tianli1980| | 2012-3-26 11:26 | 只看该作者
希望多多传一些经验,心得,便于大家互相学习,共同进步。谢谢了:handshake

使用特权

评论回复
7
jiangsai| | 2012-7-16 10:34 | 只看该作者
那个冲突的问题该怎么解决呢?

使用特权

评论回复
8
2546522197| | 2014-10-9 16:56 | 只看该作者
谢谢楼主

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:好好学习,天天向上!

519

主题

4195

帖子

31

粉丝