一、前言
總體來說FDL比FCL調試輕松多了,同樣調試的電路板為瑞薩F1KM系列,使用的FDL庫版本為2.13,應用說明手冊為R01US0079ED0213。
使用CS+版本時參考庫提供的CC-RH_200文件夾 ,此文件夾下的FCL文件夾為源碼文件,在調試時,添加此文件夾下所有文件,此文件夾下的文件都不要進行更改。
其中RH850-D1M1A、RH850-D1x、RH850-F1H、RH850-F1x、RH850-F1K文件下的文件為參考代碼文件夾,根據芯片型號選擇參考代碼,進行調試。
二、工程的配置
2.1.在工程文件Section中添加FCL庫所需要的段
2.1.1 ROM中添加
R_FDL_Const.const
R_FDL_Text.text
2.1.2 RAM中添加
R_FDL_Data.bss
R_FDL_CodeRam.bss
以上兩個段在FCL段后面追加即可。
三、文件的修改
3.1 fdl_descriptor.h
根據配置CPU的時鍾定義CPU_FREQUENCY_MHZ大小,
FDL_POOL_SIZE為FDL的塊配置大小,每個塊為64個byte,若不使用EEL情況下,64K的Dataflash定義FDL_POOL_SIZE為1024,(1024*64=65536 byte = 64K)
不使用EEL情況下,EEL_POOL_START和EEL_POOL_SIZE都定義為0。
四、初始化過程及使用注意事項
4.1 調用fdlRet = R_FDL_Init( &sampleApp_fdlConfig_enu );函數
4.2 執行req.command_enu = R_FDL_CMD_PREPARE_ENV命令的調用
五、注意事項
5.1R_FDL_CMD_ERASE
擦除命令可連續擦除多個塊,多個塊參數傳遞變量為cnt_u16。
idx_u32為塊號,每64個字節為一塊。64K的DataFlash一共為1024個塊。
5.2 R_FDL_CMD_READ&R_FDL_CMD_WRITE
注意參數指針均為uint32_t * 類型
5.3 R_FDL_CMD_BLANKCHECK
此命令為空白檢查命令,若塊為被擦除就寫數據,此命令可報錯。
idx_u32為檢查的起始地址,cnt_u16為檢查的字節數*4
總體來說還是很順利!
2020.06.29 天氣晴