一、系统架构
四个主动单元:DCode(数据总线)、DMA1、DMA2、系统总线
四个被动单元:SRAM、Flash、FSMC(存储控制器)、AHB到APB的桥
二、存储器映像***
三、电源
STM32工作电压VDD为2.0-3.6V,通过电压调节器提供1.8V电压。当VDD断电后,VBAT为实时时钟(RTC)和备份寄存器提供电压。
四、时钟控制RCC
1.时钟控制寄存器(RCC_CR)
2.时钟配置寄存器(RCC_CFGR)
3.APB2外设复位寄存器(RCC_APB2RSTR)
0:无作用
1:复位
4.APB2外设时钟使能寄存器(RCC_APB2ENR)***
0:时钟关闭
1:时钟开启
五、通用输入输出GPIO***
1.输入输出模式***
输入模式:
1.输入浮空:浮空最大的特点就是电压的不确定性,它可能是0V,也可能是VCC,还可能是介于两者之间的某个值。浮空输入一般多用于外部按键、ADC输入用,这样可以减少上下拉电阻对结果的影响。
2.输入上拉
上拉就是把点位拉高,比如拉到Vcc。上拉就是将不确定的信号通过一个电阻嵌位在高电平。电阻同时起到限流的作用。弱强只是上拉电阻的阻值不同,没有什么严格区分。
3.模拟输入
模拟输入是指传统方式的输入,数字输入是输入PCM数字信号,即0、1的二进制数字信号,通过数模转换,转换成模拟信号,经前级放大进入功率放大器,功率放大器还是模拟的。
4.输入下拉
输出模式
1.开漏输出
输出端相当于三极管的集电极,要得到高电平状态需要上拉电阻才行,适合于做电流型的驱动,其吸收电流的能力相对强(一般20mA以内)。
2.复用开漏输出
可以理解为GPIO口被用作第二功能时的配置情况(即并非作为通用IO口使用)。端口必须配置成复用功能输出模式(推挽或开漏)。
3.推挽输出*
可以输出高、低电平,连接数字器件;推挽结构一般是指两个三级管分别受到互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源低定。
推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形方法任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小,效率高。输出即可以向负载灌电流。推拉式输出级即提高电路的负载能力,又提高开关速度。
4.复用推挽输出
可以理解为GPIO口被用作第二功能时的配置情况(并非作为通用IO口使用)。