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.

Program not Automatically running after loading

Other Parts Discussed in Thread: CONTROLSUITE

Hello,

I recently developed an application for the TMS320F28069U. I am not using the USB port provided on the launchpad, I am using the built in USBDM and USBDP pins, broken out via headers. The program works correctly: Enter a character, and the character is echoed back to you over that USB connection in a serial terminal. 

When I debug, the program works great. However, when I remove power from the launchpad and then plug it back in, the USB port connected to the USBDM and USBDP pins is not recognized. I can only assume that this is because the program is not running on power up. 

I have ensured that that the program is loaded into the flash memory (used F28069.cmd, and split the program between section A and B since the program was too large otherwise). 

I am wondering if anyone has any ideas on why the program would not run as soon as the controller is powered up?

Thanks,

Albert

  • Hi Albert
    Check once boot_mode pins (GPIO 37 and GPIO34 and TRST) position
  • Hello,

    After posting last night I thought about those pins. I was initially trying to boot with all 3 switches high (placing the controller in emulation boot). However, I disconnected power, and switched the TRST switch low (TRST=LOW, GPIO37=HIGH, GPIO34=HIGH). The program still did not load.

    I will try further combinations (and retry combination above) later tonight.

    Any other suggestions if the boot mode switches are correct?

    Albert

  • Hi Albert,

    I would recommend loading one of the known-good controlSUITE projects (which run from flash) and see if you can get it to boot from flash.  Something like:
    \controlSUITE\device_support\f2806x\v150\F2806x_examples_ccsv5\flash_f28069\

    You can then experiment with hardware until you get this example working.  Once this example works, you can then see if your custom project works.


    Thank you,
    Brett

  • Hi Brett,

    I have successfully run the LED Blink example from flash. Initially, the LED Blink example did not work for me when I disconnected power, so I switched to the F28069.cmd file, and it worked after disconnecting and reconnecting power.

    Is there anything else that it could be?

    Albert
  • OK, if you've gotten a project working and therefore now feel good about the hardware/boot GPIO...

    I would recommend looking at the below:
    http://processors.wiki.ti.com/index.php/C2000_Flash_Common_Issues/FAQs#Code_Does_Not_Run_Standalone

    A common problem is that any memcopy calls are not done early enough in the program (and the problem occurs when those functions are called prior to their memcopy).


    Thank you,
    Brett

  • Hello,

    Here is a quick update: The code is working now.

    After reviewing the code I realized that I had not included F2806x_CodeStartBranch.asm. So, I added the file, and compiled, but it said there was nothing new to compile. So I uploaded the code, tried, and it didn't solve anything. I had the same problem.

    I managed to force a recompile of the code with the new file added, and now it works. So, long story short, make sure you have this file, and make sure you compile with it in your project.

    Thanks for your help! These forums have been an amazing resource.

    Albert