STM32F103xx系列单片机介绍
STM32F103xx系列单片机介绍RISCARMCortex-M332位的STM32F103xx增强型系列由意法半导体集团设计,使用高性能的丰SRAM),字节的闪存和20K字节的(内核,工作频率为72MHz,内置高速存储器高达128K、位的ADC2个12富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含和个I2C还包含标准和先进的通信接口:多达23个通用16位定时器和一个PWM定时器, 。USB和一个CANSPI、3个USART、一个 、结构与功能1-M3CPU ?ARM32位的Cortex■内核: 等待周期的存储器),072MHz,1.25DMips/MHz(Dhrystone2.1? 支持单周期乘法和硬件除法? ■存储器?从32K字节至512K字节的闪存程序存储器(STM32F103xx中的第二个x表示FLASH容量,其中:“4”=16K,“6”=32K,“8”=64K,B=128K,C=256K,D=384K,E=512K) ?从6K字节至64K字节的SRAM ■时钟、复位和电源管理 ?2.0至3.6伏供电和I/O管脚 ?上电/断电复位(POR/PDR)、可编程电压监测器(PVD) ?内嵌4至16MHz高速晶体振荡器 ?内嵌经出厂调校的8MHz的RC振荡器 ?内嵌40kHz的RC振荡器 ?PLL供应CPU时钟 ?带校准功能的32kHzRTC振荡器 ■低功耗 ?睡眠、停机和待机模式 ?VBAT为RTC和后备寄存器供电 ■2个12位模数转换器,1us转换时间(16通道) ?转换范围:0至3.6V ?双采样和保持功能 ?温度传感器 ■DMA ?7通道DMA控制器 ?支持的外设:定时器、ADC、SPI、I2C和USART ■多达80个快速I/O口 ?26/37/51/80个多功能双向5V兼容的I/O口 个外部中断16口可以映像到I/O所有?. ■调试模式 和JTAG接口?串行线调试(SWD) ■多达7个定时器或脉冲计数输出比较/PWM位定时器,每个定时器有多达3个164个用于输入捕获/?多达 的通道 6通道高级控制定时器?16位 PWM输出?多达6路 /中间对齐波形和紧急制动?死区控制、边缘) (独立的和窗口型的?2个看门狗定时器 位自减型?系统时间定时器:24 个通信接口■多达9(SMBus/PMBus) 接口?多达2个I2C 接口和调制解调控制,LIN,IrDA?多达3个USART接口,支持ISO7816) (18兆位/秒2?多达个SPI同步串行接口) CAN接口(2.0B主动? ?USB2.0全速接口 封装(兼容RoHS)■ECOPACK? 2、特点概述 -M3核心?ARM?的Cortex的需要提处理器,它为实现MCUARM的Cortex-M3处理器是最新一代的嵌入式ARM同时提供卓越的计算性能和先进的缩减的管脚数目、降低的系统功耗,供了低成本的平台、8处理器,提供额外的代码效率,通常在Cortex-M3是32位的RISC中断系统响应。ARM的 核心的高性能。和16位系统的存储空间上得以体现ARM ARM核心,因此它与所有的ARM工具和软件兼容。STM32F103xx增强型系列拥有内置的 存储器Flash存储器和RAM嵌入式多字节的内置闪存存储器,用于存放程序和数据。STM32F103xE最新型拥有高达512K达64KB的嵌入式SRAM可以以CPU的时钟速度进行读写(不待等待状态)。 模拟/数字转换器(ADC) STM32F103xx增强型产品内嵌2个12位的模拟/数字转换器(ADC),每个ADC有多达16个外部通道,可以实现单次或扫描转换。在扫描模式下,转换在选定的一组模拟输入上自动进行。 ADC接口上额外的逻辑功能允许: 1、同时采样和保持; 、交叉采样和保持;2. 3、单次采样。当被监视的信号超模拟看门狗功能允许非常精准地监视一路、多路或所有选中的通道,产生的事件,和高级控制定时器(TIM1)出预置的阀值时,将产生中断。由标准定时器(TIMx)转触发,以使应用程序能同步ADADC的开始触发、外部触发和DMA可以分别内部级联到 换和时钟。可变静态存储器(FSMC) FSMC嵌入在STM32F103xC,STM32F103xD,STM32F103xE中,带有4个片选,支持一下模式:Flash、RAM、PSRAM、NOR和NAND。3个FSMC中断线经过OR后连接到NVIC。没有读/写FIFO,除PCCARD之外,代码都是从外部存储器执行,不支持Boot,目标频率等于SYSCLK/2,所以当系统时钟是72MHz时,外部访问按照36MHz进行。 嵌套矢量中断控制器(NVIC) 可以处理43个可屏蔽中断通道(不包括Cortex-M3的16根中断线),提供16个中断优先级。紧密耦合的NVIC实现了更低的中断处理延迟,直接向内核传递中断入口向量表地址,紧密耦合的NVIC内核接口,允许中断提前处理,对后到的更高优先级的中断进行处理,支持尾链,自动保存处理器状态,中断入口在中断退出时自动恢复,不需要指令干预。 外部中断/事件控制器(EXTI) 外部中断/事件控制器由用于19条产生中断/事件请求的边沿探测器线组成。每条线可以被单独配置用于选择触发事件(上升沿,下降沿,或者两者都可以),也可以被单独屏蔽。有一个挂起寄存器来维护中断请求的状态。当外部线上出现长度超过内部APB2时钟周期的脉冲时,EXTI能够探测到。多达112个GPIO连接到16个外部中断线。 时钟和启动 在启动的时候还是要进行系统时钟选择,但复位的时候内部8MHz的晶振被选用作CPU时钟。可以选择一个外部的4-16MHz的时钟,并且会被监视来判定是否成功。在这期间,控制器被禁止并且软件中断管理也随后被禁止。同时,如果有需要(例如碰到一个间接使用的晶振失败),PLL时钟的中断管理完全可用。多个预比较器可以用于配置AHB频率,包括高速APB(PB2)和低速APB(APB1),高速APB最高的频率为72MHz,低速APB最高的频率为36MHz。 Boot模式 在启动的时候,Boot引脚被用来在3种Boot选项种选择一种:从用户Flash导入,从系统存储器导入,从SRAM导入。Boot导入程序位于系统存储器,用于通过USART1重新对Flash存储器编程。 电源供电方案 VDD,电压范围为2.0V-3.6V,外部电源通过VDD引脚提供,用于I/O和内部调压器。VSSA和VDDA,电压范围为2.0-3.6V,外部模拟电压输入,用于ADC,复位模块,RC和PLL,,VBAT。VDD和VSS必须相应连接到VDDA和VSSA,)2.4V被限制在ADC(范围之内VDD在. 电压范围为1.8-3.6V,当VDD无效时为RTC,外部32KHz晶振和备份寄存器供电(通过电源切换实现)。 电源管理 设备有一个完整的上电复位(POR)和掉电复位(PDR)电路。这条电路一直有效,用于确保从2V启动或者掉到2V的时候进行一些必要的操作。当VDD低于一个特定