一最小系统解释:
面试当中常常问到的,一个题目什么是单片机最小系统?
本质上是问?要能够使单片机能够工作的最小组部分有哪些。
对于单片机而言,要想能够工作,就和人一样我们要有心脏推动我们身体器官的活动,对应单片机而言就是,时钟电路又叫晶振电路。而且单片机要能具有像人类一样改错修正的,复位电路。除此以外单片机还要吃饭供电的电源电路。
所以主要就是三部分:
1.时钟电路/晶振电路;
2.复位电路;
3.电源电路;
二时钟电路:
时钟电路,就是单片机的核心,推动单片机程序的一步一步进行。对于51单片机而言往往没有内置的时钟,所以需要外挂时钟电路。
我这边网上搜的最小系统电路:
红色框所示,STC89C51单片机的时钟电路主要由晶振和电容组成。晶振是一种具有较高频率的振荡器,通常选择12MHz或24MHz的频率。电容则是用来配合晶振工作,与晶振一起形成一个振荡回路,产生稳定的时钟信号,往往电容阻值30PF。
而电容的作用,主要就是一个滤波,就是去除外界的一些噪声干扰,使得信号更加准确。
具体一点通过在振荡器电路中添加适当的电容,可以形成一个滤波网络,用于滤除这些噪声,从而提供一个更稳定和纯净的时钟信号。
对于32单片机而言,内部具有高速时钟和低速时钟,但是这种时钟进度比较低,所以我们往往使用外部时钟。
内部时钟精度低,原因主要在于其内部时钟是由芯片内部的RC振荡器产生的。这种振荡器的精度存在一定的问题,大约有1%左右的误差,对于程序运行而言就比较容易出错。因此,在精度要求较高的应用场合,如果可能,最好使用外部的晶振来提供时钟信号。
对于32时钟电路,以我最近画的电路图所示:
32时钟源有四个,内部高低速时钟,外部高低速时钟,对应的对象是不一样的。
外部高速电路,主要组成8M晶振和2个20PF的电容,还有1M电阻的作用在于:
1.阻抗匹配:该电阻可以作为阻抗匹配,使晶体的驱动电路或晶体本身处于更良好的工作条件。
2.帮助晶振起振:并联1MΩ的电阻有助于晶振的起振。原因:它可以增加电路中的负性阻抗(-R),即提升增益,从而缩短晶振的起振时间,使晶振更容易起振。
3.微调时钟频率:两个外接电容能够微调晶振产生的时钟频率。
4.保护电路的作用。
外部低速时钟电路,组要组成在于32.768KHZ和2个20PF的电容。作用和之前是一样的。
三复位电路讲解:
无论对于51还是32单片机而言,复位电路关键在于,防止单片机程序跑飞导致死机,以及防止出现BUG重启,让程序从头开始运行。
而51和32区别,对于重启而言,就是需要理解单片机重启区域的理解。
51单片机复位电路关键:
而对于51单片机而言,我们需要有上电复位和按键复位。必须使其RST引脚上持续出现两个(或以上)机器周期的高电平。也就是电容充电时间最小需要2个机械周期。1/11059200决定了电容充电时间,从而决定了电容阻值。
复位分为软件和硬件,对于硬件电路分为上电复位和按键复位两种方式。上电复位是通过外部复位电路的电容充放电来实现的。在系统上电瞬间,电容C通过电阻R充电,RST端出现正脉冲,用以复位,这也就是为什么带电路上电就会从头开始运行程序。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的复位初始化。
按键复位是指通过接通一按钮开关,使单片机进入复位状态。当按键按下的时候,电容C通过200Ω电阻的回路放电,从而使得RST引脚上的电位快速变为高电平,此高电平会维持到按键释放,从而满足单片机复位的条件实现按键复位。对于按键按下到松手的时间远远超过2个机械周期。
对于32单片机,复位电路稍微复杂一点,主要包含软件复位和硬件复位
硬件包含:NRST引脚上的低电平(外部复位)
软件包含:窗口看门狗计数终止(WWDG复位) 独立看门狗计数终止(IWDG复位) 软件复位(SW复位) 低功耗管理复位 可通过查看RCC_CSR控制状态寄存器中的复位状态标志位识别复位事件来源。
对于电路讲解,和51单片机而言不同部分在于,32单片机是低电平复位,其次不一样的部分在于需要复位的时间不同。
复位源将最终作用于RESET引脚,并在复位过程中保持低电平。复位入口矢量被固定在 地址0x0000_0004。芯片内部的复位信号会在NRST引脚上输出,脉冲发生器保证每一个(外部或内部)复位源都能有 至少20μs的脉冲延时;当NRST引脚被拉低产生外部复位时,它将产生复位脉冲。
四电源电路:
电源就是供电,但是对于单片机而言,电源不能够波动太大,负责输入电压变化太大的话,
因为就容易导致单片机一些外设工作需要的电压不同,有的高有的低,3.3V/5V左右能够使得外设正常工作。但是一旦不同太大就容易使得电路很多外设无法正常工作。
所以往往电源电路的设计就需要,稳压电路,使得输入电压非常稳定,能够让单片机正常工作。
对于51单片机而言运用的比较少,因为以下几点:
- 电源适应性:51单片机的工作电压范围相对较宽,通常可以在较大的电压范围内正常工作。因此,在一些对电源稳定性要求不高的场合,可以直接使用未经稳压的电源为单片机供电。
- 简化设计:省略稳压电路可以简化电源电路的设计,减少元器件数量,降低成本和故障率。在一些低成本、低复杂度的应用中,这是可以接受的。
需要注意地方在于51单片机的EA引脚需要连接。
因为51单片机EA引脚决定了,程序从哪里的区域,开始运行。EA高电平就从内部的ROM开始运行,如果接低电平就从外挂ROM开始运行。
这点设计主要是针对于单片机,有时候程序太多了存不下就会选择外挂ROM。对于默认而言就需使用EA高电平。
对于32单片机就需要稳压模块,原因有以下几点:
1.电压稳定性要求高:32单片机通常需要稳定的电源来保证其正常工作,因为电源电压的波动可能会影响单片机的性能和稳定性。稳压电路可以将输入电压转换成稳定的输出电压,为32单片机提供稳定的电源。
2.降低电源噪声:稳压电路可以降低电源中的噪声和干扰,从而减少对单片机工作的影响。
3.防止电源过压和欠压:稳压电路可以防止电源过压和欠压对单片机的影响,从而保护单片机不受损坏。
稳压电路过程大概讲解:ASM1117-3.3这里3.3也就是3.3V,ASM1117有很多种电压稳压的模块不止3.3V。大概过程就是ASM1117将输入的电压,线性转化为3.3V电压输送给电路,然后为了电压稳定输送,因为有时候对吧,电压来不及转化输送就容易导致单片机有时间内,电路没有电。所以需要电容充电放电,充当一个稳定的蓄水池,永远有电输送给单片机供电。
ASM1117-3.3V的输入电压范围为4.75V至12V,输出电压为3.3V。在最大输出电流下,该稳压器的压降保证不超过1.3V,并随着负载电流的减小而逐渐减小。作用如下:
1.微调与调整:ASM1117-3.3V的片上微调将参考电压调整到1.5%的误差范围内,并调整电流限制以最大限度地减少稳压器和电源电路过载造成的压力。
2.线路调整与负载调节:在最大输出电流下,该稳压器的线路调整最大为10mV,负载调节最大为15mV。此外,电压线性度为0.2%,负载线性度为0.4%。
3.温度范围与电气特性:ASM1117-3.3V的工作结温范围为-40℃至125℃,存储温度范围为-65℃至150℃。其电气特性包括输出电压精度高达±2%,稳定工作电压范围高达12V,纹波抑制最小为60dB等。
以上就是对单片机最小系统的讲解。B站也有我相关讲解视频,ID同博客。