STM32最小系统硬件组成详解
0组成: 电源 复位 时钟 调试接口 启动
1、电源 : 一般3.3V LDO供电 加多个0.01uf去耦电容
2、复位:有三种复位方式:上电复位、手动复位、程序自动复位
通常低电平复位:(51单片机高电平复位,电容电阻位置调换)
上电复位,在上电瞬间,电容充电,RESET出现短暂的低电平,该低电平持续时间由电阻和电容共同决定,计算方式如下:t = 1.1RC(固定计算公式) 1.1*10K*0.0.1uF=1.1S
需求的复位信号持续时间约在1ms左右。
手动复位:按键按下时,RESET和地导通,从而产生一个低电平,实现复位。
3、时钟 : 晶振+起振电容 +(反馈电阻MΩ级)
如使用内部时钟:
对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。
2)对于少于100脚的产品,有2种接法:
i)OSC_IN和OSC_OUT分别通过10K电阻接地。此方法可提高EMC性。
32.768KHZ:
可选择只接高速外部时钟8MHZ或 既多接一个32.768MHZ的外部低速时钟。
32.768KHZ时钟作用: 用于精准计时电路 万年历
通常会选择32.768KHz的晶振,原因在于32768=2^15,而嵌入式芯片分频设置寄存器通常是2的次幂的形式,这样经过15次分频后,就很容易的1HZ的频率。实现精准定时。用于精准计时电路 万年历
晶振:一般选择8MHZ 方便倍频
有源:更稳定 成本更高 需要接电源供电 不需要外围电路 3脚单线输出
无源:精度基本够 方便灵活 便宜 最大区别:是否需要单独供电 无源晶振需要外接起振电容:晶振的两侧有两个电容
有源晶振
作用:
1、使晶振两端的等效电容等于或接近于负载电容;
2、起到一定的滤波的作用,滤除晶振波形中的高频杂波;
该起振电容的大小一般选择10~40pF,当然根据不同的单片机使用手册可以具体查阅,如果手册上没有说明,一般选择20pF、30pF即可,这是个经验值。
调整电容可微调振荡频率:
一般情况下,增大电容会使振荡频率下降,而减小电容会使振荡频率升高,
反馈电阻: 1M 负反馈 同时也是限流
1、连接晶振的芯片端内部是一个线性运算放大器,将输入进行反向180度输出,晶振处的负载电容电阻组成的网络提供另外180度的相移; 整个环路的相移360度,满足振荡的相位条件,
2、 晶振输入输出连接的电阻作用是产生负反馈,保证放大器工作在高增益的线性区,一般在M欧级;
3、 限流的作用,防止反向器输出对晶振过驱动,损坏晶振,有的晶振不需要是因为把这个电阻已经集成到了晶振里面。
4、启动: 用户使用通常都设置成Boot0 Boot1均为0即均为低电平
M3核的器件有3种启动方式,M4的有4种。通过BOOT0,BOOT1的电平进行选择。
STM32三种启动模式对应的存储介质均是芯片内置的,它们是:
1)用户闪存 = 芯片内置的Flash。
2)SRAM = 芯片内置的RAM区,就是内存啦。
3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区,它是使用USART1作为通信口。
M4在上述基础上又增加了可在FSMC的BANK1区域启动。
5、调试接口:STM32有两种调试接口,JTAG为5针, SWD为2线串行(一共四线)
此外还有采用USB进行程序烧写和数据输出:和电脑USB口连接也可以进行小负载驱动供电。
通常采用CH340G的芯片:实现USB转串口。
需要单独的振荡电路 12MHZ
使用该芯片将电脑的USB映射为串口使用, 注意电脑上应安装串口驱动程序,否则不能正常识别。
当烧写程序时,我们希望BOOT0=1,BOOT1=0。当烧写完成后我们希望BOOT0=0,BOOT1=0(这个模式BOOT1可以是0可以是1,这里我们让BOOT1拉低,即整个过程BOOT1都为L接地,简化电路设计)。
上一篇:LPC824 使用FlashMagic 下载程序
下一篇:LPC2378烧写程序三种方法
推荐阅读最新更新时间:2024-03-16 16:22