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.

TMS320F28377S: TMS320 Bootloader GPIO Options - CAN & Flash?

Part Number: TMS320F28377S


I have an application where I have a custom board with a TMS320F28377S, and I can plug in the XDS100, power everything up, enter debug mode, and it loads the code into the flash and I can debug it no problem. However, it doesn't seem to want to boot right into flash on powerup.

The problem I've found is that I'm using pins GPIO72 & GPIO84, which are needed by the bootloader, and at least one cannot be driven high at turn on. From what I have read of the technical reference manual, it appears that I have to write to the OTP to tell the bootloader to use a different set of pins, correct? There is no way I can make it jump to flash without the GPIO? Is it possible to write a custom bootloader that might bypass this check?

Secondary to this, this board has a CAN interface, and I'd like to have it so another device can feed it firmware updates over CAN, which I think means I have to play with the bootloader to make that work as well. Again glancing over the TRM (Sec 6.9.3) it sounds like you cannot have both a CAN-boot and Flash-boot at the same time, as you have to reconfigure GET mode to use one or the other via the OTP, is that correct? Given the OTP is one-time-programmable, that sounds like I can't do both. Am I looking at this right or is there a different approach entirely?

  • Hi,

    The boot control pins control which boot mode the device will enter.

    You can change the boot control pins by configuring them with OTP memory.

    You cannot bypass this boot mode pin check.

    To get a CAN boot mode you would need to consume the Get Mode slot. However, you can always boot to flash and then branch to the ROM CAN bootloader from your flash application when you need to.

    sal