F28335使用外部SRAM做程序仿真

最近用F28335做仿真时,内部RAM的空间不够用,东拼西凑搞出了22K,
   RAML0      : origin = 0x008000, length = 0x000800
   RAML1_5    : origin = 0x008800, length = 0x005800

   .text            : > RAML1_5,     PAGE = 0

结果发现还是不够,咋办?

外扩啊,28335所有存储设备都共用一条数据总线,理论上式行得通的,

正好板子的Zone 6 区连接了一块IS61LV25616AL

于是乎,我在CMD文件中新定义了一块64K区域用于存放.text段,足够挥霍了吧!!

ZONE6      : origin = 0x100000, length = 0x010000

.text            : > RAML1_5,     PAGE = 0

但是......程序加载的时候问题出现了!

F28335使用外部SRAM做程序仿真_第1张图片

分析原因,应该是在程序加载之前,外部读写总线没有被使能,

解决办法:

找到工程中用到的.gel文件,在CCS安装目录下找到打开他,

F28335使用外部SRAM做程序仿真_第2张图片

找到以下代码

OnReset(int nErrorCode)
{
    if (GEL_IsInRealtimeMode())   /* If in real-time-mode */
    {
    }
    else    /* Put device in C28x mode */
    {
         C28x_Mode();
    }
    Unlock_CSM();
    ADC_Cal();
//    XINTF_Enable();               /* Uncomment to enable XINTF on Reset */    
}

把最后一行的注释去掉,重新编译,

加载成功!!!

爽歪歪

 

你可能感兴趣的:(F28335使用外部SRAM做程序仿真)