MSP430 5xx-flash Beyond the range of 64K addresses to read a

发布时间:2021-06-05

5xx-超出64 k地址的flash 读和写和segment A 的读写理解

MSP430 5xx系列 Flash认识

查找了好多资料都是MSP430 1,2,4系列的flash讲解,好像没有5系列的东西。5系列和别的系列有些区别下面是自己的一些体验,给大家分享出来。

在5系列 flash操作我遇到的问题:

1.Flash可达到256K,如果需要访问0xFFFF以外的地址需要注意。

程序定义

char * Flash_ptr; //定义指针

Flash_ptr = (char *) 0x10000; //将指针指向0x10000这个地址(超出0xFFFF)

Warning[Pe1053]: conversion from integer to smaller pointer C:\Documents and Settings\lixiaobo\桌面\MSP430-FLASH\flash test\main.c 72

322 bytes of CODE memory

257 bytes of DATA memory (+ 6 bytes shared)

Errors: none Warnings: 2

Done. 0 error(s), 2 warning(s)

错误原因:指针变量最大0-0xffff即64K空间,当超过时需要将 Data Model选为Large模式 解决办法:options-> General options ->Target ->Data Model ->Large

当要进行大于0xffff地址的flash读写时就需要:options-> General options ->Target ->Data Model ->Large,然后可以根据不同的flash擦写要求配置:

如下图所示, options-> FET Debugger->Download:

在Flash erase 栏目中,有三个选项,分别是 1. 只擦除主存储区 2. 擦除主存储区和信息区

3. 保留未改变的存储区。 //重新Download时可以依然看见以前的数据 按照你的需求,选择即可。

2.对segment A的使用时需要注意。

精彩图片

热门精选

大家正在看