wjliangjie123 发表于 2014-9-16 10:10:57

TMS320F28034数据存flash问题

我用的CPU是TMS320F28034,在操作面板上通过“+”-“”更改参数数据,设完之后需要立刻保存在flash里,我看了TI的例程,先是通过Flash_Erase(a,b) 将一块扇区擦除,然后再写入数据,但是Debug后发现擦除扇区的程序消耗的时间有几百毫秒,但是我的要求是必须要在几十毫秒之内完成擦写数据,请问有没有好的方法。还有在擦写过程中如果有中断存在会影响擦写吗,我在擦写之前必需要先把中断关掉?

steaven2000 发表于 2014-9-16 11:32:06

这不是有病吗?明明一片几毛钱的24C02就能搞定的事,非得折腾够呛!

wjliangjie123 发表于 2014-9-16 12:54:13

steaven2000 发表于 2014-9-16 11:32
这不是有病吗?明明一片几毛钱的24C02就能搞定的事,非得折腾够呛!

不是的 这个是参考其他公司的电路,对方并没有用额外的存储芯片

steaven2000 发表于 2014-9-16 13:32:27

wjliangjie123 发表于 2014-9-16 12:54
不是的 这个是参考其他公司的电路,对方并没有用额外的存储芯片

难道是为了防止存储的参数泄密?
不过一般来说你用API函数来执行Flash擦除、编程之类的操作时,执行这些动作的代码应该是要在RAM中运行的,而且TI要求是要关闭中断的。
但是关中断这么长时间,真的对你的系统毫无影响?另外,是否这样折腾,考虑到了Flash的寿命吗?

EngKing 发表于 2014-9-19 20:48:48

flash操作以页为单位,也就是说flash擦除要以页来擦除,如果楼主测试的是最小操作单位的话,那就是最小时间,没有其他的办法,同时,flash擦除也是有寿命的

小手冰凉 发表于 2014-9-19 20:56:10

代码有问题吧,内部flash读写都这么慢,dsp不是很快嘛?

wjliangjie123 发表于 2014-9-25 16:22:26

最后还是改方法了,用了一片24C02解决
页: [1]
查看完整版本: TMS320F28034数据存flash问题