本文介紹ADI SHARC 21489 Flash編程,共兩節。在使用VDSP5.12編寫完自己的程序后,怎么樣讓程序自動運行起來,有兩種方式:一是主啟動,將程序燒寫到NOR Flash或SPI Flash中。二是從啟動,將程序存儲在別的外部芯片中,由外部控制器發送程序到DSP啟動。從啟動在之前已經講過,點使用外部控制器啟動DSP程序查看詳細介紹。
01
—
Flash編程與燒寫詳解
Flash編程與燒寫,原本應該是開發的最后一步,當所有程序都做好了,在線編譯運行正常,才會通過Flash編程,生成二進制的可執行文件LDR,再通過JTAG仿真器將LDR文件燒寫到Flash中,上電BOOT實現脫機運行的功能。
我們為何把這個章節安排在第二個文檔,是因為21489的第二種編程方式,首選就需要燒寫程序,所以在這個文檔里,先把燒寫程序的方法給用戶做詳細的闡述,也好順利的進入第三個文檔。
ADI的DSP,通過Flash編程生成的二進制可執行文件尾綴為LDR,但實際上他的數據格式仍然是通過用戶自己選擇,而組合成的BIN,HEX等常規數據。所以大家不要被LDR這個名字所疑惑,僅僅只是ADI取的名字罷了。
打個比方就是,ADI拿一個叫做LDR的瓶子來裝BOOT數據,而這些數據歸根到底,依然是我們在其他嵌入式處理器開發中所熟知的BIN,HEX等等,ADI也無法別出心裁的整出一個獨特的數據格式來。
21489開發板上,我們做了NORFLASH和SPIFLASH兩種,下面也會對每一種Flash做詳細的注解,如何來生成這兩種flash可用的LDR文件,又如何來通過AD-HP530ICE仿真器去燒寫相應的LDR文件到FLASH中,實現脫機。
02
—
Flash編程和燒寫前所需要做的準備工作
軟件準備
Visual DSP++5.1.2
硬件鏈接
仿真器和開發板通過JTAG連接,開發板上電,仿真器上電。
軟件鏈接
新建21489的session,具體可參見說明文檔(一)中的詳細說明,此處不再講解。
03
—
NORFLASH編程與燒寫:編程
此章將詳細講解如何使用VDSP軟件來進行NORFLASH編程,生成boot用的LDR文件。我們以按鍵控制LED燈的程序來做例程講解。
1. 把工程拖到VDSP軟件中來。
2. 在工程名上按鼠標右鍵,選擇“Project Options.。”
3. 根據芯片的實際版本,為工程選擇一個芯片版本,將“Type”選為“Loader File”。我們現在用的21489都是0.2版,所以就選擇0.2。
4. 按下圖為生成的 LDR 文件選擇格式,設置完成后點“確定”按鈕,完成 LDR 文件的配置。ADSP21489_prom.dxe 文件位于FlashDriver 文件夾里的NORFLASH文件夾下。
NORFLASH生成LDR,所以在Boot Type里選擇Parallel port;Format我選擇的是Binary,一直用這個,沒啥因為所以;Width選擇8-bit,因為Flash就是8bit的。
Kernel file這個就很關鍵了,必須要需要添加這個kernel,這個kernel是ADI公司提供的,我只是把它單獨擰出來放到我的Flash Driver文件夾里,方便調用。
5. 選擇“ ReBuild all“按鈕全編譯工程。
6. 編譯完成后,會看到生成文件提示。該文件默認生成地址為當前工程的 Debug 文件夾下。
編輯:jq
-
ADI
+關注
關注
146文章
45862瀏覽量
252173 -
數據
+關注
關注
8文章
7170瀏覽量
89708 -
Boot
+關注
關注
0文章
150瀏覽量
35965 -
Flash編程
+關注
關注
0文章
10瀏覽量
8707
原文標題:21489的開發詳解:Flash編程與燒寫詳解(一)
文章出處:【微信號:cpu-world,微信公眾號:處理器世界】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-mfgtools燒錄流程介紹之燒寫所需鏡像
飛凌嵌入式ElfBoard ELF 1板卡-mfgtools燒錄流程介紹之燒寫所需鏡像
Epson可編程晶振SG-8018/8101/9101如何使用SG-Writer II燒寫配置
![Epson可<b class='flag-5'>編程</b>晶振SG-8018/8101/9101如何使用SG-Writer II<b class='flag-5'>燒</b><b class='flag-5'>寫</b>配置](https://file1.elecfans.com/web2/M00/0C/6B/wKgZomdFd1KAQA-VAAB1uG8WaCc388.png)
無鉛錫膏在印刷前需要做哪些準備?
![無鉛錫膏在印刷前<b class='flag-5'>需要做</b>哪些<b class='flag-5'>準備</b>?](https://file1.elecfans.com/web2/M00/0C/5A/wKgZomdENBeAegX_AABYe1lSBwc293.png)
工控機在重裝系統之前需要什么準備工作
【PHYTEC AM62x開發板試用】準備工作
使用libusb可以打開libusb設備,但是無法燒寫固件,怎么解決?
自動點焊機啟動前還需要做哪些準備工作呢?
![自動點焊機啟動前還<b class='flag-5'>需要做</b>哪些<b class='flag-5'>準備工作</b>呢?](https://file1.elecfans.com//web2/M00/E6/CC/wKgaomZFa1CAUvBfAAMDZW2ATRc667.jpg)
ESP8266獲取SPI FLASH的空間大小是燒寫時的還是真是FLASH大小?
超高溫紅外測溫熱像儀操作前的準備工作與安全注意事項
![超高溫紅外測溫熱像儀操作前的<b class='flag-5'>準備工作</b>與安全注意事項](https://file1.elecfans.com/web2/M00/C7/71/wKgZomYTsw6Ae-A3AAAjmLvh0_A355.png)
評論