怎样判断STM32是软件复位还是上电复位呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样判断STM32是软件复位还是上电复位呢?相关的知识,希望对你有一定的参考价值。

怎样判断STM32是软件复位还是上电复位呢?
如下图,说的“复位标志”是RCC_CSR的哪一位呢?
后面写的都是“由软件通过写RMVF位清零”“由软件置1或清零来清除复位标志”没看到有电源复位清除的啊~~

自己这样搞了:
void TestResetMode(void)

PowerOnResetFlag = 1;
if(RCC->CSR & 0x10000000)
//软件复位
PowerOnResetFlag = 0;

RCC->CSR |= 0x01000000;//RCC->CSR 寄存器清零

参考技术A 有个状态寄存器。在复位后会表示是上电复位还是软件复位或者外部复位!具体的可以看下7芯片手册!在时钟复位的那章

stm32 上电复位 和软复位有啥区别.该如何解决

软件复位看图片,有个函数实现复位,上电复位就是上电后复位,有上电复位电路,电容电阻电感组成、可以查查去,两个没啥大的区别,我一般都是加个复位按键,这样调试的时候比较方便,另外一般程序里加看门狗的时间过了不喂狗,狗狗会给片子复位。。 参考技术A 上电复位RAM及寄存器的值设置为默认值。而软复位,则是在不掉电的情况下,使程序指针直接跳转至复位值,RAM及寄存器无法保证上电的默认值。 参考技术B 解决什么问题?

以上是关于怎样判断STM32是软件复位还是上电复位呢?的主要内容,如果未能解决你的问题,请参考以下文章

stm32 软件复位和上电复位的区别

stm32怎样实现软件复位

stm32 上电复位 和软复位有啥区别.该如何解决

stm32 上电复位 和软复位有啥区别.该如何解决

关于STM32的复位电路?

STM32窗口看门狗WWDG,有关硬件复位清零的问题,教材一句话看不明白,如下: