STM32F103微控制器.ppt
《STM32F103微控制器.ppt》由会员分享,可在线阅读,更多相关《STM32F103微控制器.ppt(36页珍藏版)》请在三一办公上搜索。
1、第2章 STM32F103微控制器,2.1 STM32F103概述2.2 STM32F103ZET6管脚定义2.3 STM32F103架构2.4 STM32F103存储器2.5 STM32F103片内外设2.6 ST32F103异常与中断2.7 本章小结,2.1 STM32F103概述,STM32F103ZET6芯片的主要特性如下:,(1)集成了32位的ARM Cortex-M3内核,最高工作频率可达72MHz,计算能力为1.25DMIPS/MHz(Dhrystone 2.1),具有单周期乘法指令和硬件除法器;,(2)具有512kB片内FLASH存储器和64kB片内SRAM存储器;,(3)内部
2、集成了8MHz晶体振荡器,可外接416MHz时钟源;,(4)2.0V3.6V单一供电电源,具有上电复位功能(POR);,(5)具有睡眠、停止、待机等三种低功耗工作模式;,(6)144管脚LQFP封装(薄型四边引线扁平封装);,(7)内部集成了11个定时器:4个16位的通用定时器,2个16位的可产生PWM波控制电机的定时器,2个16位的可驱动DAC的定时器,2个加窗的看门狗定时器和1个24位的系统节拍定时器(24位减计数);,(8)2个12位的DAC和3个12位的ADC(21通道);,(9)集成了内部温度传感和实时时钟RTC;,(10)具有112根高速通用输入输出口(GPIO),可从其中任 选1
3、6根作为外部中断输入口,几乎全部GPIO可承受5V输入(PA0PA7、PB0PB1、PC0PC5、PC13PC15和PF6PF10除外);,(11)集成了13个外部通信接口:2个I2C、3个SPI(18Mbps,其中复用2个I2S)、1个CAN(2.0B)、5个UART、1个USB 2.0设备和1个并行SDIO;,(12)具有12通道的DMA控制器,支持定时器、ADC、DAC、SDIO、I2S、SPI、I2C和UART外设;,(13)具有96位的全球唯一编号;,(14)工作温度为40105;,STM32F103家族中的其他型号芯片与STM32F103ZET6芯片相比,内核相同,工作频率相同,但
4、片内FLASH存储器和SRAM存储器的容量以及片内外设数量有所不同,对外部的通信接口数量和芯片封装也各不相同,因此性价比也各不相同。,值得一提的是,STM32F103xC、STM32F103xD和STM32F103xE(x=R,V或Z)这三个系列的相同封装的芯片是管脚兼容的,这种芯片兼容方式是芯片升级换代的最高兼容标准。,STM32F103系列微控制器主要用于电机控制、工业智能控制、医疗设备、计算机外围终端和全球定位系统(GPS)等。,2.2 STM32F103ZET6管脚定义,芯片STM32F103ZET6为144管脚LQFP144封装,其外型如图2-1所示。,图2-1 STM32F103Z
5、ET6外型,图2-1可知,芯片STM32F103ZET6包括7个16位的通用目的输入输出口(GPIO),依次称为PA、PB、PC、PD、PE、PF和PG口,几乎每个GPIO口都复用了其他的功能(PG8和PG15例外)。芯片STM32F103ZET6的各个管脚的定义如表2-1所示。,表2-1 芯片STM32F103ZET6的管脚定义,表2-1中VSS_x(x1,2,.,11)接地,VDD_x(x=1,2,.,11)接2.0V3.6V电源,为芯片中数字电路部分提供能源;VBAT接1.8V3.6V电池电源,为RTC时钟提供能源;VDDA接模拟电源,VSSA接模拟地,为芯片中模拟电路部提供能源;VRE
6、F+和VREF-为ADC模拟参考电压正负输入端。,BOOT0和BOOT1(表2-1中序号19)用于选择STM32F103ZET6上电启动方式,如果BOOT0=0(BOOT1无效),则从FLASH存储器启动,此时FLASH存储器可从0 x0地址访问或从其物理地址0 x800 0000访问。如果BOOT01,则由BOOT1管脚的输入电平决定启动方式:如果BOOT10,则由系统存储器(System Memory)启动,此时系统存储器映射到0 x0地址处,可以从0 x0地址或从系统存储器的物理地址0 x1FFF F000处访问该存储器;如果BOOT11,则由片上SRAM存储器启动,访问地址为0 x20
7、00 0000。一般地,配置BOOT00,即从片上FLASH启动。OSC_IN和OSC_OUT用于连接外部高精度晶体振荡器。NRST为芯片复位输入信号,低有效。,2.3 STM32F103架构,STM32F103ZET6的内部结构如图2-2所示。,图2-2 STM32F103ZET6内部结构框图,STM32F103ZET6集成了Cortex-M3内核CPU,工作频率为72MHz,与CPU紧耦合的为嵌套向量中断控制器NVIC和跟踪调试单元,其中,调试单元支持标准JTAG和串行SW两种调试方式;16个外部中断源作为NVIC中断控制器的一部分。CPU通过指令总线直接到FLASH取指令,通过数据总线和
8、总线阵列与FLASH和SRAM交换数据,DMA可以直接通过总线阵列控制定时器、ADC、DAC、SDIO、I2S、SPI、I2C和UART。,Cortex-M3内核CPU通过总线阵列和高性能总线(AHB)以及AHBAPB(高级外设总线)桥与两类APB总线相连接,即APB1总线和APB2总线。其中,APB2总线工作在72MHz下,与它相连的外设有外部中断与唤醒控制、七个通用目的输入输出口(PA、PB、PC、PD、PE、PF和PG)、定时器1、定时器8、SPI1、USART1、3个ADC和内部温度传感器。其中,3个ADC和内部温度传感器使用VDDA电源。,APB1总线最高可工作在36MHz频率下,与
9、APB1总线相连的外设有看门狗定时器、定时器6、定时器7、RTC时钟、定时器2、定时器3、定时器4、定时器5、USART2、USART3、UART4、UART5、SPI2(I2S2)与SPI3(I2S3)、I2C1与I2C2、CAN、USB设备和2个DAC。其中,512B的SRAM属于CAN模块,看门狗时钟源使用VDD电源,RTC时钟源使用VBAT电源。,STM32F103ZET6芯片内部具有8MHz和40kHz的RC振荡器,时钟与复位控制器和SDIO模块直接与AHB总线相连接。而静态存储器控制器(FSMC)直接与总线阵列相连接。,在图2-2中,各个功能模块都有专用的工作时钟源,通过管理这些时
10、钟源使得这些模块处于工作状态还是低功耗状态。STM32F103ZET6芯片的时钟管理如图2-3所示。,图2-3 STM32F103ZET6时钟管理,在图2-3中,内部8MHz的时钟记为HSI,外部输入的416MHz(一般是8MHz)时钟记为HSE,内部的40kHz时钟记为LSI,外部输入的32.768kHz时钟称为LSE。STM32F103ZET6的时钟管理非常灵活。,在图2-3的右下角,STM32F103ZET6芯片可向外部输出PLLCLK/2、HSE、HSI和SYSCLK四个时钟信号之一。,从图2-3的左边向右边看过去,外部可接8MHz时钟(由OSC_IN和OSC_OUT管脚接入)和32.
11、768kHz时钟(由OSC32_IN和OSC32_OUT管脚接入)。,系统时钟SYSCLK来自HSI、PLLCLK(PLL倍频器输入时钟)和HSE三个时钟源中的一个,其中,PLL倍频器的输入为HSI/2或PLLXTPRE选通的时钟信号(即OSC输出时钟或其二分频值)。SYSCLK直接送给I2S2、I2S3和AHB预分频器(分频值为1、1/2、1/3、.、1/512)。,AHB预分频器的输出时钟供给SDIO、FSMC、APB1外设、APB2外设和ADC等,同时,AHB预分频器的输出时钟还直接作为AHB总线、Cortex内核、存储器和DMA的HCLK时钟,并作为Cortex内核自由运行时钟FCLK
12、,1/8分频后作为Cortex系统定时器时钟源。APB1预分频器的输出时钟作为APB1外设的时钟源,并且经“定时器27倍频器”倍频后作为定时器27的时钟源。,此外,RTC定时器的时钟源为HSE/128、LSE或LSI之一,看门狗定时器由LSI提供时钟。,APB2预分频器的输出时钟作为APB2外设的时钟源,经“定时器1和8倍频器”倍频后作为定时器1和8的时钟源,经ADC预分频器后作为ADC1、ADC2和ADC3的时钟源。AHB预分频器的输出时钟二分频后,用作SDIO与AHB总线的接口时钟。,需要指出的是,每个外设的时源受“外设时钟控制”寄存器管理,可以单独打开或关闭时钟源。,2.4 STM32F
13、103存储器,STM32F103ZET6芯片的存储器配置如图2-4所示。,表2-2 APB外设映射的存储空间(基地址为0 x4000 0000,大小均为1kB,即0 x400),由图2-4可知,STM32F103ZET6芯片是32位的微控制器,可寻址存储空间大小为2324GB,分为8个512MB的存储块,存储块0的地址范围为0 x00 x1FFF FFFF,存储块1的地址范围为0 x2000 0000 0 x3FFF FFFF,依次类推,存储块7的地址范围为0 xE000 00000 xFFFF FFFF。,STM32F103ZET6芯片的可寻址空间大小为4GB,但是并不意味着0 x00 xF
14、FFF FFFF地址空间均可以有效的访问,只有映射了真实物理存储器的存储空间才能被有效地访问。,对于存储块0,如图2-4所示,片内FLASH映射到地址空间0 x0800 00000 x0807 FFFF(512kB大小),系统存储器(System Memory)映射到地址空间0 x1FFF F0000 x1FFF F7FF(2kB大小),用户选项字节(Option Bytes)映射到地址空间0 x1FFF F8000 x1FFF F80F(16字节大小)。,同时,地址范围0 x00 x7 FFFF,根据启动模式要求,可以作为FLASH或系统存储器的别名访问空间,例如,BOOT00时,片内FLA
15、SH同时映射到地址空间0 x00 x7 FFFF和地址空间0 x0800 00000 x0807 FFFF,即地址空间0 x00 x7 FFFF是FLASH存储器。除这些之外,其他的空间是保留的。,512MB的存储块1中只有地址空间0 x2000 00000 x2000 FFFF映射了64kB的SRAM存储器,其余空间是保留的。,尽管STM32F103ZET6微控制器具有两个APB总线,且这两个总线上的外设访问速度不同,但是,芯片存储空间中并没有区别这两个外设的访问空间,而是把全部APB外设映射到存储块2中,每个外设的寄存器占居1kB大小的空间,如表2-2所示。,除了表2-2中的地址空间外,存
16、储块2中其他空间是保留的。,表2-2中的“USB/CAN共享”对应的1kB存储空间,对于CAN而言,实际上只有512B字节的SRAM空间。,STM32F103ZET6芯片的一个特色在于其对外部静态存储器的支持,存储块35都是为访问外部灵活的静态存储器(FSMC)服务的,其中,存储块3包含了FSMC块1和块2,存储块4包括了FSMC块3和块4,这四个FSMC块直接对应外部映射的静态存储器,如表2-3所示。,表2-3 FSMC块与映射的静态存储器,需要注意的是,如果某个FSMC块中映射了真实的物理静态存储器,但是映射的物理存储器的大小比FSMC块的空间要小得多,则实际上能访问的空间取决于物理静态存
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- STM32F103 控制器
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5449580.html