OpenEdv-开源电子网

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

ucosIII创建一个存储分区,为什么存储块一开始就有数据呢

[复制链接]

24

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
219
金钱
219
注册时间
2014-1-7
在线时间
16 小时
发表于 2015-5-24 01:48:21 | 显示全部楼层 |阅读模式
5金钱

创建一个存储分区,为什么存储块一开始就有数据呢,并且初始化后FreeLIstPtr=0x200033E4,也就是说他的第一个存储块已经被占用,然后我往0x20003380地址写数据(假如0x01),写完一个字节后FreeLIstPtr=0x20003381,这似乎也对的,但是再写后面字节的时候FreeLIstPtr=0x20003381这个地址就不会变化了,很奇怪,请原子哥及各位大神指点,谢谢!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-5-24 11:46:49 | 显示全部楼层
UCOSIII中存储块要连成一个表,所以每个存储块会保存下一个存储块的地址,一共4占用4个字节!所以说UCOSIII中每个存储块大小不应该小于4字节,你在使用的话完全不用管这个的。
开往春天的手扶拖拉机
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-5-24 11:50:44 | 显示全部楼层
还有FreeListPtr指向的是当前空闲存储块链表中第一个存储块的地址,你现在一直在使用一个存储块这个地址肯定不会变了!你试着重新申请一个存储块看看FreeListPtr会不会变化!
开往春天的手扶拖拉机
回复

使用道具 举报

24

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
219
金钱
219
注册时间
2014-1-7
在线时间
16 小时
 楼主| 发表于 2015-5-25 08:34:45 | 显示全部楼层
我试过的,下个存储块freelistptr也不会变化,就奇怪在这
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-5-25 12:47:13 | 显示全部楼层
回复【4楼】wtch519361:
---------------------------------
那就不知道你的怎么回事了。
开往春天的手扶拖拉机
回复

使用道具 举报

24

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
219
金钱
219
注册时间
2014-1-7
在线时间
16 小时
 楼主| 发表于 2015-5-25 12:57:49 | 显示全部楼层
回复【3楼】zuozhongkai:
---------------------------------
我知道您说的意思,我把分区分成12个存储块,每个存储块为100个字节,如上图所示,编译器分配之后第一个存储首地址是0x20003380,这时FreeListPtr指向0x20003380,如果我把第一个存储块的100个字节写满之前,FreeListPtr就一直指向第二个空闲存储块地址0x200033E4,NbrFree的值应该会减一,但是我的测试结果是写完第一存储块的第一个字节,FreeListPtr就变成0x20003381,然后再怎么写他就一直是这个值,NbrFree的值也不变,源文件已上传,麻烦帮我看 一下
回复

使用道具 举报

24

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
219
金钱
219
注册时间
2014-1-7
在线时间
16 小时
 楼主| 发表于 2015-5-25 13:01:15 | 显示全部楼层
测试代码部分

模块化后.rar

8.8 MB, 下载次数: 73

回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-1 14:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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