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.

DRV8301-69M-KIT: Lab02b cannot run with encryption.

Part Number: DRV8301-69M-KIT

Hi Yanming:

Since the problem of offline operation was solved last time, the program debugging has been very smooth.

Until recently, when I wanted to test the program encryption, I found that once the project was encrypted through the tools - on chip flash provided by CCS and then powered on, the program could not run offline.

However, LD2 will still flash normally, but the motor will not rotate.

What part of the program should I modify?

Regards,

Keng

  • The issue should be from the RAM assignment in your project. Please post the .cmd file.

  • Hi Yanming:

    When testing encryption, I use the original routine to test

    In other words, except for modifying the values of several flag bits in the routine(Which I mentioned in this post), I haven't modified other places. In other words, the cmd file is still the original flash.cmd file.

    Best regards,

    Keng

  • How do you implement and test encryption? Could you please provide more information about the operation steps or changes you did?

  • Hi Yanming:

    No other changes have been made other than those mentioned in the original post.

    The encryption method is encrypted by changing the password in the debug mode of CCS: Tools - On-chip flash.

    After encryption by the above method, only LD2 flashes after power-on, but the motor cannot rotate.

  • Does the lab run well in flash without encryption? Do you connect the JTAG debugger on the board? Do you disconnect the on-board JTAG debugger by setting the switch? And set the boot mode to Flash as well?

  • 1,

    Does the lab run well in flash without encryption?

    Yes, the lab run well in flash(without JTAG connected) without encryption.

    2, 

    Do you connect the JTAG debugger on the board?

    Whatever I connect the JTAG debugger on the board or not, the motor can not spin with encryption. 

    Even in the case of online flash debugging, the motor can't spin while the LD2 blink well. 

    3, 

    Do you disconnect the on-board JTAG debugger by setting the switch? And set the boot mode to Flash as well?

    Yes, I have disconnected the on-board JTAG debugger by setting the SW3: 1 OFF and set the boot mode to flash by setting the SW1 all ON.

    By the way, I think this may not be a HW setting problem? Because under the same HW setting, the KIT can run well without encryption. Only after encryption, the motor does not turn and LD2 blinks normally.

  • You may try to make changes in the lab as below.

    1. In F28069F.cmd file

    /* RAMM0 : origin = 0x000050, length = 0x0003B0 */ /* on-chip RAM block M0 */
    /* RAMM1 : origin = 0x000400, length = 0x000400 */ /* on-chip RAM block M1 */
    RAMM0_1 : origin = 0x000050, length = 0x0007B0 /* on-chip RAM block M0 */

    .stack              : > RAMM0_1,   PAGE = 1

    rom_accessed_data : > RAMM0_1 PAGE = 1

    2. In lab files (lab02c.c or the other lab file)

    CTRL_Handle ctrlHandle;

    #pragma DATA_SECTION(ctrlHandle,"rom_accessed_data");

    USER_Params gUserParams;

    #pragma DATA_SECTION(gUserParams,"rom_accessed_data");

    CTRL_Obj *controller_obj;
    #pragma DATA_SECTION(controller_obj,"rom_accessed_data");

  • Hi Yanming:

    Many thanks for your help! Now I can run the labs offline with encryption!

    Best regards,

    Keng