Part Number: TMS320F28386S
Other Parts Discussed in Thread: C2000WARE
My project is in C under CCS.
Is there a file where registers like BOOTPIN_CONFIG, BOOT_DEF_LOW, and BOOT_DEF_HIGH are usually assigned?
Thanks,
John
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.
Part Number: TMS320F28386S
Other Parts Discussed in Thread: C2000WARE
My project is in C under CCS.
Is there a file where registers like BOOTPIN_CONFIG, BOOT_DEF_LOW, and BOOT_DEF_HIGH are usually assigned?
Thanks,
John
John,
If you are looking for some code where it uses that, then please take a look at Boot ROM code.
C:/ti/c2000/C2000Ware_4_02_00_00/libraries/boot_rom/f2838x/revA/rom_sources/cpu1/F2838x_ROM/bootROM/source/cpu1brom_select_bootmode.c
Thanks & Regards,
Santosh
Hi John,
This register is in OTP. So you do not want to write this in your code. Usually, it is done in production environment. Please refer to Technical Reference Manual, section 5.4.3 for detailed sequence. I referred you to ROM code, so that you can see how ROM is using it to boot.
Thanks & Regards,
Santosh
Santosh,
I have configured my board per TI document SPRACN1.
In the file 2838x_flash_lnk_cpu1.cmd I have inserted the following at the beginning.
// Per SPRACN1
MEMORY
{
PAGE 0:
DCSM_ZSEL_Z1_P0: origin = 0x07800C, length = 0x000002
DCSM_ZSEL_Z1_P1: origin = 0x07801C, length = 0x000002
}
SECTIONS
{
dcsm_zsel_z1_1 : > DCSM_ZSEL_Z1_P0, PAGE = 0
dcsm_zsel_z1_2 : > DCSM_ZSEL_Z1_P1, PAGE = 0
}
//End SPRACN1
In source file I have this at the top:
// Per SPRACN1 #pragma RETAIN(otp_z1_data) #pragma DATA_SECTION(otp_z1_data,"dcsm_zsel_z1_1"); const long otp_z1_data = 0x5AFFFF39; // GPIO567 #pragma RETAIN(otp_z1_data_2) #pragma DATA_SECTION(otp_z1_data_2,"dcsm_zsel_z1_2"); const long otp_z1_data_2 = 0xFFFF0103; // End SPRACN1
And later in the code:
GPIO_setPadConfig(57U, GPIO_PIN_TYPE_STD); GPIO_setDirectionMode(57U, GPIO_DIR_MODE_OUT);
It seems to work. Does it look correct?
Thanks,
John