您当前的位置:首页 > 美文欣赏 > 内容

单片机最小系统包括哪些电路,了解STM32单片机最小系统

单片机最小系统包括哪些电路,了解STM32单片机最小系统

STM32F103RCT6:

STM32F103RCT6是一款嵌入式微控制器集成电路(IC),采用32位Cortex-M3内核处理器,速度为72MHz,程序存储容量为256KB,程序存储类型为FLASH,ram容量为48K,封装为LQFP64。

STM32单片机的命名规则:

STM32单片机最小系统:

所谓单片机最小系统,就是由最少的、使单片机正常运行所必需的器件组成的系统。单片机最小系统上电后,单片机可以正常复位和下载程序,没有其他功能。在保证最小系统正确性的基础上,可以依次加入其他功能模块或器件,使单片机具有实用功能。STM32单片机最小系统包括复位电路和时钟电路。如下图1所示。图中复位电路采用上电复位电路,当STM32微控制器的NRST引脚输入低电平时发生复位。

图1 STM 32 f 103单片机最小系统

电源引脚:

VDD是单片机数字电源的正极,VSS是数字电源的负极,and 5脚,VSS 5脚。VDDA是单片机模拟电源的正极,负责给内部ADC和DAC模块供电,VSSA是模拟电源的负极。

还有一个电源引脚,即VBAT,BAT就是电池,用来连接电池的正极。STM32有RTC功能(实时时钟),所以有VBAT管脚。

原理图中预留了一块CR1220纽扣锂电池。当主电源存在时,系统中的VCC3.3向VBAT供电。当主电源断电时,CR1220的纽扣电池向STM32的RTC模块供电,从而保证实时时钟模块在主电源断电时仍能正常工作。

但是有了这个设计,就有一个矛盾需要解决。如果VBAT引脚直接接VCC3.3和CR1220,会出现以下问题1、当电池电压高于3.3V时,电池会输出电流到AMS1117,使芯片发热,快速消耗电池电量。2、如果电池电压低于3.3V,AMS1117产生的3.3V会给电池充电,但是这个CR1220电池不能充电。

为了解决上述问题,我们将VBAT引脚的供电电路设计如下:

D1阻止电池电流流向AMS1117,D2阻止AMS1117产生的3.3V电流流向电池。这样设计的原因是“二极管单向导通”。在正常的产品设计中,最好在每个电源引脚旁边放置一个0.1uF的电容滤波器,以滤除电源的噪声和杂波。

重置引脚NRST

重置是重新启动。STM32的reset引脚复位为低电平,处于正常工作状态,reset引脚为高电平。

单片机置位和复位的目的是将电路初始化到某一状态。复位时,微控制器将存储设备和一些寄存器加载到制造商预设的值中。一般来说,单片机复位电路的作用是将一个状态机初始化为空状态。

单片机实现上电复位的原理:

复位管脚NRST外接电容和电阻。当复位电平(低电平)持续超过两个机器周期时,复位有效。系统上电后,由于电容的充电,会保持低电平一段时间,使单片机复位。刚上电,电容两端电压为0,即低电平复位。rc电路有充电曲线(即电容两端的电压变化曲线),单片机识别外部电平有连接电压,使RC电路的电容电压充电到单片机临界电压的时间能满足单片机两个机器周期以上的复位条件。当3.3V电源施加到VCC3.3时,RC电路导通,NRST与地之间的电位差就是电容与地之间的电位差。只有在电容器充电后,NRST和地之间的电势差才会达到3.3V,因此在电容器充电期间,到芯片管脚的信号为低。根据

STM32有两组晶振,一组用于为单片机提供主时钟(5:OSC_IN,6:OSC_OUT),主时钟晶振采用8MHz晶振(为了程序内部倍频方便,一般选用8MHz晶振)。一套用于为RTC提供时钟(3:OSC32_IN,4:OSC32_OUT),RTC的时钟晶振需要连接一个32.768K的晶振你可以去百度一下为什么用32.768KHz。在实际应用中,如果不使用RTC功能,则不需要连接RTC的晶振。

STM32的时钟电路分为内部时钟和外部时钟两种模式。对于外部时钟,在OSC_IN和OSC_OUT之间增加一个晶体振荡器,单片机内部振荡器可以产生自激振荡和时钟信号。在晶振两侧增加20 ~ 30pf的陶瓷电容,起到微调时钟频率的作用,使频率更加稳定。内部时钟由STM32中的内部时钟产生,所以如果不需要外部晶振,就不需要连接。内部时钟采用芯片内部振荡器电路,精度低,温漂大,不需要外部振荡器。

靴销

STM32有两个BOOT引脚,即BOOT0和BOOT1。这两个引脚的电平决定了单片机的启动模式和工作模式。

第一种引导模式(BOOT1=X,BOOT0=0)是最常用的用户闪存引导。默认启动模式。第二种引导模式(BOOT1=0,BOOT0=1)是系统内存引导模式。STM32自带的BootLoader(俗称ISP程序)就是在这种启动模式下。如果程序出现硬件错误,可以将BOOT0=1切换到此模式,重新写Flash恢复正常。芯片出厂后没有人可以修改或擦除BootLoader所在区域的内容,也就是ROM区域。第三种引导模式(BOOT1=1,BOOT0=1)是嵌入STM32的SRAM引导。此模式用于调试。

一般我把BOOT0和BOOT1接地。

以上是最小系统的全部内容。当然,只有以上部分是不够的。通常,最小系统还包括以下部分:

电源电路:

因为STM32微控制器通常是3.3V供电,而生活中常见的电源是5V(电脑的USB口,手机充电器,移动电源.),AMS1117-3.3V稳压电源芯片一般用来把5V降压到3.3V,这种芯片的封装一般是SOT223。

下载电路:

当然,除了以上部分,还需要一个下载电路。STM32的下载方式有几种:(1)串行下载:串行下载的使用需要单片机中相应程序的支持,这样的程序放在系统存储器中,由ST在生产线上编写,通过可用的串行接口对flash存储器进行重新编程。(在系统内存的引导模式下下载,因为串口下载程序的固件是在厂商提供的BootLoader中提供的,程序可以通过这个BootLoader下载到系统的Flash中。该程序被闪存烧录)。注意:使用该方法需要BOOT0=1,即需要外部电路支持才能实现串口下载。

(2)JLINK或STLINK下载一般我们使用JTAG或SWD模式下载程序。

建议在SWD模式下下载,只需要三个管脚(GND、SWCLK、SWDIO)就可以实现程序的下载功能。

审核编辑:李倩

标签:单片程序电源


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 无线功放音响哪个品牌好?无线音响怎么用

下一篇: AB类功放和D类功放的区别是什么?ab类功放有什么特点



推荐阅读

网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号