微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI无线射频设计 > cc1310 flash 记录重启次数

cc1310 flash 记录重启次数

时间:12-23 整理:3721RD 点击:

Hi,TI的朋友们:

      我想用CC1310 的flash记录重启的次数,用两个字节表示,在第一次下载程序的时候调用写flash函数能够成功的写入flash

,然后进行重启,读出上一次的重启值+1,再调用写flash函数却失败了。不知道是什么原因?

         

因为已经有数据,写操作之前需要擦除吧!

没错,flash操作是以page为单位的,要写就要写一个page,而且写之前要擦除该page再写

怎么操作呢?

该怎么办呢?一次性写上4KB的页面?

试过在page 30写之前将一个页面全部擦除,然后写入,这样是可以写入的

你可以这样做:当第一次开始时擦除此page,并将写入地址设置为该page的起始地址如addr_wr_index = WR_FLASH_ADDR_STA,以后每次记录时先读取写入位置addr_wr_index,再在addr_wr_index+1的位置写入一个字节,相当于每写入一个字节重启次数加1.这样只能记录4096次,另一方法,按bit写入,一个字节的位置可以写入8次,即可以记录4096*8的次数。记住写入只能将1写为0。

这样的做法可以,如果还存其他的数据是不太好的。可以在全部擦除之前进行读取,然后修改相应的位置,在统一的存入。相当于统一读出,统一存入。我已经这样实现了

不是统一写入,是单独写入此位置,注意不能同一位置重复就行

上一篇:cc3200
下一篇:cc1310 信道问题

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top