OpenEdv-开源电子网

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

原子哥,参考开发板移植ucos出现的困惑

[复制链接]

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
发表于 2015-3-9 20:09:37 | 显示全部楼层 |阅读模式
5金钱
移植这个整整搞了两天,都没有搞明白为什么,真为自己的智商感到着急
1,”探索者实验例程55 ucos实验1--任务调度“里面 是不是必须在MDK开启FPU功能?我移植后,当我开启FPU时

编译不会出错,
不开启时

会编译出错,出错信息如下


2,当开启了FPU,编译正常后,我按照实验例程编写程序进行测试,结果出现蛋疼的问题,不知道为什么。情况如下,
当我开启FPU,但不选择微库时

,程序会死在OSStart,进入hardfult。
当我当我开启FPU,并选择微库时

程序运行正常。
3,我的代码中没有使用printf。我使用的是MDK5.13,是否跟这个有关?
4,奇怪的是,直接用MDK5.13打开原子哥的”探索者实验例程55 ucos实验1--任务调度“工程,这个工程FPU默认是开启的。不选择微库时,程序可以正常运行,但是选择了微库后,程序会进入hardfault,跟我移植的程序的情况刚好相反。

最佳答案

查看完整内容[请看2#楼]

MDK5.14版本,直接编译下载,没有任何问题.(SYSTEM/SYS里面要拷贝几个文件进去,否则报错,参见源码)
持续而安静地投入
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165452
金钱
165452
注册时间
2010-12-1
在线时间
2113 小时
发表于 2015-3-9 20:09:38 | 显示全部楼层
MDK5.14版本,直接编译下载,没有任何问题.(SYSTEM/SYS里面要拷贝几个文件进去,否则报错,参见源码)

实验56 UCOSII实验1-任务调度.rar

291.01 KB, 下载次数: 136

我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165452
金钱
165452
注册时间
2010-12-1
在线时间
2113 小时
发表于 2015-3-9 22:07:02 | 显示全部楼层
你用MDK5.13直接打开我们的例程,里面的这些选项,是和你上面列举的一样么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
 楼主| 发表于 2015-3-10 09:13:54 | 显示全部楼层
直接点开的设置是这样的

持续而安静地投入
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
 楼主| 发表于 2015-3-10 09:16:11 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
直接打开的设置,如2楼所示
持续而安静地投入
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
 楼主| 发表于 2015-3-10 09:47:08 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
刚刚试了下,我发现原子哥的“探索者实验例程55 ucos实验1--任务调度”例程,在设置里面勾选了microlib,编译没问题,运行时会进入hardfault,是因为microlib不支持操作系统的原因吗?奇怪的是,我移植的程序刚好相反,要勾选microlib,才能正常运行,为什么?
持续而安静地投入
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
 楼主| 发表于 2015-3-10 19:58:19 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥,我把你的例程os_cpu_a.asm文件里的与FPU相关的指令屏蔽掉,而工程里面的FPU开关是打开的,这时我的程序运行到任务切换的时候会出错吗?求回复。。。
持续而安静地投入
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
 楼主| 发表于 2015-3-11 09:15:06 | 显示全部楼层
回复【7楼】正点原子:
--------------------------------
在MDK5.13一样直接编译下载没有问题,我想问的是为什么原子哥的例程把微库的设置勾上后会死在OSStart,进入hardfault,参考4楼。
持续而安静地投入
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
 楼主| 发表于 2015-3-11 09:27:53 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
谢谢原子哥特地做实验!这个奇怪问题先不管了,把移植程序中与fpu有关的语句去掉,先不用FPU功能了。
持续而安静地投入
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165452
金钱
165452
注册时间
2010-12-1
在线时间
2113 小时
发表于 2015-3-11 23:02:06 | 显示全部楼层
回复【8楼】磨剑:
---------------------------------
这个我也不知道.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-19 12:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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