1 程序编写完成生成.OUT文件前,选择菜单Project/Build Option...,在Complier里面的Process Version里填548,然后再编译生成OUT文件。
2 将TI的hex500文件放在C盘或者其他盘符的根目录下(假设放在C盘下flash_boot)
3 将OUT文件复制该文件下。
4 写一个.cmd文件 文件如下(以lcd.out为例):用记事本打开文件lcd.out,会看见如下程序。 lcd.out -a -map ioport2.mxp -o lcd.hex -e 0x100 -romwidth 16 -memwidth 16 -boot -bootorg 0 -swwsr 0 -bscr 0 修改方法: 第1行lcd.out 是你在CCS中生成的.out文件名, 第4行-o lcd.hex 是你将要生成hex文件的文件名,一般和out文件名一致 第5行-e 0x100 是你程序的首地址,如我的LCD程序是放在FLASH中首地址为0x100的地方的。 最后保存。 5 用鼠标左键点击电脑左下角“开始”菜单,然后点击“运行”,在对话框中输入:cmd ,然后点击“确定”,出现DOS对话界面。如下图 在光标处输入命令:cd /flash_boot,然后回车,如下图 6 在光标处输入文件名:hex500 lcd.cmd回车,如下图 然后在文件夹flash_boot中生成了一个lcd.hex。这就是FLASH加载所需的.table表。
8 在ccs中打开工程flash,将.table表中的内容复制到程序中数组table[]里去,然后删掉数组内容最末的元素0x00,然后记下数组元素个数,修改主程序中for循环次数(循环次数既是数组中的元素个数),如下修改 main() { int i=700;//修改i的值 unsigned int temp; flash_ready(); EraseChip(); for(i=0;i<700;i++)//修改i的值 { WriteByte(i,table[i]);//0x7fff } WriteByte(0x7fff,0x8000);//0x7fff temp=Flash_read(0x0); temp=Flash_read(0x01); temp=Flash_read(0x02); while(1); exit(0); }
9 修改完毕后然后就远行程序,用仿真器将生成的.hex文件下载到DSP中去。
10 在主函数 while(1); exit(0); } 语句前设置断点,如下图 然后运行断点,当断点运行完毕后,程序就烧写到FLASH中去了。
11 测试:关闭CCS界面,拔掉仿真器,断开电源。然后重新上电,会发现外接液晶显示正常,证明加载成功。
|