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.

28388D程序启动相关问题

Other Parts Discussed in Thread: C2000WARE

1. 28388的CPU2和CM想设置成在RAM中启动。根据资料看CPU2和CM的启动RAM只有1至2K,如何运行比较大的程序。

2. 28388的DSP有没有办法访问到CPU2和CM的全部RAM,以及28388的DSP1能不能访问到CPU2和CM的全部flash。

  • 你好:

    1、TI的函数库中有个函数Memcpy()就是用于脱机运行的时候将flash运行的程序移植到ram运行,例如你可以参考例程C:\ti\c2000\C2000Ware_3_02_00_00\driverlib\f2838x\examples\c28x_cm\led中的以下代码:

    #ifdef _FLASH
        //
        // Copy time critical code and flash setup code to RAM. This includes the
        // following functions: InitFlash();
        //
        // The RamfuncsLoadStart, RamfuncsLoadSize, and RamfuncsRunStart symbols
        // are created by the linker. Refer to the device .cmd file.
        //
        memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
    
        //
        // Call Flash Initialization to setup flash waitstates. This function must
        // reside in RAM.
        //
        Flash_initModule(FLASH0CTRL_BASE, FLASH0ECC_BASE, DEVICE_FLASH_WAITSTATES);
    #endif

    2、访问内存和flash肯定得看你具体如何设置,我觉得你应该是要问这几个核之间访问外设的权限吧?外设权限你可以参考一下这个功能方框图: