随笔分类 - MDK
摘要:我在arm开发的时候,使用keil较多,在调试的时候,一般只能不开优化,否则断点打了也不是真实的断点 近期在使用rl78瑞萨单片机的时候,使用了IAR RL78 3.10的,开启中等优化,发现,打断点能正常运行,看来这点和keil是有点区别的,但调试的时候尽量使用不优化等级。 也难过,很多人都喜欢I
阅读全文
摘要:以下来自:https://blog.csdn.net/guosir_/article/details/78627980 CMSIS是Cortex微控制器软件接口标准(CortexMicroController Software Interface Standard)的缩写,这个是ARM定制的一个用于
阅读全文
摘要:转载自:单片机上内存管理(重定义malloc free)的实现 https://blog.csdn.net/qq_21475601/article/details/77579462?locationNum=7&fps=1 https://files.cnblogs.com/files/CodeWor
阅读全文
摘要:今日在调试过程中,需要将单片机中的sram保存,或者将flash的数据加载,这时需要在keil调试界面中,使用save和load两个命令,官网有说明http://www.keil.com/support/man/docs/uv4/uv4_debug_commands.htm 今天调试的时,就用到了s
阅读全文
摘要:写的不错的,因此转载下,做个记录。 @(嵌入式) [TOC] 源文件编译后生成 elf 格式的目标文件(各种.o), 与运行时库经过连接器处理后,生成可以被写入嵌入式设备 ROM 中的 elf 格式文件。 ARM 映像文件 ARM 映像文件是一个层次结构文件, 包含域(region), 输出段(ou
阅读全文
摘要:好久没写博客了,快到国庆了,经历了一些项目和坑,还是要保持记录的好习惯,好记性不如烂笔头嘛。 目前使用了cortex-m3内核的两款单片机:stm32f1和lpc1768的,虽说是cm3内核,但是两个芯片添加的外设是有区别的,很多外设的使用方式也是各有千秋,st在国内比较火,全国研讨会如火如荼,每年
阅读全文
摘要:参考https://blog.csdn.net/qq_36347513/article/details/103099085 更新了mdk5.30后,出现jlink不能使用的的情况,和下面的类似,我使用6.12驱动,单独使用jflash是可以的,但是keil下载不行,参考了上面的网站, 三、解决方法使
阅读全文
摘要:MDK本身的更新主要还是为了更好的配合CMSIS5.7.0的升级:1、开始添加M55内核的支持。2、AC6将作为默认编译器,而AC5将只用于Armv6-M和Armv7-M。3、修改了Event Statistics偶尔无法正常统计任务执行时间的坑。4、新增了一些功能项,可以更好的配合CMSIS-Bu
阅读全文
摘要:keil c51版本c51v959,2018年版本 最新是C51V960A.EXEkeil mdk 5.29,目前最新版本 两个安装好后都是绿颜色的图标了,之前老的版本是mdk4.74 c51v906,他俩是蓝色的图标安装过程记得不要安装到一个目录中,这样反正是没问题的,安装同目录没有试验过。在桌面
阅读全文
摘要:平台:stm32,可以推广到其他32位单片机中开发软件:keil、IAR、SEGGER Embedded Studio for ARM调试仿真器:stlink、jlink 说明:1、串口打印,不推荐,需要占用串口外设不划算2、在线调试中的rtt打印方式,需要keil进入调试模式,再打开rtt-viw
阅读全文
摘要:keil视频: https://v.qq.com/x/page/k06901ngbnx.html 待整理
阅读全文
摘要:stm32F103et6平台,cubemx生成的两个IDE工程 1、均无开启任务优化 iar8.32如下: keil5.29 ac5编译器 : keil5.29 ac6编译器 : 同样的代码,不开优化的情况下,ac6反而代码空间比较大 2、开启最高优化: iar:high(size) keil5.2
阅读全文
摘要:有时候我们需要在MDK中忽略掉某一个具体的warnning,怎么做呢?只需在Misc Control中添加 “--diag_suppress=<num>” 就可以了, num就是Keil中的警告代码,,比如在工程中需要忽略..\..\..\..\src\drivers\gpio\gpio.h(169
阅读全文
摘要:原创 qlexcel最后发布于2019-01-11 16:54:52 阅读数 1304 收藏 展开 原创 qlexcel最后发布于2019-01-11 16:54:52 阅读数 1304 收藏 展开 原创 qlexcel最后发布于2019-01-11 16:54:52 阅读数 1304 收藏 原创
阅读全文
摘要:序: 偶然的因素看到网上有keil设置arm gcc的编译器,于是想自己尝试一下。mdk5.15之后就可以按照此文的方案去设置,也可以参考keil官网文档, 这个文章过了好多年,圈中大佬,真正的大佬(GorgonMeducer 傻孩子 裸机思维),在他的公众号中,写了一个手把手的教程——《【教程】如
阅读全文
摘要:之前提到过一个编译选项:Optimize for time,这个会影响float变量的存储大小,其实实测是不会影响,依然是4字节 且看测试的截图:stm32F103+keil5.20+ac5 测试代码: main函数中结构体赋值: 下图是设定位4字节对齐后,代码的存储实际情况,下面划线是全局结构体变
阅读全文
摘要:最后一点的代码,其实在工程项目中经常遇到,有的代码,就会被优化掉,没有被执行,所以,基本上我都是将优化等级设置为最低。这样既可以调试,也避免被编译器优化。
阅读全文
摘要:通常,我们一般使用flash来保存一些上次保存的数据,这样下次开机后读取改flash处的变量即可读回上次配置或上次最后的数据值,但是keil其实有另外的方式来保存数据,且看下文分解。 一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位
阅读全文
摘要:思路: 常把单片机系统的复位分为冷启动和热启动。所谓冷启动,也就是一般所说的上电复位,冷启动后片内外RAM的内容是随机的;单片机的热启动是通过外部电路给运行中的单片机的复位端一复位电平而实现的,也就是所说的按键复位或看门狗复位。复位后,RAM的内容都没有改变。在某些场合,必须区分出设备的重启是热重启
阅读全文