硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5181|回复: 2
收起左侧

[有问必答] 代码问题--软重启后变量不会被清0吗

[复制链接]

2

主题

4

回帖

10

积分

新手上路

积分
10
发表于 2020-11-1 22:46:15 | 显示全部楼层 |阅读模式
        case REG03_RESET_TO_BOOT:
            if (reg_value == 2)
            {
                /* 复位进入BOOT 升级 */
                *(uint32_t *)0x20000000 = 0x5AA51234;
                NVIC_SystemReset(); /* 复位CPU */
            }
            else if (reg_value == 1)
            {
                /* 复位进入APP */
                *(uint32_t *)0x20000000 = 0;
                NVIC_SystemReset(); /* 复位CPU */
            }
            break;

请问谁知道*(uint32_t *)0x20000000 = 0x5AA51234;这句赋值后,软重启后不会被清0吗?(以上代码来至H7-TOOL)

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2020-11-2 03:47:46 | 显示全部楼层
非常讨厌HAL库中每个设备一个全局变量,而且这些变量又不显性清零
https://forum.anfulai.cn/forum.p ... 5213&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

219

主题

1110

回帖

1777

积分

至尊会员

More we do, more we can do.

积分
1777
发表于 2020-11-10 23:29:02 | 显示全部楼层
复位时序相关的会恢复默认值,内存中的通常是会保持的。随后的初始化是由C运行环境启动代码完成
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-16 13:51 , Processed in 0.050203 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表