3_认识STM32芯片(1)

我所使用的STM32实验板芯片类型是STM32F103VBT6,下面详细介绍这个芯片的资源。

这里提供这款芯片的中文数据手册和英文数据手册:链接:http://pan.baidu.com/s/1eR7hW9W 密码:y6tx

STM32F103VB:使用了高性能的ARM Cortex-M3 32位的RISC内核,工作频率为72MHZ,内置高速存储器(128KB的flash,20KB的RAM,CPU能以0等待周期读写),丰富的增强I/O端口和连接到两条APB总线的外设。3个通用定时器,1个高级定时器,7个通信口(2个SPI,2个IIC,3个USART,1个USB,1个CAN),80个通用I/O接口,2个16通道的12位同步ADC。

嵌套的向量式中断控制器(NVIC)

STM32F103XX能处理多达43个可屏蔽中断通道(不包括16个Cortex-M3的中断线)和16个优先级

外部中断/事件控制器(EXTI)

外部中断/事件控制器包含19个边沿检测器,用于产生中断/事件请求。

每个中断线都可以独立地配置它的触发事件(上升沿,下降沿,双边沿),能够单独地被屏蔽;有一个挂起寄存器维持所有中断请求的状态。

EXTI可以检测到脉冲宽度小于APB2的时钟周期。多达80个通用I/O口连接到16个外部中断线。

时钟和启动

系统时钟的选择是在启动时进行,复位时内部8MHZ的RC振荡器被选为默认的CPU时钟,随后可以选择外部的,具有失效监控的4-16MHZ时钟;

当外部时钟失效时,它将被隔离,同时会产生相应的中断。同样,在需要时可以采取对PLL时钟完全的中断管理(如当一个外接的振荡器失效时)。

具有多个预分频器用于配置AHB的频率,高速APB(APB2)和低速APB(APB1)区域。AHB和高速APB的最高频率是72MHZ,低速APB的最高频率为36MHZ。

引导模式

在启动时,引导管脚被用于选择三种引导模式中的一种:

从用户闪存ROM引导

从系统存储器引导

从SRAM引导

电源供电

VDD=2.0V到3.6V时,VDD管脚提供I/O管脚和内部调压器的供电。

VSSA,VDDA=2.0-3.6V时,为ADC、复位模块、RC振荡器、和PLL的模拟部分提供供电。使用ADC时。VDD不得小于2.4V。

VBAT=1.8-3.6V,当电源开关关闭VDD时,为RTC、外部32Khz振荡器和后备寄存器供电。

DMA

灵活的7路DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输:DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。

每个通道都有专门的硬件DMA请求逻辑,同时可以由软件触发每个通道:传输的长度、传输的源地址和目标地址都可以通过软件单独设置。

DMA可以用于主要的外设:SPI,I2C,USART,通用和高级定时器TIMX和ADC。

RTC和后背寄存器

RTC和后备寄存器通过一个开关来供电,在VDD有效时该开关选择VDD来供电,否则由VBAT管脚来供电。后备寄存器(10个16位的寄存器)可以用于在VDD消失时保存数据。

原文地址:https://www.cnblogs.com/OathKeeper/p/7737606.html