MSP430F5529 FLASH

[复制链接]
4911|23
 楼主| starbitbit 发表于 2013-8-7 17:40 | 显示全部楼层 |阅读模式
    最近在用5529的FLASH,发现了一个问题:只能往0x10000以下的地址里面写东西,不管是information还是code memory都能写进去,但0x10000以上就不行了。 debug的过程中发现是指针的值给不到0x10000以上,即便是用TI的例程原封不动下到板子里也不行。。。求怎么解决?另外,如果不是指针的问题,求其他原因!
    PS:我是这么定义指针的--Flash_ptrD = (unsigned long *) 0x10000 这个定义方法是TI例程给出的,debug查看它的值,只有低16位,而没有其余高位。

 楼主| starbitbit 发表于 2013-8-7 17:41 | 显示全部楼层
自己顶一个。。
smilingangel 发表于 2013-8-7 17:58 | 显示全部楼层
楼主查下该单片机的flash的容量多大?是不是超了?
smilingangel 发表于 2013-8-7 17:59 | 显示全部楼层
还有一种可能就是该段flash被写保护,该段flash中单片机自身写有重要的参数的,不可修改的
 楼主| starbitbit 发表于 2013-8-7 18:31 | 显示全部楼层
smilingangel 发表于 2013-8-7 17:58
楼主查下该单片机的flash的容量多大?是不是超了?

容量是没有超,只是寻不到址,非常郁闷
 楼主| starbitbit 发表于 2013-8-7 18:35 | 显示全部楼层
smilingangel 发表于 2013-8-7 17:59
还有一种可能就是该段flash被写保护,该段flash中单片机自身写有重要的参数的,不可修改的 ...

它的code memory里一共有4个bank,我目前只是往bank B(0xc400~0x143FF)里写东西,如果从0xc400开始写一切正常,但从0x10000开始就不行
angerbird 发表于 2013-8-7 21:13 | 显示全部楼层
我也来凑凑热闹的啊,按照楼上的讨论的结果的,的确很难判定是什么原因了
angerbird 发表于 2013-8-7 21:14 | 显示全部楼层
不过建议楼主重新换一片单片机的再试试吧
dirtwillfly 发表于 2013-8-7 21:32 | 显示全部楼层
奇怪的问题
 楼主| starbitbit 发表于 2013-8-7 22:42 | 显示全部楼层
angerbird 发表于 2013-8-7 21:14
不过建议楼主重新换一片单片机的再试试吧

我和同学用两块不同的单片机,都是这个问题。。。
 楼主| starbitbit 发表于 2013-8-7 22:47 | 显示全部楼层
dirtwillfly 发表于 2013-8-7 21:32
奇怪的问题

对啊。。。我现在想试试直接把一大堆数据写成const,看能不能把那些空间给占了
dirtwillfly 发表于 2013-8-7 22:50 | 显示全部楼层
编译器设置里面,将DATA MODE设置为large就可以访问了,默认一般是small,只能访问64KByte空间。

评分

参与人数 1威望 +1 收起 理由
starbitbit + 1 很给力!

查看全部评分

 楼主| starbitbit 发表于 2013-8-7 23:08 | 显示全部楼层
dirtwillfly 发表于 2013-8-7 22:50
编译器设置里面,将DATA MODE设置为large就可以访问了,默认一般是small,只能访问64KByte空间。
...

太感谢了!我试试!!
 楼主| starbitbit 发表于 2013-8-7 23:23 | 显示全部楼层
本帖最后由 starbitbit 于 2013-8-7 23:24 编辑
starbitbit 发表于 2013-8-7 23:08
太感谢了!我试试!!

 楼主| starbitbit 发表于 2013-8-7 23:24 | 显示全部楼层
dirtwillfly 发表于 2013-8-7 22:50
编译器设置里面,将DATA MODE设置为large就可以访问了,默认一般是small,只能访问64KByte空间。
...

按你说的做了,确实是这个问题,并且要把code和data都改成large模式!求如何结贴。。。。
test1smore 发表于 2013-8-8 11:32 | 显示全部楼层
已经解决的问题,请点击帖子左上角的"我要结贴"结贴给分
lin@er 发表于 2013-8-8 13:20 | 显示全部楼层
学习了!
1119088796 发表于 2013-8-8 14:40 | 显示全部楼层
0x10000以上是控制段。
hwk612167 发表于 2013-8-8 16:16 | 显示全部楼层
starbitbit 发表于 2013-8-7 23:24
按你说的做了,确实是这个问题,并且要把code和data都改成large模式!求如何结贴。。。。 ...

code mode在哪里?
 楼主| starbitbit 发表于 2013-8-8 17:28 | 显示全部楼层
hwk612167 发表于 2013-8-8 16:16
code mode在哪里?

你用的什么IDE,ccs还是IAR
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

43

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部