完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我看了单片机干货|AURIX™ TC3xx 复位后RAM不初始化方法 - 知乎 (zhihu.com) 这篇文章,并且设置了UCB(仅仅设置了DFLASH_ORIG)
然后设置了一些变量: 触发SYS RESET或者APPLICAtiON RESET 此时程序PC指针在代码起始位置,程序未执行 但是0x7010A000的变量被清除了,0x90005665的变量却没有被清除,请问是哪里配置不正确吗? |
|
相关推荐
1个回答
|
|
根据您的描述,您已经尝试了设置UCB(DFLASH_ORIG)并配置了一些变量。在执行SYS RESET或APP RESET后,您发现0x7010A000的变量被清除,而0x90005665的变量没有被清除。以下是一些建议和可能的原因:
1. 确保您的配置是正确的。请检查您的配置文件和代码,确保所有相关的设置都已正确设置。 2. 检查RAM区域。确保您在代码中使用的RAM区域是正确的。如果0x90005665的变量没有被清除,可能是因为它位于一个不同的RAM区域,该区域在复位后不会被清除。 3. 检查初始化代码。确保在程序开始时,您已经正确地初始化了所有需要的变量。如果某些变量没有被初始化,它们可能会保留之前的值。 4. 检查中断和复位处理。确保在执行SYS RESET或APP RESET时,中断和复位处理是正确的。如果中断或复位处理不正确,可能会导致某些变量没有被清除。 5. 使用调试工具。使用调试工具(如仿真器)来检查程序的执行过程。这可以帮助您找到问题所在,以及为什么某些变量没有被清除。 6. 参考官方文档。请查阅AURIX™ TC3xx的官方文档,了解有关复位和RAM初始化的详细信息。这可能会帮助您找到问题的原因。 7. 尝试其他方法。如果上述方法都不能解决问题,您可以尝试使用其他方法来实现RAM的初始化。例如,您可以在程序开始时手动清除RAM区域,或者使用其他硬件或软件方法来确保RAM在复位后被正确初始化。 总之,要解决这个问题,您需要仔细检查配置、代码和硬件设置,确保所有相关部分都已正确设置。同时,使用调试工具和参考官方文档可能会帮助您找到问题的原因。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教个XMC1404调试串口接收时为什么一直无法接收数据的问题
467 浏览 0 评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
7300 浏览 2 评论
4169 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3715 浏览 9 评论
1284 浏览 8 评论
535浏览 2评论
332浏览 2评论
449浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
7300浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
542浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-22 22:14 , Processed in 0.403449 second(s), Total 43, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191