如何绘制STM32单片机的最小系统
一个单片机开发板就是“单片机+外设芯片”。一个单片机开发板需要做什么功能,完全由你自己决定。你只能用单片机做一个开发板,也就是刚才说的最小系统板,或者可以做单片机的所有功能,也可以只做一部分。
我们需要做的就是使用具有单片机所有引脚功能的开发板。先画出单片机的最小系统,然后可以继续添加其他外围设备。
在上一篇文章中,我们已经画出了单片机。相信你对STM32F103VET6有一定的了解。
电源引脚:
VDD是单片机数字电源的正极,VSS是数字电源的负极,* * *有五个VDD引脚和五个VSS引脚。VDDA是单片机模拟电源的正极,负责给内部ADC和DAC模块供电,VSSA是模拟电源的负极。VREF+是基准电压输入引脚的正极,VREF-是基准电压输入引脚的负极。
最后一段提到了ADC和DAC模块,它们是数字和模拟的结合体,负责数字和模拟信号的转换。在某些应用中,对信号噪声的要求很高,需要将数字信号和模拟信号分开,并采取一定的措施将它们连接起来,避免相互影响。因此,微控制器将具有数字电源和模拟电源引脚。因为模拟电源需要非常标准的电压信号。这是VREF引脚。但作为开发板,只用于学习单片机,所以对噪声要求不高,我们只需要做一个简单的隔离措施:在VDD和VDDA之间接一个0欧姆的电阻,同理,在VSS和VSSA之间接一个0欧姆的电阻。
将VREF+连接到VDDA,将VREF-连接到VSSA。(实际应用中,VREF+用于连接标准电压输出,如REF3133,可以产生标准的3.300V V..前面说过,开发板是用来学习的。不需要将标准3.3V连接到VREF。如果非要连一个,我也不拦。)
还有一个电源引脚,是VBAT,BAT是电池,所以很容易理解这个引脚是用来接电池正极的。STM32有RTC功能(实时时钟),所以有VBAT管脚。
这里有一个矛盾需要解决。我们需要在开发板上安装一块电池,并将其连接到VBAT引脚,以便为RTC供电。我们还希望在没有安装电池的情况下,用USB电源的3.3V给VBAT引脚供电。如果是直连,会有两个后果:1。当电池电压高于3.3V时,电池会输出电流到AMS1117,使芯片发热,快速消耗电池电量。2.如果电池电压低于3.3V,AMS1117产生的3.3V会给电池充电,但是这个CR1220电池不能充电。
于是有了下面的解决方案:
D1防止AMS1117产生的3.3V流向电池,D2防止电池的电流流向AMS 117。原因很简单,利用“二极管单向导电”。(无论哪个行业,专家都是那些基础非常扎实的人。)
应在所有电源引脚旁边放置一个0.1uF的电容滤波器,以滤除电源的噪声和杂波。
光电源写了这么久,手指都干了。
复位引脚
重置是重新启动。STM32的reset引脚复位为低电平,处于正常工作状态,reset引脚为高电平。
晶体振荡器引脚
STM32有两组晶振,一组用来为单片机提供主时钟,另一组用来为RTC提供时钟。(在实际应用中,如果不使用RTC功能,则不需要连接RTC的晶振。由于STM32的内部时钟为8M,因此无需外部晶振即可连接。)在开发板上,我们需要学习内部时钟和RTC的转换,所以需要连接这两组晶振。
(这是主时钟晶振,一般8M。当然10M,12M,16M都可以。但是,大家都用8M。为了程序的统一,我们一般用8M。)
(这是RTC时钟晶振,需要连接32.768K晶振。你可以百度一下为什么用32.768,这里就不多说了。)
靴销
STM32有两个BOOT引脚,即BOOT0和BOOT1。这两个引脚的电平决定了单片机的启动模式和工作模式。
在这里,我们不需要知道BOOT0和Boot 1分别变高变低会发生什么。先引出BOOT0和BOOT1的管脚,然后可以在管脚排列上随机配置BOOT0和BOOT1的高点等级,然后制作开发板后就可以学习这两个管脚的用法了。
至此,最小系统绘制完成。