范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

STM32在SRAMFLASH中调试代码的配置方法(附详细步骤)

  因为STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试。除此之外,SRAM 存储器的写入速度比在内部 FLASH 中要快得多,所以下载程序到SRAM中的速度较快。
  所以我们很有必要建立两个版本的工程配置,在SRAM中调试程序完毕后,再把代码下载到FLASH中即可。这篇笔记主要分享在keil5中配置FLASH调试与SRAM调试的详细配置方法及如何切换两种配置。
  本篇笔记以STM32F103ZET6为例。其FLASH大小为512KB,SRAM的大小为64KB。FLASH基地址为0x08000000,SRAM基地址为0x20000000。在STM32F10XXX里,可以通过BOOT1、BOOT0引脚来选择三种不同的模式:
  我们要在FLASH中进行硬件仿真调试还是在RAM中进行硬件仿真调试需要对这两个boot脚进行对应的设置以及程序下载的地址进行设置。
  在FLASH中进行硬件仿真调试
  1、硬件设置
  BOOT0配置为0,BOOT1随意设置。
  2、keil设置
  本文以keil5为例。步骤如下:
  (1)点击如下按钮,修改target的名称:
  target的名称是可以随意更改的,我们这里改为FLASH。
  (2)点击Project->Options for Target Flash...(也可以点击魔术棒那个图标)进行配置。首先对Target选项卡设置:
  设置IROM1的起始地址为0x8000000,大小为0x80000,即FLASH的基地址与大小。设置IRAM1为0x20000000,大小为0x10000,即SRAM的基地址与大小。
  (3)Debug选项设置:
  调试器根据实际进行选择,我们这里使用的调试器是ULINK2。其它的按默认设置即可,然后点击Settings:
  (4)编译,然后按Ctrl+F5进入调试界面:
  然后点击全速运行:
  在Disassembly窗口中可看到地址为0x0800xxxx,说明代码烧进了FLASH中,这时候就可以像使用其他C语言IDE调试C语言程序一样打断点、单步运行我们的STM32程序啦。
  在SRAM中进行硬件仿真调试
  在SRAM的仿真调试配置比FLASH中的配置要麻烦一点,我配置的时候遇到不少问题~
  1、硬件设置
  BOOT0配置为1,BOOT1配置为1。
  2、keil设置
  (1)新建一个target,并修改名称为SRAM:
  (2)切换至SRAM Target:
  (3)点击Project->Options for Target SRAM ...(也可以点击魔术棒那个图标)Target选项卡设置:
  设置IROM1的起始地址为0x2000000,大小为0x8000(32KB);设置IRAM1的起始地址为0x2008000,大小为0x8000(32KB)。即把64KB的SRAM分为32KB的FLASH(当然这是SRAM虚拟出来的FLASH,掉电易失)和16KB的RAM。
  (4)C/C++选项设置:
  为什么在RAM中调试要设置这个宏而在FLASH中调试却不需要?这是因为我们的中断向量表默认位于FLASH中,而此时我们要在RAM中进行调试,所以需要把中断向量表拷贝到RAM中,相关代码在system_stm32f10x.c的SystemInit函数中:
  其实system_stm32f10x.c文件中也有宏VECT_TAB_SRAM相关的代码:
  把这行代码打开即可把中断向量表拷贝到RAM中。但是这里选择在C/C++选项选项里添加宏,因为这样可以保证SRAM版本与FLASH版本代码的一致性。
  (5)Debug设置:
  与在FLASH中调试不同的是,这里需要加入.ini文件:
  这个.ini可以自己创建(也可以在芯片支持包里找到),这里我们建为Dbg_RAM.ini。文件里的内容如下:
  其中这里的第11行是需要根据实际进行修改的,需要把工程编译得出的.axf格式文件的路径及其文件名填到这里。这里因为我们这里的的.ini文件在.axf的上一级目录:
  所以此处以./Objects来表示。如果觉得麻烦的话,可以把.axf文件与.ini放在同一个目录下。
  其它的按默认设置即可,然后点击Settings,并进行如下设置:
  图中我们需要勾选Verify Code Download及Download to FLASH选项,也就是说点击调试按钮后,本工程的程序会被下载到内部 SRAM 中,只有勾选了这两个选项才能正常仿真。 (至于为什么 FLASH 版本的程序不需要勾选,不太清楚) 。
  Download Function中的擦除选项配置为Do not Erase。这是因为数据写入到内部 SRAM 中不需要像 FLASH 那样先擦除后写入。 Programming Algorithm 的地址要与我们Target选项卡里设置的地址一致,否则可能会出现如下错误:
  (6)编译,然后按Ctrl+F5进入调试界面,然后点击全速运行:
  在Disassembly窗口中可看到地址为0x2000xxxx,说明代码烧进了SRAM中,这时候就可以像使用其他C语言IDE调试C语言程序一样打断点、单步运行我们的STM32程序啦。
  以上就是在FLASH中调试与在SRAM中调试的设置方法,调试代码时可以选择SRAM版本的配置,调试完成再切换回FLASH版本的配置,把程序下载到FLASH中。切换方法:
  在RAM中调试的优缺点
  以下来自《【野火】零死角玩转STM32—F429挑战者V2》。
  优点:
  1、载程序非常快。 RAM 存储器的写入速度比在内部 FLASH 中要快得多,且没有擦除过程,因此在 RAM 上调试程序时程序几乎是秒下的,对于需要频繁改动代码的调试过程,能节约很多时间,省去了烦人的擦除与写入 FLASH 过程。另外,STM32 的内部 FLASH 可擦除次数为 1 万次,虽然一般的调试过程都不会擦除这么多次导致 FLASH 失效,但这确实也是一个考虑使用 RAM 的因素。
  2、不改写内部 FLASH 的原有程序。
  3、对于内部 FLASH 被锁定的芯片,可以把解锁程序下载到 RAM 上,进行解锁。
  缺点:
  1、存储在 RAM 上的程序掉电后会丢失,不能像 FLASH 那样保存。
  2、SRAM空间较小。
  以上就是本次分享的关于RAM调试与FLASH调试的笔记。如有错误欢迎指出!谢谢

