This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28069:闪存 API 回调函数

Guru**** 2581345 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/649355/tms320f28069-flash-api-callback-function

器件型号:TMS320F28069

您好 Champ、

 闪存 API 文档 具有以下说明:

擦除函数将每3-4ms 调用一次回调函数。 这是两者之间最长的持续时间
回调函数调用、ToggleTest 函数除外。

但是当我使用 I/O 切换 方法测试回调间隔时 ,我发现回调函数 调用 间隔 在 擦除一个闪存扇区时有所不同,范围大约为15us 到3ms。擦除一个闪存扇区时的总调用时间大约为90000次 (MyCallbackCounter 大约为90000)。

有人能解释原因吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    闪存 API 函数中可用的 Flash_Erase 函数由其他按以下顺序调用的内部闪存 API 函数组成。

    1. Fl28x_CompactSector
    2. Fl28x_ClearSector
    3. Fl28x_EraseSector
    4. Fl28x_CompactSector

    这些函数中的每一个都能够调用 FlashCallBack 函数。 由于所执行的不同闪存算法的性质、这些函数中每个函数的时序都有显著差异、因此您会看到调用 FlashCallBack 函数的时序变化。 此外、由于闪存擦除/编程的模拟性质、每个闪存字被编程、擦除(或)压缩所需的时间也会有所不同。 这也增加了 Flashcallback 函数的时序变化。

    此致、

    曼诺伊

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Manoj、

    明白了、

    非常感谢!