做一款逆变器 打算将flash 最后一片区域做eeprom 现在有以下三个问题点
第一:调用flash api后,还要用initflash 函数么?
第二:因为擦除flash 要一个片区擦除,然后Program写入数据。
那能否设计时,初始化过程中先擦擦一片区域,然后写入部分数据,
在主程序运行时,如果收到串口数据,再根据串口数据在写入部分数据(不做擦除操作)
(我现在设计一款逆变器,想生产的时候将部分校准数据写入flash,然后使用过程中,如果需要再写入一些数据,通过串口操作写入,但是不知道会不会需要再次擦除flash,然后才能写入,这样子同时也会把生产时写入的数据擦除了)
第三:在第二所述,对应controlSUITE\libs\utilities\flash_api\2803x\v100a\doc中的文档中。我应该用Method A?Method B? Method C?Method D?中的哪一个呢?
以上谢谢各位大神指导!
Seven Han:您好,
1.需要
2.如果您希望擦除较早的校准数据并重新编程新的校准数据,则必须为校准数据分配一个完整的闪存扇区,因为flash可以擦除的最小内存量为一个闪存扇区。
如果您不想擦除一整个扇区,您可以继续添加新的校准数据,而不必擦除早期的校准数据,并将校准指针移至新的校准数据。
3.建议您使用Method A , B,D,controlsuite中的例程给出了Method A和method D:
\ti\controlSUITE\libs\utilities\flash_api\2803x\v100a
您也可以参考以下flash eeprom的例子:www.ti.com.cn/…/litabsmultiplefilelist.tsp