完善资料让更多小伙伴认识你,还能领取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在复位后被正确初始化。 总之,要解决这个问题,您需要仔细检查配置、代码和硬件设置,确保所有相关部分都已正确设置。同时,使用调试工具和参考官方文档可能会帮助您找到问题的原因。 |
|
|
|
只有小组成员才能发言,加入小组>>
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
5573 浏览 2 评论
4082 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3596 浏览 9 评论
1208 浏览 8 评论
3502 浏览 7 评论
419浏览 2评论
251浏览 2评论
358浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
5584浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
422浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 07:02 , Processed in 0.526930 second(s), Total 46, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号