电商连蔬菜水果都卖,让实体经济怎么活?电商平台摧毁了实体经济,满街到处都能看见关闭的店铺,给城市带来了萧条。这电商有什么好处?就是便宜方便,这是不争的事实。可是,弊端就是太多了,让人足不出户完成交易,叫个外卖在家待着,一个公交数据商用的合同纠纷A报社(被告)开发的移动资讯和生活服务App中有公交查询模块,为获取公交数据,先后和B公司(原告)公交集团签署合作协议,后因欠付数据接口年费被B公司诉至法院。案情不复杂,只是被告的python数据类型字典也是一种python常用的内置数据类型,其他语言一般称之为map,和列表,元组等以连续整数为索引不同,字典以关键字为索引,关键字通常是字符串或数字,也可以是其他任意不可变类型。iPhoneSE3真实体验,喜欢就买了,除了续航没什么缺点闺女特别喜欢玩我的手机,我的iPhone13pm对于她来说有点大,每次都怕她握不住砸头上。专门买了一个最近新出的iPhoneSE3,这个可好,手机很轻巧,她单手就可以拿住,不怕砸头秉承互联网精神,希翼美好未来互联网改变着人们的生活,促进着时代的发生,互联网蕴含着一种蓬勃向上积极进取的社会精神,这种精神引领着我们不断开拓积极进取,希冀着美好的未来。秉承互联网精神,活出精彩人生。互联网打破东数西算是什么?影响有多大?图片来源视觉中国东数西算工程启动的不到一个月,已经成为产业投资布局的热门概念。诸多IDC云计算基础软件等上市公司等收到投资者问询,一旦业务涉及东数西算,这些上市企业就有可能成为热门C语言程序设计2015A卷一判断题(每小题1分,共15分)1。标准C中,只有数值型数据才能进行4则混合运算。2。标准C中,a是合法的自定义标识符。3。有定义floatf表达式f(int)3。62不符合C语言手机和专业相机做比较,简直是鸡蛋碰石头!米10Ultra相机测评渭城朝雨浥轻尘,客舍青青柳色新。渭城曲唐渭城朝雨浥轻尘,客舍青青柳色新。劝君更尽一杯酒,西出阳关无故人。这是用我的小米10至尊纪念版拍的照片,小米10尊纪念版,虽然宣传上说是1亿像风险投资人想从融资演示中看到什么无论是早期天使投资人还是VC投资人,与创业者沟通,对项目进行全方位了解,收集各种信息资料,本质上无非是要回答三个问题这是不是一个好项目?成为好项目的原因是什么?促成好项目的动力将持避免日韩卡脖子!小米采用国产OIS马达,有望降低行业成本?小米科技前几日推出了RedmiK50系列,和之前K系列手机不同的是,这次发布的两款K系列机器均支持OIS光学防抖,这在Redmi的手机上也是首次对于大部分的消费者来说,OIS光学防如何彻底清理手机垃圾,手机内存释放好几个G你平时清理过手机吗?紫薇别走手机作为我们日常生活中必不可少的一项工具,每分每秒都离不开手机,也正是因为使用得频繁,随着使用时间的推移,手机应用产生的缓存垃圾就会非常多,就会导致可用
召回,2021年上半年看看哪些车辆被召回(1月)一云南航天神州汽车有限公司召回部分YH5022XXYBEV型纯电动厢式运输车二大众汽车(中国)销售有限公司召回部分进口兰博基尼品牌Urus汽车三东风悦达起亚汽车有限公司召回部分KX跑高速,请注意这些方面,值得收藏国庆中秋双节即将到来,在此期间貌似跑长途极为合适,可是我们应注意些什么呢?粮草先行一准备好食物饮用水1水果方便面面包2水壶矿泉水饮料3少许现金手机充电线口罩。整顿装备二规划好行程1召回,2021年上半年看看哪些车辆被召回(4月)优点评一火烧来源一定要核实二关注新能源召回原因三国产比例较少,国产车质量相较过去已有显著提升四频繁召回的车系一定要注意!一一汽大众汽车有限公司召回部分国产奥迪A6L汽车二保时捷(中房地产商的土地焦虑地产红利快速消失,新规限制房企拿地我国房地产商的利润率不断下降,盈利空间受到挤压,地产红利在快速消失。根据CRIC监测,2020年典型上市房企的毛利率下降4。8个百分点至24。3,净利率也已下降到10以下。房地产实警事咨询中的问题及答案(第一季)1。请问运输烟花爆竹,是否要向公安部门提出申请,需要提交什么材料?管理员回复您好,根据烟花爆竹安全管理条例(国务院令第455号)第二十二条和第二十三条规定,经由道路运输烟花爆竹的,汽车上遇到的那些辅料辅料名称车辆容积单价备注玻璃水4L左右15元瓶一瓶一般2L防冻液5L左右50元瓶一瓶一般4L冷媒(雪种)450g左右40元瓶一瓶一般250g冷冻油50ml35元瓶一瓶一般300ml警事咨询中的问题及答案(第五季)1。您好,我因私事开车到外地办事,中途被摄像头拍到了闯红灯的记录,但我接到通知的时候已办完事返回居住地,请问我可以直接在本地缴纳罚金吗?管理员回复您好,根据公安部关于修改道路交通安长津湖等多部暑期档延期,拿什么拯救片荒?因为近期国内多地再次出现疫情,原本定于8月14日至21日举办的第十一届北京国际电影节宣布延期举办。另外,本应该是电影上映黄金时间的暑期档也正历经着电影寒冬。多部暑期档电影宣布延期上国内唯一正版蓝光生产线关闭,影碟时代要结束了?今年5月,微博上看到消息,中国大陆唯一生产正版蓝光的生产线上海的新索蓝光压盘线,宣布即将在六月底彻底停产关闭。而同样在5月,由北京碟影传媒出品的盗马贼黑炮事件孩子王三部经典作品,正电视越来越薄,音质却有点差,如何是好?最近跟风看了一下大火的披荆斩棘的哥哥和正在热播的中国好声音,发现家里的电视音质还真的是不给力。以前看电视的时候也没有那么强的感受,可能因为是音乐综艺节目,所以尽管小编离发烧友还差NBlurayVS4KUHDVS4K流媒体有什么区别?哪个更好?最近有消息称英国厂牌CC标准收藏也要踏入UHD领域了,一大批影片要洗版了,碟片发烧友们已经开始期待哪部影片会是它的首作。而对于刚入坑的影音爱好者来说,对于蓝光碟(Bluray),4