完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
使用CH559L芯片做了一个bootloader程序和用户APP程序。
bootloader存储在0--15KByte的空间; APP存储在15-60KByte。在Keil 环境下,Bootloader程序off-chip code memory设置为0x00,APP程序off-chip code memory设置为0x3C04; bootloader程序是利用自定义协议,通过串口传输数据。 现在情况: 1)先烧录bootloader程序,再通过booloader烧录APP程序,APP程序可以正常跳转,在APP里面点亮LED灯都正常。 但APP里面串口无法中断,接收数据。 2)将APP程序程序off-chip code memory参数设置为0x00,再通过WCHISPTool.exe程序下载后,APP运行一切正常。 现在感觉APP差异就是off-chip code memory这个参数不同,为啥APP运行会有所差异? 哪位大侠能够告知一下原因, |
|
相关推荐
2个回答
|
|
|
在其他网站看到采用我上面那种思路做bootloader,似乎需要修改bootloader的startup.a51文件。
我是利用CH559L 例程中的IAP工程模板修改而来,工程中没有引用startup.a51文件。 怀疑也是中断向量没有搞对,导致跳转到APP后,不再响应串口中断了。 哪位大侠能给一个指导意见? |
|
|
|
|
|
您好,boot和用户程序谁在前谁在后的,应该影响的是中断向量表覆盖的问题(实际对应位置填的到底是“boot”的表还是用户程序的表),我们芯片中断向量表始终在固定位置,也就是flash起始的那个位置(具体可以参看手册),那个文章中提到的0x2000中断向量表不适用于我们的芯片。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
326 浏览 0 评论
CH582M HOST发送数到设备后,提交IN一直是2A是什么问题?
848 浏览 0 评论
1452 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
3413 浏览 2 评论
2820 浏览 1 评论
安卓手机支持外接otg扩展坞 然后使用ch340+ch9329控制电脑吗
1808浏览 1评论
1459浏览 1评论
342浏览 0评论
CH582M HOST发送数到设备后,提交IN一直是2A是什么问题?
860浏览 0评论
467浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 18:46 , Processed in 0.641702 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
623