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.

Compiler/TMS570LC4357: Boot loader LC43x

Part Number: TMS570LC4357


Tool/software: TI C/C++ Compiler

Some basic bootloader questions:

I am trying to design a board with the tms570LC43x IC, and I would like to be able to flash it using the second serial port sciREG2.

I have looked at http://processors.wiki.ti.com/index.php/TMS570_Hercules_MCU_Bootloader and understand that when boot loading one should pull GIO_A7 and then the boot loader code kicks in.

Could a technician cable be made that pulls that line when connected, and a second cable for operational use be made that does not?

I'm looking to build in a boot loader to my project and found SaftyMCU_Bootloater projects, but they do not have one for the LC43x.

Can one of the examples be used (LS04x, LS12x and LS31x are provided)?

Is the bootloader code loaded separately (prior to) from the actual project?

If I load a customized loader on sciREG2, my assumption is that the working Code Composer load will not work as it uses sciREG1. Is that correct or can a configuration be installed that will allow either?

How does the Code Composer initiate the load? Is the reset line pulled some how through the USB ?

Thx

  • Hi John,

    There are 2 options to update the application code:
    1. pull the GPIO7 pin (example) to force the bootloader to update the applciation
    2. there is no application code in the specified location, or the status flag is not correct

    Yes, you can use GIO7 to force update in bootloader, and use GIO7 for other purpose in application image.

    The bootloader and the application are two separate projects, and are located in different sectors in flash. Normally the bootloader is located in the first sector of the flash.

    You can use any SCI port for bootloader: SCI1, or SCI2. If you use TI launchpad or HDK, you don't need to modify the board if using SCI1, If you want to use SCI2, you have to add hardware (UART driver).

    Using CCS to load your bootloader to begining of the flash, then run the booadler, the bootloader will get the application image from your host (HyperTerminal, Putty, or TeraTerm etc) and program the application to flash.
  • Is there an example project for the tms570LC43x (LS04x, LS12x and LS31x are provided)?
    Given the modified bootloader may have an error, how do you recover and get back to a safe configuration?
  • Hello John,

    Enclosed is an UART bootloader example on TMS570LC43x device. The bootloader is programmed in the 1st flash sector, and the application is programmed at the 1st sector of bank1. It is just an example.

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/2055.TMS570LC4357_5F00_UART_5F00_Boot.7z

  • This is very helpful!  My only question is if I can move the UART from sciREG1 to sciREG2? Any specific limitations in HW.

    Much thanks

  • Hi John,

    You can use any SCI for bootloader. But only SCI1 is routed out through micro USB on TI launchpad. If you use SCI2 on Launchpad, you need to add a UART driver.
  • By driver, my assumption is you are referring to hardware voltage support. Could you confirm?
  • I mean the UART transceiver (hardware).