您的位置 首页 传感器

STM32在Keil MDK环境下RAM上代码调试

自从51后就没碰过了Keil了~从昨天下午又开始再次使用KeilMDK~不过这次是forARM的~前几天的STM32W108调试统统是在IAR上进行的~刚在STM32

自从51后就没碰过了Keil了~从昨天下午又开端再次运用Keil MDK~不过这次是for ARM的~前几天的STM32W108调试通通是在IAR进步行的~

刚在STM32F103ZE-EK进步行了一个例程的调试~就发现本来更有办法在RAM中进行代码调试的装备~曾经在IAR中知道有个iar- cfg.icf文件是关于存储分配的~形似也能够如此~不过没实践操作过不敢下结论~干脆就在Keil下来了个测验~比较崎岖~也学到不少东西~

废话少说,进入正题~(Keil4下的画面~这个装备的办法跟是3相同~)

过程与图示:

1.先给个CPU的数据,需求留意的是三个红圈的当地,架构,类型,Flash和SRAM巨细~如图1

图1

2.Target的设置

1)勾上能够用微库,减小生成代码的巨细

2,3)别离界说ROM区方位及巨细和RAM区方位和巨细。在这儿需求阐明的是,Cortex-M3的架构有4G的寻址空间,而Flash的开始地址在0x08000000,RAM地址在0x20000000,在这儿进行了第一次相关地址的更改~如图2

0x1000为4K~这儿的0xc000则为48K的ROM分配~RAM的为16K~基本上移植个uCOS-II都够用了~

图2

3.Output的设置

着重一下Name of Executable吧~这儿默许的应该是project的姓名,我习气改成output~并且这与编译后发生的*.axf和*.sct文件姓名都有相关~没勾选HEX~感觉选了也没用~写到SRAM中的是。。。见图3

图3

4.Listing Label~没啥说的~不上图了~默许~

5.User Label~更没啥说的~同上~

6.C/C++ Label~形似都没啥说的我后边就不必写了~再同上。。。。~

7.真想干休了~无语的Asm Label~

8.好啦~来活了~Linker Label

最上边打上勾~是这作用~不打勾~就反白了~然后呢~呵呵~渐渐说来~

先说说打勾的时分,如图4~非人为操作~你什么都不必管了~(很多人会发现~新建的项目~刚开端的时分下面的Scatter File后的内容是空的~当你把这勾去掉后会主动呈现~然后随你勾与不勾~就都是存在的了~不过此刻还仅仅个影子~没有实践的文件~什么时分呈现这个文件呢~法一:天然你能够自己写~呵呵~法二:在呈现影子后打上勾编译一次,此文件就发生了~在output的文件夹里~立刻后文还会有对此文件内容的介绍~)

图4

再说说不打勾的时分会反白一些内容~如图5,需求修正两个当地~

图5

再来看看~output.sct文件内容~如图6~6行内容是ROM的地址和巨细~11行事RAM的地址和巨细~很是一望而知吧~内容依据Target主动生成的~不需求手动修正~

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/chuanganqi/256038.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部