STM32学习笔记之RCC模块(实操篇)

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨

📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852

📢:文章若有幸对你有帮助,可点赞 👍 收藏 ⭐不迷路🙉

📢:内容若有错误,敬请留言 📝指正!原创文,转载注明出处

文章目录

  • [1. 系统复位](#1. 系统复位)
    • [1.1 软件复位](#1.1 软件复位)

1. 系统复位

只要发生以下事件之一,就会产生系统复位,而系统复位会将其它全部寄存器都复位为复位值。

NRST 引脚低电平(外部复位)

窗口看门狗计数结束( WWDG 复位)

独立看门狗计数结束( IWDG 复位)

软件复位( SW 复位)

低功耗管理复位

1.1 软件复位

软件复位(SW 复位)是指通过软件指令触发的复位操作,它可以将系统恢复到初始状态。NVIC_SystemReset() 是一个标准库函数,用于触发系统的软件复位。调用该函数后,系统会停止当前正在执行的任务,将各个寄存器和系统状态恢复到初始状态,然后从复位向量处重新开始执行程序。

c 复制代码
void NVIC_SystemReset(void)
{
  __DSB();                                                     
                                                                  
  SCB->AIRCR  = ((0x5FA << SCB_AIRCR_VECTKEY_Pos)      |
                 (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
                 SCB_AIRCR_SYSRESETREQ_Msk);                   
  __DSB();                                                    
  while(1);                                                    
}
相关推荐
XGeFei21 小时前
【AI应用/Agent智能体搭建平台2】Dify——自部署
人工智能·笔记·学习
hsjiasb21 小时前
FreeRTOS学习(二十三)——消息缓冲区(Message Buffer)
stm32·单片机·嵌入式硬件·学习·freertos
祈禾21 小时前
Redis三大缓存问题与分布式锁
运维·数据库·redis·笔记·分布式·缓存
我的xiaodoujiao1 天前
快速学习Python基础知识详细图文教程17--类型注解和断点调试
开发语言·python·学习·测试工具
IT古董1 天前
【MES学习笔记系列】MES 厂商与产品对比
笔记·学习
wuyk5551 天前
2.队列:先进先出的线性数据结构
c语言·数据结构·stm32·单片机
wangyue_msn_861 天前
Agent知识学习笔记——03 RAG
笔记·学习·ai编程
嘶哈哈哈1 天前
# 异构十电机机架数学建模:从单电机力矩到受约束控制分配
笔记
呱呱巨基1 天前
Linux 查找命令
linux·笔记·学习·查找命令
芯岭技术郦1 天前
OM6625A芯片 Timer 定时器计数模式使用说明
stm32·单片机·嵌入式硬件