1. 程式人生 > >嵌入式 Jlink中flash.csv和*.jflash檔案分析

嵌入式 Jlink中flash.csv和*.jflash檔案分析

轉自:點選開啟

本文是對《使用Jlink下載程式到Nor Flash》一文的補充和修正(尤其修正init sequence的內容)。

分析這兩個檔案的目的:是為了以後使用新的MCU和Flash時自己製作project檔案。當然可以在圖形介面配置這兩個檔案,但我還是習慣分析一下。

一、 /ETC/JFlash/flash.csv檔案中記錄了軟體支援的flash,但使用這裡面沒有的flash時需要把相關資訊新增進來。

檔案中每一行記錄了一種flash的資訊,格式從左往右依次如下,可以查詢所使用的flash的datasheet來填寫:

Manufacturer; //生產廠商

Name;//flash的型號名

Id16;// Device ID(word),此部分參照datasheet中Autoselect Codes下的Flash Manufacturer/Device ID TABLE填寫

Id8;//Device ID(Byte),此部分參照datasheet中Autoselect Codes下的Flash Manufacturer/Device ID TABLE填寫

Internal;//是否是內部flash

Algo;//演算法

AlgoVar;//

BusWidth;//匯流排寬度

SupportsSectorErase;//是否支援扇區擦除

SupportsChipErase;//是否支援片擦除

ZeroProgram;//不知道啥意思...

SupportsSoftLock;//是否支援軟體鎖定

SoftLockAreaType (0:Sector,1:Chip);//軟體鎖定區域型別

SoftUnlockAreaType;//軟體解鎖區域型別

SupportsHardLock;//是否支援硬鎖定

HardLockAreaType;//硬鎖定區域型別

SupportsHardUnlock;//是否支援硬體解鎖

HardUnlockAreaType;//硬體解鎖區域型別

SoftLockResetState(0:Remember,1:ON,2:OFF);//軟體鎖定復位狀態

SupportsSecure;//是否支援加密

SupportsUnsecure;//是否支援解密

Sectors;//individual sectors,在project setting中配置

二、*.jflash檔案中有幾個段,這些都是在project setting-->CPU配置時生成的,如下:

AppVersion = 40000 [GENERAL] //一些基本資訊 [JTAG] //JTAG通訊設定,在配置project settings-->Target Interface時設定

[CPU] // 這個段很重要,其中最重要的是init sequence的設定,否則不能正常燒寫程式。可以參照晶片的啟動順序,例如arm9就是reset-->disable MMU-->禁止watchdog--> ....等等。 另外還需選擇使用target RAM,地址填寫MCU中的RAM起始地址,例如S3C2440就是0x40000000,4KB。這樣可以快速下載 [FLASH] //flash 的設定 [PRODUCTION] //程式設計方式的設定,比如是否需要先erase再程式設計,是否需要校驗等等。