說明是針對野火的DSP28335開發闆裡的例程進行實驗的,環境是CCS5.5,已經驗證。開發闆裡的例程都是在RAM裡運作的,每次開機都是祝你生日快樂的音樂,經過一周的努力終于不用再受音樂的困擾。可以随意燒寫任何程式。
把一個原來是燒寫到DSP的片内RAM的程式修改成是燒寫到DSP片内FLASH的程式,
需要以下幾個步驟:
1.添加DSP2833x_CodeStartBranch.asm檔案
添加D:\tidcs\c28\DSP2833x\v131\DSP2833x_common\source\DSP2833x_CodeStartBranch.asm檔案,此檔案負責上電後程式執行順序跳轉的;
2.添加DSP281x_Headers_nonBIOS.cmd檔案
添加D:\tidcs\c28\DSP2833x\v131\DSP2833x_headers\cmd\DSP2833x_Headers_nonBIOS.cmd檔案,用于将DSP28頭檔案中的外設結構與存儲器位址對應起來;
3.删除28335_RAM_lnk.cmd檔案
把28335_RAM_lnk.cmd檔案從project中移除,用右鍵選擇28335_RAM_lnk.cmd然後選delete;
4.添加F28335.cmd檔案
右鍵選擇project名稱,然後選add file to project,然後出現浏覽框,在D:\tidcs\c28\DSP2833x\v131\DSP2833x_common\cmd這個子檔案夾下,選擇F28335.cmd,點OK,至此可以在project的檔案清單内看到F28335.cmd被添加到project中;
5.添加兩行代碼
在main()函數開頭添加如下語句:
MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);
InitFlash();
注意不要添加錯了,每一個字母都要正确,括号也要用英文括号;
6.添加DSP2833x_MemCopy.c檔案
右鍵選擇project名稱,然後選add file to project,然後出現浏覽框,找到D:\tidcs\c28\DSP2833x\v131\DSP2833x_common\source檔案夾中的DSP2833x_MemCopy.c檔案,然後點OK;
7.選擇Boot mode
把撥碼開關撥到1、2、3、4處,即将Boot mode選擇為1111。
8.編譯後進行Debug
編譯沒有錯誤後即可進行Debug,此時将代碼燒寫到FLASH中,而不是RAM中。
9.注意事項
(1)下載下傳完如果想要脫離仿真器重新上電運作,必須斷掉仿真器與闆子的JTAG連接配接,否則運作程式會出錯,之前我隻把仿真器上的USB和電腦斷開,而JTAG接口未斷開,是以出現運作不正常的現象,這一點很重要!