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.
Hi Folks,
We have a working solution from a previous project that is able to program our TI motor controller over UART.
However, when switching to the TMS320F280049C, forcing GPIO24 low, and pulling up GPIO32, we cannot use the same sequence of bytes to re-write the code on the chip over SCIA, GPIO's 28 and 29. Our host controller on the other side, instead of receiving the expected CRC's, receives 0x00, which tracks the RX staying low.
Specifically, as was the case with this individual: https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/870553/tms320f280049c-selecting-sci-boot-mode-using-gpio-32-and-gpio-24, when we send the acknowledge byte A1, we see no response on the RX line from the TMS32 on the logic analyzer.
For reference, when we revert GPIO24 to pull-up, we are able to program and debug over the XDS110, and we are able to read and write over that UART bus using a toy example within our application code, so we are confident that we have all the physical infrastructure is connected correctly.
Also, please note that the link provided in the linked Q&A, http://www.ti.com/lit/ug/sprui33b/sprui33b.pdf, appears to now be defunct, so we are relying on what appears to be a later revision as our source of documentation: https://www.ti.com/lit/ug/sprui33d/sprui33d.pdf?ts=1628562338377.
Thank you for all your time and support, looking forward to hearing from you soon!
Best Regards,
Ankur Aggarwal
Sorry, I meant the character 'A', or 0x41. Is there a different character to use for this IC? We are not getting any responses for autobaud or any other characters we send down the line. Also, our RX line is idling low, in case that indicates any issues.
Hi Ankur,
What device where you using before switching to TMS320F280049C? Also, what baud rate at you operating at right now?
Best Regards,
Marlyn
Hi Marlyn,
Thank you for your response!
Baud rate is 9600, which I confirmed both in code and on logic analyzer. We were previously using TMS320F28027F.
And just to confirm, we did measure that GPIO24 was at 0V and GPIO32 was at 3.3V during our tests.
Best Regards,
Ankur A.
Hi Marlyn,
I tried following the guidance from this question: https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/676803/tms320f280049-serial-flash-programming-issues
However, I'm not 100% my boot example is configured correctly, since as my Code Composer screenshot shows, there is no way to pause the code while it's running with the debugger.
However, I am able to get my Rx line (Channel 2 in logic analyzer screenshot) to idle high this time. Still, the autobaud character 0x41, nor any other, is able to generate a response, again as shown in the logic analyzer screenshot.
Can you please let me know what, if anything, I need to fix about my approach to overcome these issues?
Thank You,
Ankur A.
Marlyn,
So sorry for yet a third response, but if I'm understanding this recommendation correctly https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/984702/tms320f28388d-the-sci-boot-gpio-settings
we should configure our bootloader so that in SCI Boot Mode, Rx is pulled up? Is that correct? If so, how can this be done? Do we simply add the pullup setting to the boot code in the example? Will that execute when we run the IC without the debugger?
Thanks for all your help!
Best Regards,
Ankur
Ankur,
We're going to loop in the C2000 Boot ROM expert to help out here, currently they are out of the office today. You should expect a reply by Monday the 13th when they are back.
Best,
Matthew
Thank you, Matthew, very much appreciate it, looking forward to hearing back soon!
i couldnt find anything obvious being missed.
After powering up the device and connecting CCS with Target via JTAG, you can pause the execution in CCS, load the boot rom symbols and source code.
They are supplied in C2000ware package- C:\ti\c2000\C2000Ware_3_04_00_00\libraries\boot_rom\f28004x\revB
To load symbols - In CCS Menus - Run -> load symbols => point to .out file : C:\ti\c2000\C2000Ware_3_04_00_00\libraries\boot_rom\f28004x\revB\rom_sources\ccs_files\cpu\Release\F28004x_ROM_PG2.0_2_7_17.out
This will enable us to debug the boot code and understand what's going on with boot code.
Hi Baskaran,
Thanks for your response!
I briefly attempted loading the symbols through the debugger, but I wasn't sure what to look for after that point. Maybe you can explain a little further what's going on, and what to expect?
I did make progress in a different front, namely by getting some echo on the Rx line. However, I only see a few characters before the echo stops, which makes me worry that maybe I have generated the SCI boot image incorrectly. Screenshot:
I generated it as follows: