1.什么是最小系统?
最小的系统就像我们人类一样。 我们生活的时候每天都需要吃饭、喝水。
大米和水是我们的“燃料”。 没有他们,我们就会死。
其实在芯片的世界里也是一样的。 微控制器要想正常运行,还需要“燃料”。 这些燃料的组成就是最小系统。
1.“燃料”由什么组成?
1.电源
以STM32F103C8T6型号为例,共有5个正极电源引脚和4个接地引脚,分别为内部未使用的模块供电。
VDD:单片机的电源电压。
VDDA:VDD后面有一个A,A=Analog,意思是模拟,是芯片内部模拟器件的工作电压。
VSSA:表示模拟设备的公共端。
VBAT:为备份区提供电源,维护RTC/BKP寄存器中的数据并在掉电时保存。 它通常连接到纽扣电池。 如果不需要,可以直接连接电源。
根据数据表,这些引脚的最大供电电压不能超过3.6V。
说到数据表,作为一个英文渣男,我在这里还要多说一句:别怕都是英文的。 你不必了解一切。 只关注关键部分。 事实上,只有几个英文单词来来去去。
2.复位电路
复位电路的作用是在板子上电时给单片机复位引脚(NRST)一个短暂的低电平,让单片机程序复位,将除备份区域寄存器外的所有寄存器的状态恢复到原来的状态。
简单来说,就是让程序重新开始运行。
复位电路的原理是利用RC电路的充放电原理,在上电瞬间为NRST引脚产生短暂的低电平。
初次上电时,电流通过R19、C20流到地,对C20充电。 此时NRST引脚为低电平。
当C20充满电时,C20处于“开路”状态,NRST由低电平变为高电平。
3.系统时钟
系统时钟通常会增加一个外部晶振电路,相当于给单片机一个心跳。
就像人的心跳一样,如果没有心跳,那肯定是GG。
同样,微控制器无法在没有心跳的情况下运行程序。
这个心跳也是一个计时基准,为单片机系统时钟、定时器等提供时间基准。
我们最终计算的定时器时间和这个晶振密切相关。
4. 烧录口
编程口的作用就是对单片机进行编程、注入灵魂。
烧录STM32的方法有多种。 实际产品开发中,一般采用SWD接口进行烧录,占用空间较小。 一般只需要5根线,有的用4根线,即不接vdd,需要不接vdd烧录。 单独给板供电。
5.Boot0和Boot1
Boot0和Boot1用于选择STM32单片机的启动模式。
如果您不明白上图的含义,请不要惊慌,这很正常。
简单来说,如果要正常运行程序,必须将Boot0和Boot1都接地,这才是正常的工作模式。
如果我们要使用串口编程,即ISP,我们需要将BOOT0接电源,BOOT1接地。 编程完成后,我们需要将它们全部连接到地,相对麻烦。
这就是为什么我只使用SWD进行编程,只需将它们全部接地即可。
通过以上电路的组合,单片机就可以正常运行程序了。
如何验证你的程序是否正常运行?
通常我开发产品时,我首先会调整LED驱动器以获得安全感,使其每秒闪烁一次。
为了防止程序崩溃,我就傻傻的继续写程序。 后来程序变大了,发现问题就更浪费时间了。
好的,我正在编程无极单片机,今天给大家介绍一下。 字数不多,但添加图片非常耗时(意味着你可以安排三个连续的系列)。