GEL是CCS提供的一種解釋語言,使用該語言寫出的GEL,函數具有兩在功能,一是配置CCS工作環境,二是直接訪問目標處理器DSP(包括DSP軟/硬仿真器)。用戶可以使用GEL函數完成類似於宏操作的自動化批處理任務,如編譯、連接並運行程序。但GEL本身具有的類C語法使其比宏操作更方便。GEL支持標准C的基本關鍵字。
GEL文件的功能:
GEL文件的功能同emuinit.cmd的功能基本相同,用於初始化DSP。但它的功能比emuinit的功能有所增強,GEL在CCS下有一個菜單,可以根據DSP的對象不同,設置不同的初始化程序。以TMS320LF2407為例:
#define SCSR1 0x7018 ;定義scsr1寄存器
#define SCSR2 0X7019 ;定義scsr2寄存器
#define WDKEY 0x7025 ;定義wdkey寄存器
#define WDNTR 0x7029 ;定義wdntr寄存器
StartUp() ; 開始函數
{
GEL_MapReset(); ; 存儲空間復位 GEL_MapAdd(0x0000,0,0x7fff,1,1); 定義程序空間從0000-7fff 可讀寫
GEL_MapAdd(0x8000,0,0x7000,1,1); 定義程序空間從8000-f000 可讀寫
GEL_MapAdd(0x0000,1,0x10000,1,1); 定義數據空間從0000-10000可讀寫
GEL_MapAdd(0xffff,2,1,1,1); 定義i/o 空間0xffff可讀寫
GEL_MapOn(); 存儲空間打開
GEL_MemoryFill(0xffff,2,1,0x40); 在i/o空間添入數值40h
*(int *)SCSR1=0x0200; 給scsr1寄存器賦值
*(int *)SCSR2=0x000C; 給scsr2寄存器賦值,在這里可以進行mp/mc方式的轉換
*(int *)WDNTR=0x006f; 給wdntr寄存器賦值
*(int *)WDKEY=0x055; 給wdkey寄存器賦值
*(int *)WDKEY=0x0AA; 給wdkey寄存器賦值
}