程序很快超过64K了, 修改LD文件后, 使用非0等待Flash区, 可以通过Mounriver studio 下载, 但是只要超过64K,就不能工作,有没有利用 非0等待 FLASH区 的例程。
这个型号的flash只有64K,不能分配内存。
原理都理解吧, 就是用Mounriver studio下载调试时发现, 无法下载到64K以后的地址,
原理都明白了,就是用mounriver studio 下载调试的时候, 64K以后的内存好像无法下载成功, 全部是0x39E339E3,
你把一些常量数组,与对运行速度要求较低的函数,可以按照上述操作放进非零等待区。
主要是调试时下载到64K以后的Flash, 实际上没有下载进去, 进入Hardfault. 为什么先下载不进去,还不知道。
具体可以邮箱沟通一下,zdg@wch.cn
目前实测发现 采样WCHISPTool通过串口可以下载 程序到非0等待FLASH区, 并可以正常执行(速度变慢很多)。 但是通过WCH_LINK 调试接口下载程序并进入调试后, 可以进行0等待区的调试, 但是程序一执行到非0等待FLASH区就会进入到Hardfault. 不知道非0等待区能否 解决调试问题。
您好,调试对非零等待区的下载做了限制,目前版本您可以将调试配置改为不擦除不下载的方式,如下图,通过WCH-LINK先下载程序再调试。后续版本会改进此处机制。