完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,我目前实现了 PBL SBL 但目前的问题是:将SBL下载到RAM区域后,通过SBL下载App正常;但从App跳回PBL在下载SBL,进入SBL后上位机发送的CAN 报文响应超时。我在SBL中添加调试报文,报文正常发送出来。App与PBL的RAM区域都为240k,SBL的ram区域为64k,另外一部分我用来存储SBL的代码。请问有什么解决方法吗?谢谢。
|
|
相关推荐
1个回答
|
|
你好!根据你的描述,问题可能出现在以下几个方面:
1. CAN通信参数设置:请检查CAN通信参数(如波特率、同步跳变宽度等)是否正确设置,确保上位机与设备之间的通信正常。 2. 超时时间设置:检查上位机发送CAN报文的超时时间设置是否合适。如果超时时间太短,可能导致在设备处理报文时未能及时响应,从而出现超时现象。可以尝试增加超时时间,观察是否解决问题。 3. 报文处理逻辑:检查SBL中的报文处理逻辑是否正确。确保在接收到上位机发送的CAN报文后,能够正确解析并生成相应的响应报文。 4. 内存分配:你提到SBL的RAM区域为64k,另一部分用于存储SBL的代码。请确保在下载SBL时,内存分配正确,没有出现内存溢出或冲突的问题。 5. 系统稳定性:检查系统在从App跳回PBL并下载SBL的过程中,是否稳定。如果系统在这一过程中出现异常,可能导致CAN报文响应超时。 解决方法: 1. 检查并调整CAN通信参数,确保通信正常。 2. 增加上位机发送CAN报文的超时时间,观察问题是否解决。 3. 检查SBL中的报文处理逻辑,确保正确解析和生成响应报文。 4. 检查内存分配,确保下载SBL时没有内存溢出或冲突问题。 5. 优化系统稳定性,确保在从App跳回PBL并下载SBL的过程中不会出现异常。 希望以上建议能帮助你解决问题。如果问题仍然存在,请提供更多详细信息,以便进一步分析。祝你好运! |
|
|
|
只有小组成员才能发言,加入小组>>
请教个XMC1404调试串口接收时为什么一直无法接收数据的问题
368 浏览 0 评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
6342 浏览 2 评论
4108 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3634 浏览 9 评论
1232 浏览 8 评论
466浏览 2评论
275浏览 2评论
384浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
6353浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
465浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 05:21 , Processed in 0.774788 second(s), Total 104, Slave 86 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号