欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 關于py32f002a單片機在keil里的報錯 [打印本頁]

作者: linlinlin~    時間: 2023-4-4 14:32
標題: 關于py32f002a單片機在keil里的報錯
最近整了個arm內核的py32f002a玩,但按照給的官方文件卻在keil里報錯。以前只玩過8位,沒玩過32位。錯誤代碼:


.\Objects\sy32.axf: Error: L6985E: Unable to automatically place AT section system_py32f0xx.o(.ARM.__at_0x20000000) with required base address 0x20000000. Please manually place in the scatter file using the --no_autoat option.

錯誤是在

文件里的



uint32_t VECT_SRAM_TAB[48]__attribute__((section(".ARM.__at_0x20000000")));
這行代碼出現了錯誤,這應該是個啟動運行前的文件,跟RAM有關,具體的我也不懂,好像也查不到什么好的解決辦法。
只要把這行代碼的0x20000000改成0x200000500就能編譯成功,調試中能操作寄存器,但函數不能正常運行。只能操作寄存器。
不知道有沒同樣用過的遇到這種問題的,或者知道解決辦法的。

作者: linpeng1981    時間: 2024-2-19 08:51
我剛好碰到這個問題,不過我用的是002B,我用了system_py32f002b.c替代了system_py32f0xx.c就正常了。f0xx.c可能針對的是所有型號,不同型號可能要改下參數。你可以去找個system_py32f002a.c或者就用002b.c就可以了。
作者: Hephaestus    時間: 2024-2-20 19:25
可能缺了#define具體單片機型號這一句,也可以在項目工程文件里面define。
作者: 電子蟋蟀    時間: 2024-3-18 11:27
這個應該是分散加載文件中的分段對應不上。把ARM替換成RW_IRAM1就可以了。即uint32_t VECT_SRAM_TAB[48]__attribute__((section(".RW_IRAM1.__at_0x20000000")));//((section(".ARM.__at_0x20000000")));
作者: protoblue    時間: 2024-3-18 11:28
uint32_t VECT_SRAM_TAB[48]__attribute__((section(".RW_IRAM1.__at_0x20000000")));
出錯代碼替換成上邊的代碼試試,我的問題這樣解決的。
作者: 明日之星8    時間: 2024-3-18 21:55
我最近在玩XL32F001,我只用py32f002bx5.h這一個頭文件,注意前面沒有“system_”,
另加“core_cm”開頭的三個內核頭文件,其它的都是“庫”開發有關的,我不玩“庫”。
簡簡單單點個燈都要長長一大篇,我直接操作寄存器只要三五句就點亮了。
作者: Hephaestus    時間: 2024-3-19 00:49
明日之星8 發表于 2024-3-18 21:55
我最近在玩XL32F001,我只用py32f002bx5.h這一個頭文件,注意前面沒有“system_”,
另加“core_cm”開頭 ...

沒用匯編說明你的修行還不到家。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1