请教STM32的复位电路()
admin
2023-07-12 13:43:08

无线上网卡,熊猫M32,

stm32的复位电路可以做成这样,数据表里面说不用加R1!如果不放心,你可以预留R1焊盘,但是不焊。
知乎上面的网友也建议不要r1,如下:
网页链接 你的目的是想进行复位是吗?如果是的话使用两个库函数即可:
__set_FAULTMASK(1);
NVIC_SystemReset();
我的STM32是F103系列,即CPU内核为Cortex M3,这两个函数在core_cm3.h里面都有定义,
__set_FAULTMASK(1);是关闭所有中断的意思,目的是在执行NVIC_SystemReset();复位函数过程中不被中断所打断。
两个函数执行后系统复位重新执行代码,包括之前所配置好的外设寄存器也都回到复位状态。

如果你想要保持之前配置好的寄存器不变的话,那么你再程序跳转之前要先初始化堆栈,而且你程序跳转的地址不对,应该这样:
__set_MSP(*(__IO uint32_t*) 0x08000000); 要先初始化堆栈指针
((void (*) (void)) (*(vu32 *)0x08000004) (); 这句才是程序跳转,注意了,是(*(vu32 *)0x08000004 20~30pF 这个电阻目的是为了降低功耗 说白了就是一个限流电阻
即便没有这个电阻 此电路也没有问题
但是如果做成产品 需长期工作的话 建议加上
大小1k-100k都可以
在别人的电路原理图看到过使用500-1k的 看门狗 外设?是? ADC 看你用的参考电压, 用的是内部参考电压是电源电压。 还有看你接进来的模拟信号的电压是多少范围的? 超过参考电压,最简单的电路, 做分压。 有个状态寄存器。在复位后会表示是上电复位还是软件复位或者外部复位!具体的可以看下7芯片手册!在时钟复位的那章 在复位脚接一只10k电阻到负极,再接一个10μ的电容到正极,可以在这个电容两端并一个轻触开关〔用作手动复位〕

相关内容

热门资讯

“春晓时”刷新排行榜:鹰角已经... 自从1月22日开启公测以来,《明日方舟:终末地》(下文简称终末地)已经经历了2个版本。4月17日,它...
冰川2025年净利暴增295%... 今日,冰川网络交出了一份非常漂亮的年度成绩单。 一年前,这家公司还在为巨额销售费用吞噬利润而苦恼——...
告别流水线快餐玩法,《歧路旅人... 不知道大家有没有发现,如今的生活节奏愈发加快,很多人的心态也随之变得浮躁。本该作为休闲放松港湾的游戏...
原创 最... 在王者荣耀中,并不是说所有玩家都想要高品质的皮肤。有些玩家对高品质的皮肤没啥兴趣,毕竟品质越高就越贵...
时代在召唤:现代中国,游戏圈的... 光是几个国风皮肤,已满足不了我们。 文/修理 这两天关于《明日方舟:终末地》(下称终末地)「春晓时」...