將W800/W801的SDK移植到W806上運行

發布於 2023-12-04 16:37:32

雖然W806和W800/W801的內部結構幾乎相同(雖說W806和W800/W800少了wifi和藍牙,但經網友實際的測試,W806還是有配備有wifi和藍牙核),而唯一稱得上差別的就是W806 Flash 為1M而W800/W801為2M;因此,W800/W800 SDK編譯的程序,需要做簡單的修改,方能在W806上運行;

按大佬指導,按文檔http://ask.winnermicro.com/question/131.html的說明修改 還是有問題,經過琢磨測試,終於更改成功,記錄如下:

修改方法如下
1.修改ld/w800/gcc_csky.ld
I-SRAM :ORIGIN = 0x080D040D改為0x08010400, 長度LENGTH相應改為0xE0000
不再保留OTA分區,否則,W800編譯後的固件需要的空間可能不夠 ,更改後,固件占用空間為 0x08010400~0xF0400
此更改是和上文最大的區別;

2.CDK編譯,修改./tools/w800/utilities/aft build project.sh
run_img header=8010000
run img_pos=8010400

3.修改./include/driver/wm flash_map.h
CODE RUN START ADDR改為0x8010000UL,測試此處沒有修改也可以正常運行,這幾個常數應該是OTA使用,但我們已經取消了OTA功能

4.修改./platform/drivers/internalflash/wm internal fls.c
TLS FLASH * 等6個宏定義,0x81F全部改為0x80F

1 條評論

發布
問題