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.

TMS320F28069M: Writing parameters to and reading them from FLASH

Part Number: TMS320F28069M

Hey,

I´m working on a brake module for a generator using the TMS320F28069M and I wanted to store the overvoltage, overfrequency, and calibration set point values in FLASH so that they don´t revert to their defaults after a restart. The set points have factory defaults but can be modified by the user, however after every restart they are set back to the factory defaults. I was wondering if there is any way of storing the user defined set points in the FLASH using the FLASH API, EEPROM Emulation, or some other method.

Cheers and thanks in advance for the help.

  • Michael,

    Please take a look at https://www.ti.com/lit/pdf/sprab69

    Thanks and regards,
    Vamsi

  • Hi Vamsi,

    Thanks for the response. 

    I had already reviewed the EEPROM Emulation guide for Gen.2 C2000 microcontrollers and followed the steps outlined in it. I was under the impression though, that the information there is not applicable for the F28069M. I went ahead and tried it anyway but have come across some issues with the definitions of the END_OF_SECTOR, RESET_BANK_POINTER, and RESET_PAGE_POINTER. I have added the EEPROM.h header to the project, however these remain undefined when I try to build it. 

    Could the issue be in #ifdef sections of pointer initilization in the EEPROM.h header?

  • Michael,

    Thank you for the update.

    Did it work if you remove the #ifdefs?

    Can you post the build errors here?

    Thanks and regards,

    Vamsi

  • Vamsi,

    I finally got it to work.

    Instead of removing the #ifdefs I just #defined the END_OF_SECTOR, RESET_BANK_POINTER, and RESET_PAGE_POINTER to the appropiate FLASH adresses for the F28069M microcontroller. I tried to add an #ifdef for F2806x devices to the EEPROM.h file but the compiler failed to acknowledge it. 

    Other than that I just had to change the #include´s to the correct libraries and headers. Thus far it has worked without a hitch.

    Thanks again for the help.

    Kind Regards,

    Michael