TI E2E Community
C2000 32-bit Microcontrollers Forum
Booting from flash
Ibve been trying to understand how to set my F28027 controlSTICK to boot from flash I have been looking at several pdfs such as http://www.ti.com/lit/ug/sprufn6a/sprufn6a.pdf and they are very confusing.
Take for example the blinkingLED code that comes with ContrlSUITE in the relevant directory development kits directory, if I set the Active Build Configuration to Flash and load the program is there not some fixed set of steps I can use to get this program to run by itself the next time I plug the controlSTICK into the PC or apply power to it?
I would have thought that the provided examples should work as if they were a fully working program, and thus, as recommended on the wiki have copied and altered one of these projects for the starting point o my current project, yet it seems I now have to wade through another mountain of guides and references and datasheets and wiki entries just to get the bloody thing to actually operate by itself!!
On a fresh F2802x device, boot mode pins GPIO34 and GPIO37 are by default pulled up and the contents of TI OTP location (0x3D7BFE and 0x3D7BFF) will be in erased state. This would automatically get the device in boot to flash in standalone mode.
But, if the device didn't enter boot to flash mode, check the contents of 0x3D7BFE and 0x3D7BFF.
If a post answers your question, please mark it with the "verify answer" button.
Other useful links:
C2000 Getting Started C2000 Flash Common Issues/FAQs Emulation FAQ
Many thanks for your reply
The contents of both these locations is: FFFF ITRAP1
What should it be? how should it be changed?
To enter boot to flash mode, you don't need to change the contents of these locations. Just make sure to pull up GPIO34 and GPIO37 to enter boot to flash in standalone mode.
In standalone mode, you won't be able to use emulator to check whether device enters boot to flash. You may to burn the code in flash and disconnect your JTAG, power cycle the board to check whether your application code is running as expected.
If GPIO-34 is to be used by the program, then it cannot be held high forever so I guess there is some minimum amount of time it should be held high for. I assume once the device is booted and my code is running, that code can use the pin for what it wants?
As I mentioned in my OP I am using a TI Piccolo ControlSTICK, on which GPIO37/TDO is pulled down as a comms line. Again it seems that this will need ot be pulled up for boot, then let free in case JTAG needs to be used.
If I want to change EMU_KEY and EMU_BMODE to instead boot from Flash with the debugger connected is example #2 at the bottom of page 19 of http://www.ti.com/lit/ug/sprufn6a/sprufn6a.pdf the correct way to go about setting these registers?
Again, thanks for you help Manoj
Yes, GPIO34 needs to be held high when you bring the device out of reset. Then it can be used in your program without any issues.
If you want to BOOT TO FLASH with emulator connected, program 0x3D 7BFE with 0x55AA and program 0x3D 7BFF with 0x000B.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.