用keil编写单片机程序,修改代码后编译,结果hex文件的内容不变,何故?
用keil编写c语言的单片机程序,运行后觉得延时不够,增加延时后成功保存了c语言程序,但是编译后生成的hex文件的内容不变,运行结果照旧,也就是无法调程序,不知道是哪里操作有误?谢谢大家的指点! 你把原来的hex 直接删除掉试试,再编译看看有没有生成新的hex 好的,我试试。谢谢啦! 试了。删掉就行了。但是如果不删掉老的,老的就不能被新的替代,怎么会是这样呢? 现在删了老的,新的还是不能替换老的,真是奇了怪了! 找到原因了。不需要删老的。要在STC-ISP里重新点“打开程序文件”并选择hex文件才行,否则它就假装给你烧了一次程序,实际上没有烧。 zhaohang 发表于 2022-4-19 21:10找到原因了。不需要删老的。要在STC-ISP里重新点“打开程序文件”并选择hex文件才行,否则它就假装给你烧了 ...
是isp已加载旧hex到缓存,并没有刷一次读一次文件,有设置每次都重新加载的
对。应该是把老的刷进去了 keetian2 发表于 2022-4-19 22:29
是isp已加载旧hex到缓存,并没有刷一次读一次文件,有设置每次都重新加载的
...
我用另一个公司的单片机软件开发系统,也碰到这样问题;
只要编译,hex文件就会更新;
但烧写的hex文件,不会自动跟随更新;
我感觉这样操作不人性,不符合常规思维;
只用keil来编译,写代码和烧录都尽量不用这个. 你是编译了单个文件吧,选全部编译。 应该是你如果不重新选择hex文件,它就把上一次烧录用的并存放在某处的hex文件再次烧进单片机。
页:
[1]