OpenEdv-开源电子网

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

求助原子哥一个比较奇怪的问题。。。调试时变量赋值不成功

[复制链接]

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
50
金钱
50
注册时间
2013-7-27
在线时间
3 小时
发表于 2014-6-17 20:37:43 | 显示全部楼层 |阅读模式
5金钱
在项目里使用了ucos III,下载后运行不正常,就调试看看。结果出现一个很奇怪的现象:
代码里用OSTaskCreate()创建了几个任务,大概的代码如下:
OSTaskCreate();
OSTaskCreate();
OSTaskCreate();
OSTaskCreate();
OSTaskCreate();
OSTaskCreate()

.......

调试时,如果直接运行到这几个创建任务的函数之后,查看各个任务的TCB,发现有一大半没有初始化成功,TCB结构里的各个变量还是全0,每运行一个OSTaskCreate(),检查其返回,都是返回的成功的值。然后我又单步运行,一次运行一个OSTaskCreate(),运行完所有的OSTaskCreate()之后,查看各个TCB,这次都设置成正确的值了。。。然后调试中还遇到一个更奇怪的情况,在中断中,需要增加中断嵌套计数OSIntNestingCtr,我让程序运行到中断里,然后单步运行OSIntNestingCtr++语句,运行后OSIntNestingCtr居然木有增加。求原子指教啊。。。这是MDK开发环境编译的代码有问题么?
我还有另外一个工程,和这个代码差不多,就是少创建了一个任务,有的任务的代码不一样,其他和这个基本都一样,但是就运行正常,每次各个任务的TCB在创建时都能正确复制。。。

最佳答案

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

回复【2楼】正点原子: --------------------------------- 坑啊。。。。我把代码复制到没问题的那个工程里,重新编译了就正常了。蛋疼无比啊
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
50
金钱
50
注册时间
2013-7-27
在线时间
3 小时
 楼主| 发表于 2014-6-17 20:37:44 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
坑啊。。。。我把代码复制到没问题的那个工程里,重新编译了就正常了。蛋疼无比啊
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-6-17 22:47:47 | 显示全部楼层
你的MDK优化等级设置的多少?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
50
金钱
50
注册时间
2013-7-27
在线时间
3 小时
 楼主| 发表于 2014-6-18 09:08:43 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
level 0,我怕高等级出问题,就开的最低的
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-7 05:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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