最近在面试时经常在概念上吃亏,对于每天在写code的程序员,经常会忘记很多概念。所以温习一下并记录下来,方便以后使用。
1、STM32F103ZET6拥有的资源包括:
64KB SRAM、512KB FLASH、2个基本定时器、4个通用定时器、2个高级定时器、
2个DMA控制器(共12个通道)、3个SPI、2个IIC、
5个串口、1个USB、1个CAN、3个12位ADC、1个12位DAC、
1个SDIO接口、1个FSMC接口、112个通用IO口
2、STM32有5个时钟源:HSI、HSE、LSI、LSE、PLL
HSI是高速内部时钟,频率为8MHzHSE是高速外部时钟,可接频率在4MHz~16MHz范围的晶振,一般是外接8MHz的晶振
LSI是低速内部时钟,频率为40kHz,看门狗一般使用该时钟源
LSE是低速外部时钟,接频率为32.768kHz的石英晶体,这个主要是RTC的时钟源
PLL是锁相环倍频输出,其时钟输入源可以选择HSI/2、HSE或者HSE/2。倍频可选择为2~16倍,但输出频率最大不得超过72MHz
3、STM32F103有16个内核中断和60个可屏蔽中断,具有16个可编程中断优先级
中断优先级分为抢占优先级和子优先级(响应优先级),抢占优先级的级别高于响应优先级数值越小所代表的优先级就越高。
注意:
(1)如果两个中断的抢占优先级和响应优先级都一样的话则看哪个中断先发生就先执行。
(2)高优先级的抢占优先级是可以打断正在进行的低抢占优先级中断。而抢占优先级相同
的中断,高优先级的响应优先级不可以打断低响应优先级的中断。
4、IO口的8种模式:
(1)浮空输入(2)上拉输入
(3)下拉输入
(4)模拟输入
(5)开漏输出
(6)推挽输出
(7)复用推挽输出
(8)复用开漏输出
5、STM32供IO口使用的中断线有16个
GPIOx.0对应中断线0......
GPIOx.15对应中断线15
6、STM32定时器:
高级定时器:TIME1、TIME8通用定时器:TIME2~TIME5
基本定时器:TIME6、TIME7
基本定时器只具备基本的定时功能,通用定时器不仅具有定时功能,还具有捕获/比较,PWM输出等功能
高级定时器不仅具有通用定时器功能,还有三相6步电机的接口、刹车功能。
7、定时器的时钟来源:
(1)内部时钟(2)外部输入脚
(3)外部触发输入
(4)内部触发输入(A定时器为B定时器提供时钟)