admin

经典的复位电路图

admin 原理图 2024-10-19 浏览
我们在很多的单片机电路中都会看到复位电路,如下所示:mFS源享君
mFS源享君
mFS源享君
以上是我们的STM32103C8T6最小系统板中的复位电路,以上为例,来研究下复位电路:mFS源享君
mFS源享君
A.首先我们先看左边的复位电路:mFS源享君
mFS源享君
把芯片的RESET复位信号通过一个按键和一个电容并联到地,上方接一个10k电阻到电源。mFS源享君
 
1.何为复位?mFS源享君
mFS源享君
单片机复位电路的作用是:使单片机的状态处于初始化状态,让单片机的程序从头开始执行,mFS源享君
mFS源享君
运行时钟处于稳定状态、各种寄存器、端口处于初始化状态等等。目的是让单片机能够稳定、正确的从头开始执行程序。
mFS源享君
单片机有两种复位方式:一是高电平复位,二是低电平复位mFS源享君
mFS源享君
四种常用的复位电路如下:mFS源享君
mFS源享君
第一种:上电复位电路:
mFS源享君
mFS源享君
我们以高电平为例,这个电路是利用电容的充电来实现复位的,当电源接通的瞬间,mFS源享君
mFS源享君
单片机复位端的电位与VCC相同,随着充电电流的减少,复位端的电位逐渐下降。直至电容充满电,复位端的电压变为低电平。mFS源享君
 

电路中R和C的值可以根据下面的式子计算,其中T是复位时间。mFS源享君

T=(1/9)*R1*C1mFS源享君

另一个反之。。。。。mFS源享君
mFS源享君
计算公式:T=9*RCmFS源享君
mFS源享君
第二种:按键复位电路:mFS源享君
mFS源享君
mFS源享君
那么我们可以得出最开始的电路是低电平复位电路,那么我怎么知道芯片要低电平复位呢?mFS源享君
mFS源享君
1.芯片的数据手册可以查看。mFS源享君
mFS源享君
2.一个小诀窍:对于单片机是高电平还是低电平复位,我们可以通过观察单片机的引脚图进行一个直观的判断,mFS源享君
mFS源享君
当单片机引脚图中复位端口的名称上面有一个“-”时,该单片机就是低电平复位,没有“-”时,该单片机就是高电平复位,mFS源享君
mFS源享君
例如单片机端口名称是RST,那它是高电平复位,是/RST(/是上划线)时,它是低电平复位mFS源享君
mFS源享君
第三种:加了二极管的按键复位电路:mFS源享君
mFS源享君
mFS源享君
mFS源享君
第二个的的按键复位电路如果当电源因某种干扰瞬间断电时,由于C不能迅速将电荷放掉,待电源恢复时,mFS源享君
mFS源享君
单片机不能上电自动复位,导致程序运行失控。电源瞬间断电干扰会导致程序停止正常运行,形成程序“乱飞”或进入“死循环”。mFS源享君
mFS源享君
如果有了这个二极管就可以快速将电容上的电压释放,保证复位信号正确无误。也能快速为下次复位做好准备。mFS源享君
mFS源享君
有个问题来了,二极管正向导向电源,这个电如何放掉?mFS源享君
 
因为VCC断电后,电容两端的电压不能突变,对于高电平复位电路,上端变为0,那么下端会产生一个负电源电压,mFS源享君
mFS源享君
此时对于地来讲,地成为了高处,负电压成为低处,电压会通过地与二极管,电阻与reset负电压形成回路放掉。mFS源享君
mFS源享君
而对于低电平复位电路,RRESET此处的高电压通过二极管与电阻与地形成回路放掉电压。
mFS源享君
网络上对于复位有个很搞笑的段子如下:mFS源享君
 
