Other Parts Discussed in Thread: CONTROLSUITE
I've notice a problem in Concerto device when run stand-alone (without emulator)
on C28X part ....
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.
Other Parts Discussed in Thread: CONTROLSUITE
I've notice a problem in Concerto device when run stand-alone (without emulator)
on C28X part ....
I've made some tests and I notice that
"rumfunctions" doesn't work even if I copy code from flash to ram using
extern Uint16 RamfuncsLoadStart; extern Uint16 RamfuncsLoadSize; extern Uint16 RamfuncsRunStart; memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
because I try to blink a LED using
DELAY_US(100000L);
but processor seems to stall in this routine
I load
{$CONTROLSUITE}\device_support\f28m35x\v200\F28M35x_examples_Dual\flash_exe
both C28X and M3 code,
I modify M3 code adding below snippet to leave C28X turn on/off LD3 on demo board
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC); GPIOPinConfigureCoreSelect(GPIO_PORTC_BASE, GPIO_PIN_7, GPIO_PIN_C_CORE_SELECT);
I modify C28X code adding below snippet
for(;;)
{
#ifdef _DELAY_US_CODE
DELAY_US(100000L);
#else
long z=(150E6)/32;
while(z--)asm(" nop");
#endif
EALLOW;
GpioCtrlRegs.GPCDIR.bit.GPIO71 = 1;
GpioDataRegs.GPCDAT.bit.GPIO71 = !GpioDataRegs.GPCDAT.bit.GPIO71;
EDIS;
}
if I use while (which is in flash) LD3 blink, if I use DELAY_US (which is in RAM, copied by memcpy) LD3 doesn't blink,
remember that I'm not using emulator and M3 call
IPCMtoCBootControlSystem(CBROM_MTOC_BOOTMODE_BOOT_FROM_FLASH);
can someone help me ?
ok, I find my answer at
http://e2e.ti.com/support/microcontrollers/c2000/f/171/t/317040.aspx?pi303962=2