- 博客(9)
- 收藏
- 关注
原创 keil5 MDK调试printf和JlinkRTT打印总结
ps:keil mdk更新升级后,可能会因为printf影响代码编译后烧写程序后不能断电,或者debug后不能直接跳转到main,在最开始的Reset Handler,需要点击三次才能运行到main(虽然也没错,但是需要点击连接才可以运行;2、printf打印只需要Syscall文件。1、Jlink RTT打印只需要RTT文件夹内容,如果自己封装接口,就自定义,如果不需要直接用RTT提供接口即可,应用示例Examples文件夹中test。
2024-07-12 17:01:24 570
原创 Keil5.38使用_Template制作Flash算法时启动文件.s报错All37E和All67E解决方案
2、汇编默认用armasm(Arm Syntax)语法。1、默认使用Compiler V5换成了V6版本。4、修改为GNU语法解决。备注:keil版本信息。
2024-06-18 19:52:53 196
原创 git did not exit cleanly (exit code 128)
右键TortoiseGit-Settings-Git选项,设置为global确认即可,就可以成功使用了,但是会发现再点进去会恢复成effective第一个选项,不影响使用。
2024-04-09 11:13:34 1111
原创 keil编译器_文件名加.hex导致不能打断点
文章路径:【Keil运行stm32项目无法打断点调试 - CSDN App】http://t.csdnimg.cn/ulRpc。我是两个工程,都设置了.hex,但是一个能打断点,一个打不了,原因目前还未查出!所以应该也可能这个不是根因,还需进一步排查!调试配置工程时会勾选生成hex,设置debug文件都目录,并且文件名会顺便改成项目名并且加后缀.hex!我们新建的工程,可能默认是不生成hex,并且文件名可能有些无后缀或者有.out。也是在网上找了好多原因才看到这一篇文章,删除.hex好了!
2023-12-26 17:43:47 437
原创 keil5烧录不了代码影响调试进度_换种调试思路
ps:遇到问题,如果不想从开始深究,最懒最笨的方法是对比设置法😂,如果有现成的没有问题的工程的话,对比法有时候是最快的,但别忘了,找到后联想一下,证明根本原因才是正道✊。flash算法路径(keil安装路径下)如:D:\Keil_v5\ARM\Flash中.FLM文件。在\Flash_Template路径下有算法设计方法说明工程!此时,为了不影响调试,可用JFLASH烧写成功后,不勾选如下选项,进行debug调试,查找问题!另:过程中如有以下错误不用过多理会,关掉keil再打开即可,先不影响调试。
2023-12-12 21:09:07 911 2
原创 keil5.38升级编译器后裸函数问题
新工程,修改TAB选项,warning选项,c编译选项优化等级,添加文件,路径,编译宏等,且不能加入.i文件,会认为是镜像文件导致不能编译。V5版本和V6版本的区别,V6手册中搜索支持naked,但实际之前针对gcc编译器的错误中断函数的写法不再适用,所以需要改写汇编指令。用跑飞的示例跑到此位置,调试观察mem堆栈里的值和SP寄存器,看看SP指针的地址往后偏移多少与跑飞的地址能对应上,反推出偏移。小技巧:批量导出工程路径,命令ok,工程测试有点错误,工程目录级别要找对。方案1:C与汇编混合编程。
2023-11-29 20:13:45 797 1
原创 keil报错Undefined另一种思路
如下图报错,实际搜索确实有定义,但宏未放开,也不需要,所以选项Use MicroLIB去除即可消除编译错误。工程文件目录有但实际应用中不需要的,误添加到编译文件中,删除。一般编译宏在工程属性对应地方定义或者人为工程文件中临时添加。查看是否有条件编译宏限制?是否符合项目应用要求?一般是少加文件或者真的未定义,增加定义即可;工程搜索报错函数,查看是否真的未定义?4、排查编译选项,如一般为c99?5、c库文件是否需要?
2023-11-29 15:03:01 1942 1
原创 SDK文件夹内容快速理解_新建工程测试法
incbin:双核链接才需要,勾选后SDK包默认为.s汇编文件。_lite:精简版库文件。BSP:芯片层级文件。详细模块功能需看描述。
2023-11-28 14:12:52 544
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人