只要电源接通,那么这个电容就会“逐渐充满电”,这个过程必须要有,正是这个过程保证了CPU正确地“RESET”。mFS源享君
mFS源享君
当电容充满电之后我们把电源开关断开了,这个电容中的电“何去何从”呢?mFS源享君
mFS源享君
VCC和GND之间接了N多的器件,所有的器件都对它说:“把你那点电给我吧,我还能坚持一下。”mFS源享君
mFS源享君
电容说:“给你们没问题,可是我他娘脑袋上有个电阻挡我的财路,你们先别急,我慢慢把电放给你们。”mFS源享君
mFS源享君
当电容刚刚要把电通过那个上拉电阻放出来,电源开关突然又接通了。mFS源享君
mFS源享君
CPU开始冲电容吼:“孙子!你Y的那个充电过程怎么没啦?我还要复位呢!”mFS源享君
mFS源享君
电容不干了:“废话,我上次充的电还没放呢这他妈电源又通啦!”mFS源享君
mFS源享君
CPU急了:“那我怎么办?我得复位啊!”电容眼珠一翻:“管你Y怎么办,死去吧你!”
mFS源享君
第四种:用复位芯片复位电路:mFS源享君
mFS源享君
对于一些非常复杂的电路,为了让芯片正确复位,必须用一些复位芯片,能够保证其精确的复位。mFS源享君
mFS源享君
mFS源享君
B.我们在来看下右边的电路:mFS源享君
mFS源享君
对于这个电路,我们首先要了解单片机的状态,如下:mFS源享君
mFS源享君
mFS源享君
BOOT1接了一个下拉电阻,因此为低电平,为0,那么会产生第一种和第二种情况,mFS源享君
mFS源享君
当K2按下,BOOT0为高电平,1,从系统存贮器启动mFS源享君
mFS源享君
当不按下时,为0,从主闪存存贮器启动。mFS源享君
mFS源享君
那么这三种方式又是什么呢?
mFS源享君
 

1、主闪存存储器mFS源享君
是STM32内置的Flash,一般我们使用JTAG或者SWD模式下载程序时,mFS源享君
mFS源享君
就是下载到这个里面,重启后也直接从这启动程序
mFS源享君

2、系统存储器mFS源享君
从系统存储器启动,这种模式启动的程序功能是由厂家设置的。mFS源享君
mFS源享君
一般来说,这种启动方式用的比较少。系统存储器是芯片内部一块特定的区域,mFS源享君
mFS源享君
STM32在出厂时,由ST在这个区域内部预置了一段BootLoader,也就是我们常说的ISP程序mFS源享君
mFS源享君
这是一块ROM,出厂后无法修改。一般来说,我们选用这种启动模式时,是为了从串口下载程序,mFS源享君
mFS源享君
因为在厂家提供的BootLoader中,提供了串口下载程序的固件mFS源享君
mFS源享君
可以通过这个BootLoader将程序下载到系统的Flash中。但是这个下载方式需要以下步骤:
mFS源享君

Step1:将BOOT0设置为1,BOOT1设置为0,然后按下复位键,这样才能从系统存储器启动BootLoadermFS源享君
Step2:最后在BootLoader的帮助下,通过串口下载程序到Flash中mFS源享君
Step3:程序下载完成后,又有需要将BOOT0设置为GND,手动复位,这样,STM32才可以从Flash中启动。
mFS源享君

3、内置SRAMmFS源享君
内置SRAM,既然是SRAM,自然也就没有程序存储的能力了,这个模式一般用于程序调试。mFS源享君
mFS源享君
假如我只修改了代码中一个小小的地方,然后就需要重新擦除整个Flash,比较的费时,mFS源享君
mFS源享君
可以考虑从这个模式启动代码(也就是STM32的内存中),用于快速的程序调试,等程序调试完成后,再将程序下载到Flash中。
mFS源享君

特别说明:
1.本站百分之九十资源均为免费,百分之十需要注册会员收费,用来维护网站。

2.若是资源链接丢失,请在网站资源下方留言,我们会及时补充丢失链接。

3.白嫖不可怕,可怕是白眼狼式的白嫖,毫无感恩的白嫖。

4.网站资源千千万,本站资源万里选,不是精华不收录,浪费时间和精力。

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

资源分享不易,你的支持,将会是我继续前行的动力!!!

留言与评论(共有 0 条评论)
   
验证码:
博客主人:草根站长 博 主: 闲来没事喜欢研究电脑影视,电子电路,并分享资源和心得技巧,资深技术宅。
浏览 104984 次 运行 0 天数