打印

430FR单片机写FRAM锁死

[复制链接]
3038|50
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qq4988|  楼主 | 2017-1-20 18:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MSP430FR系列单片机,写了个小程序,写入了几个数据到FRAM,第一次仿真时,读出数据与写入数据一致,然后退出,再次仿真,就找不到硬件了,这是什么问题,哪位路过的大神可以指点一下。
下面是部分程序
#define DATA_DATA_BASE           0XFF80

uchar *FRAM_Byte_ptr,*FRAM_Byte_ptr_bak;

FRAM_Byte_ptr = 0;
    FRAM_Byte_ptr_bak = 0;

    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0xAA;
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0xBB;

    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x30;
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x30;
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x30;   
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x31;

    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x0A;
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x0A;

    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x00;
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x46;

    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x00;
    *((FRAM_Byte_ptr++)+DATA_DATA_BASE) =  0x00;

相关帖子

沙发
dirtwillfly| | 2017-1-20 18:46 | 只看该作者
不清楚你的msp430具体型号,如果写的存储地址不涉及特殊功能的地址范围,不会影响仿真的。

使用特权

评论回复
板凳
qq4988|  楼主 | 2017-1-20 22:24 | 只看该作者
dirtwillfly 发表于 2017-1-20 18:46
不清楚你的msp430具体型号,如果写的存储地址不涉及特殊功能的地址范围,不会影响仿真的。
...

MSP430FR6879单片机,定义的FRAM首地址是#define DATA_DATA_BASE           0XFF80 ,手册上也是这样的,然后我做了一个变量递增,就是程序上面那样做的,做完后就完蛋了

使用特权

评论回复
地板
火山LF| | 2017-1-21 11:45 | 只看该作者
你起码还写进去成功了,我的测试了一下,全是FFFFFFFFF,我也是醉了

使用特权

评论回复
5
yujielun| | 2017-1-21 16:32 | 只看该作者
flash解锁了吗

使用特权

评论回复
6
yujielun| | 2017-1-21 16:34 | 只看该作者
这个fr的单片机没用过,不知道有没有flash的存储锁。

使用特权

评论回复
7
uytyu| | 2017-1-21 17:45 | 只看该作者
重新复位电路也不能烧写吗?

使用特权

评论回复
8
uytyu| | 2017-1-21 17:47 | 只看该作者
看看你的地址是怎么写的

使用特权

评论回复
9
qq4988|  楼主 | 2017-1-21 18:46 | 只看该作者
uytyu 发表于 2017-1-21 17:47
看看你的地址是怎么写的

地址怎么了

使用特权

评论回复
10
qq4988|  楼主 | 2017-1-21 18:49 | 只看该作者
uytyu 发表于 2017-1-21 17:45
重新复位电路也不能烧写吗?

无法再次进入仿真,提示找不到设备

使用特权

评论回复
11
dirtwillfly| | 2017-1-21 19:56 | 只看该作者
qq4988 发表于 2017-1-20 22:24
MSP430FR6879单片机,定义的FRAM首地址是#define DATA_DATA_BASE           0XFF80 ,手册上也是这样的, ...

方便把你的工程上传一下吗?

使用特权

评论回复
12
qq4988|  楼主 | 2017-1-22 08:00 | 只看该作者
dirtwillfly 发表于 2017-1-21 19:56
方便把你的工程上传一下吗?

知道问题在哪了,是地址写错了,把原来的数据给改了,像这种情况,如何恢复呢

使用特权

评论回复
13
qq4988|  楼主 | 2017-1-22 08:07 | 只看该作者
dirtwillfly 发表于 2017-1-21 19:56
方便把你的工程上传一下吗?

把原来向量部分的标志给修改了,像这种情况,单片机还能恢复吗

使用特权

评论回复
14
dirtwillfly| | 2017-1-22 08:24 | 只看该作者
qq4988 发表于 2017-1-22 08:07
把原来向量部分的标志给修改了,像这种情况,单片机还能恢复吗

理论上是可以恢复的,但我没实验过。。。因为我从没动过中断向量的地址和标志位

使用特权

评论回复
15
plsbackup| | 2017-1-22 22:15 | 只看该作者
查看一下你的工程文件看看

使用特权

评论回复
16
plsbackup| | 2017-1-22 22:19 | 只看该作者
FRAM的读写怎么提示的?

使用特权

评论回复
17
qq4988|  楼主 | 2017-1-23 08:13 | 只看该作者
plsbackup 发表于 2017-1-22 22:19
FRAM的读写怎么提示的?

没有提示,原因是写错地址了,像这种情况还能恢复吗

使用特权

评论回复
18
tongbu2015| | 2017-1-23 19:47 | 只看该作者
程序写飞了、?就单独做数据处理的啊

使用特权

评论回复
19
fengm| | 2017-1-23 22:53 | 只看该作者
楼主找到了这个原因了吗

使用特权

评论回复
20
fengm| | 2017-1-23 22:53 | 只看该作者
读写fram的时候需要使能吗?

使用特权

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

本版积分规则

56

主题

781

帖子

5

粉丝