STM32F103中文手册

更新时间:2023-08-21 17:21:01 阅读量: 高等教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

STM32F103中文手册

STM32F103x6

STM32F103x8 STM32F103xB

增强型,32位基于ARM核心的带闪存、USB、CAN的微控制器

功能■ 核心

ARM 32位的Cortex -M3CPU

72MHz,高达90DMips,1.25DMips/MHz 单周期硬件乘法和除法——加快计算 存储器

从32K字节至128K字节闪存程序存储器 从6K字节至20K字节SRAM 多重自举功能

时钟、复位和供电管理

2.0至3.6伏供电和I/O管脚

上电/断电复位(POR/PDR)、可编程电压监测器(PVD)、掉电监测器

内嵌4至16MHz高速晶体振荡器

内嵌经出厂调校的8MHz的RC振荡器 内嵌40kHz的RC振荡器 内嵌PLL供应CPU时钟

内嵌使用外部32kHz晶体的RTC振荡器 低功耗

3种省电模式:睡眠、停机和待机模式 VBAT为RTC和后备寄存器供电

2个12位模数转换器,1us转换时间(16通道) 转换范围是0至3.6V 双采样和保持功能 温度传感器 调试模式

串行线调试(SWD)和JTAG接口 DMA

7通道DMA控制器

支持的外设:定时器、ADC、SPI、I2C和USART

多达80个快速I/O口

26/36/51/80个多功能双向5V兼容的I/O口 所有I/O口可以映像到16个外部中断

初步信息

■ 多达7个定时器

多达3个同步的16位定时器,每个定时器有多达4个用于输入捕获/输出比较/PWM或脉冲计数的通道

16位6通道高级控制定时器

多达6路PWM输出 死区控制、边缘/中间对齐波形和紧急制动

■ ■

2个看门狗定时器(独立的和窗口型的) 系统时间定时器:24位的、带自动加载功能的

■ 多达9个通信接口

多达2个I2C接口(SMBus/PMBus)

多达3个USART接口,支持ISO7816,LIN,IrDA接口和调制解调控制

多达2个SPI同步串行接口(18兆位/秒) CAN接口(2.0B 主动) USB 2.0全速接口 ■ ECOPACK®封装(兼容RoHS)

表一 器件列表 参 考

基本型号

STM32F103R6,

STM32F103T6

STM32F103x8 STM32F103C8, STM32F103R8,

STM32F103V8, STM32F103T8

STM32F103xB STM32F103RB, STM32F103VB,

STM32F103C8

2007年10月 第三版 第1页

STM32F103中文手册

1 介绍

本文给出了STM32F103xx增强型的订购信息和器件的机械特性。

有关闪存存储器的编程、擦除和保护等信息,请参考《STM32F10x闪存编程参考手册》。 有关Cortex-M3的信息,请参考《Cortex-M3技术参考手册》

2 规格说明

STM32F103xx增强型系列使用高性能的ARM Cortex-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。

STM32F103xx增强型系列工作于-40°C至+105°C的温度范围,供电电压2.0V至3.6V,一系列的省电模式保证低功耗应用的要求。

完整的STM32F103xx增强型系列产品包括从36脚至100脚的五种不同封装形式;根据不同的封装形式,器件中的外设配置不尽相同。下面给出了该系列产品中所有外设的基本介绍。 这些丰富的外设配置,使得STM32F103xx增强型微控制器适合于多种应用场合: ● 电机驱动和应用控制 ● 医疗和手持设备 ● PC外设和GPS平台

● 工业应用:可编程控制器、变频器、打印机和扫描仪 ● 警报系统,视频对讲,和暖气通风空调系统 图一给出了该产品系列的框图。

STM32F103中文手册

2.1 器件一览

表二:器件功能和配置(STM32F103xx增强型)

STM32F103中文手册

2.2 概述

ARM的Cortex-M3处理器是最新一代的嵌入式ARM处理器,它为实现MCU的需要提供了低成本的平台、缩减的管脚数目、降低的系统功耗,同时提供卓越的计算性能和先进的中断系统响应。 ARM的Cortex-M3是32位的RISC处理器,提供额外的代码效率,在通常8和16位系统的存储空间上得到了ARM核心的高性能。

STM32F103xx增强型系列拥有内置的ARM核心,因此它与所有的ARM工具和软件兼容。 图一是该系列产品的功能框图。

ARM®的Cortex -M3核心并内嵌闪存和SRAM

内置闪存存储器

● 高达128K字节的内置闪存存储器,用于存放程序和数据。

内置SRAM

多达20K字节的内置SRAM,CPU能以0等待周期访问(读/写)。

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

STM32F103xx增强型内置嵌套的向量式中断控制器,能够处理多达43个可屏蔽中断通道(不包括16个Cortex-M3的中断线)和16个优先级。

● 紧耦合的NVIC能够达到低延迟的中断响应处理 ● 中断向量入口地址直接进入核心 ● 紧耦合的NVIC接口 ● 允许中断的早期处理 ● 处理晚到的较高优先级中断 ● 支持中断尾部链接功能 ● 自动保存处理器状态

● 中断返回时自动恢复,无需额外指令开销 该模块以最小的中断延迟提供灵活的中断管理功能。

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

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

每个中断线都可以独立地配置它的触发事件(上升沿或下降沿或双边沿),能够单独地被屏蔽;有一个挂起寄存器维持所有中断请求的状态。EXTI可以检测到脉冲宽度小于内部APB2的时钟周期。多达80个通用I/O口连接到16个外部中断线。

时钟和启动

系统时钟的选择是在启动时进行,复位时内部8MHz的RC振荡器被选为默认的CPU时钟,随后可以选择外部的、具失效监控的4~16MHz时钟;当外部时钟失效时,它将被隔离,同时会产生相应的中断。同样,在需要时可以采取对PLL时钟完全的中断管理(如当一个外接的振荡器失效时)。 具有多个预分频器用于配置AHB的频率、高速APB(APB2)和低速APB(APB1)区域。AHB和高速APB的最高频率是72MHz,低速APB的最高频率为36MHz。

STM32F103中文手册

自举模式

在启动时,自举管脚被用于选择三种自举模式中的一种: ● 从用户闪存自举 ● 从系统存储器自举 ● 从SRAM自举

自举加载器存放于系统存储器中,可以通过USART对闪存重新编程。

供电方案

● VDD = 2.0至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振荡器和后备寄存器供

电。

供电监控器

本产品内部集成了上电复位(POR)/掉电复位(PDR)电路,该电路始终处于工作状态,保证系统在供电超过2V时工作;当VDD低于设定的阀值(VPOR/PDR)时,置器件于复位状态,而不必使用外部复位电路。

器件中还有一个可编程电压监测器(PVD),它监视VDD供电并与阀值VPVD比较,当VDD低于或高于阀值VPVD时将产生中断,中断处理程序可以发出警告信息或将微控制器转入安全模式。需要通过程序开启PVD。

有关VPOR/PDR和VPVD数值,请参考表九“内置复位和电源控制模块特性”。

电压调压器

调压器有三个操作模式:主模式(MR)、低功耗模式(LPR)和关断模式 ● 主模式(MR)用于正常的运行操作 ● 低功耗模式(LPR)用于CPU的停机模式

● 关断模式用于CPU的待机模式:调压器的输出为高阻状态,内核电路的供电切断,调压器处于

零消耗状态(但寄存器和SRAM的内容将丢失) 该调压器在复位后始终处于工作状态,在待机模式下关闭处于高阻输出。

低功耗模式

STM32F103xx增强型支持三种低功耗模式,可以在要求低功耗、短启动时间和多种唤醒事件之间达到最佳的平衡。

● 睡眠模式

在睡眠模式,只有CPU停止,所有外设处于工作状态并可在发生中断/事件时唤醒CPU。 ● 停机模式

在保持SRAM和寄存器内容不丢失的情况下,停机模式可以达到最低的电能消耗。在停机模式下,停止所有内部1.8V部分的供电,PLL、HSI和HSE的RC振荡器被关闭,调压器可以被置于普通模式或低功耗模式。

可以通过任一配置成EXTI的信号把微控制器从停机模式中唤醒,EXTI信号可以是16个外部I/O口之一、PVD的输出、RTC闹钟或USB的唤醒信号。

● 待机模式

在待机模式下可以达到最低的电能消耗。内部的电压调压器被关闭,因此所有内部1.8V部分的供电被切断;PLL、HSI和HSE的RC振荡器也被关闭;进入待机模式后,SRAM和寄存器的内容将消失,但后备寄存器的内容仍然保留,待机电路仍工作。

STM32F103中文手册

从待机模式退出的条件是:NRST上的外部复位信号、IWDG复位、WKUP管脚上的一个上升边沿或RTC的闹钟到时。

注:在进入停机或待机模式时,RTC、IWDG和对应的时钟不会被停止。

DMA

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

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

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

RTC(实时时钟)和后备寄存器

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

实时时钟具有一组连续运行的计数器,可以通过适当的软件提供日历时钟功能,还具有闹钟中断和阶段性中断功能。RTC的驱动时钟可以是一个使用外部晶体的32.768kHz的振荡器、内部低功耗RC振荡器或高速的外部时钟经128分频。内部低功耗RC振荡器的典型频率为32kHz。为补偿天然晶体的偏差,RTC的校准是通过输出一个512Hz的信号进行。RTC具有一个32位的可编程计数器,使用比较寄存器可以产生闹钟信号。有一个20位的预分频器用于时基时钟,默认情况下时钟为32.768kHz时它将产生一个1秒长的时间基准。

独立的看门狗

独立的看门狗是基于一个12位的递减计数器和一个8位的预分频器,它由一个独立的32kHz的内部RC振荡器提供时钟,应为这个RC振荡器独立于主时钟,所以它可运行于停机和待机模式。它可以被当成看门狗用于在发生问题时复位整个系统,或作为一个自由定时器为应用程序提供超时管理。通过选择字节可以配置成是软件看门狗或硬件看门狗。在调试模式,计数器可以被冻结。

窗口看门狗

窗口看门狗内有一个7位的递减计数器,并可以设置成自由运行。它可以被当成看门狗用于在发生问题时复位整个系统。它由主时钟驱动,具有早期预警中断功能;在调试模式,计数器可以被冻结。

系统时基定时器

这个定时器是专用于操作系统,也可当成一个标准的递减计数器。它具有下述特性: ● 24位的递减计数器 ● 重加载功能

● 可屏蔽的计数器为0中断 ● 可编程时钟源

通用定时器(TIMx)

STM32F103xx增强型系列产品中内置了多达3个同步的标准定时器。每个定时器都有一个16位的自动加载递加/递减计数器、一个16位的预分频器和4个独立的通道,每个通道都可用于输入捕获、输出比较、PWM和单脉冲模式输出,在最大的封装配置中可提供最多12个输入捕获、输出比较或PWM通道。它们还能通过定时器链接功能与高级控制定时器共同工作,提供同步或事件链接功能。 在调试模式下,计数器可以被冻结。

任一标准定时器都能用于产生PWM输出。每个定时器都有独立的DMA请求机制。

STM32F103中文手册

高级控制定时器(TIM1)

高级控制定时器(TIM1)可以被看成是一个分配到6个通道的三相PWM发生器,它还可以被当成一个完整的通用定时器。四个独立的通道可以用于: ● 输入捕获 ● 输出比较

● 产生PWM(边缘或中心对齐模式) ● 单脉冲输出

● 反相PWM输出,具程序可控的死区插入功能

配置为16位标准定时器时,它与TIMx定时器具有相同的功能。配置为16位PWM发生器时,它具有全调制能力(0~100%)。

在调试模式下,计数器可以被冻结。

很多功能都与标准的TIM定时器相同,内部结构也相同,因此高级控制定时器可以通过定时器链接功能与TIM定时器协同操作,提供同步或事件链接功能。

I2C总线

多达2个I2C总线接口,能够工作于多主和从模式,支持标准和快速模式。

它们支持双从地址寻址(只有7位)和主模式下的7/10位寻址。内置了硬件CRC发生器/校验器。 它们可以使用DMA操作并支持SM总线2.0版/PM总线

通用同步/异步接受发送器(USART)

其中一个USART接口通信速率可达4.5兆位/秒,其他USART接口通信速率可达2.25兆位/秒。接口具有硬件的CTS和RTS信号管理、支持IrDA的 SIR ENDEC、与ISO7816兼容并具有LIN主/从功能。 USART接口可以使用DMA操作。

串行外设接口(SPI)

多达2个SPI接口,在从或主模式下,全双工和半双工的通信速率可达18兆位/秒。3位的预分频器可产生8种主模式频率,可配置成每帧8位或16位。硬件的CRC产生/校验支持基本的SD卡和MMC模式。

2个SPI接口都可以使用DMA操作。

控制器区域网络(CAN)

CAN接口兼容规范2.0A和2.0B (主动),位速率达1兆位/秒。它可以接收和发送11位标识符的标准帧,也接收和发送29位标识符的扩展帧。具有2个接收FIFOs,3级14个可调节的滤波器。内部SRAM缓冲最多可处理32个报文对象。

通用串行总线(USB)

STM32F103xx增强型系列产品内嵌一个USB设备,遵循USB全速标准;USB接口实现全速(12兆位/秒)的设备功能;具有可软件配置的端点和待机/恢复功能。专用的48MHz时钟由内部主PLL直接产生。

通用输入输出接口(GPIO)

每个GPIO管脚都可以由软件配置成输出(推拉或开路)、输入(带或不带上拉或下拉)或其它的外设功能;多数GPIO管脚都与数字或模拟的外设功能管脚共用。所有的GPIO管脚都有大电流通过能力。 在需要的情况下,I/O管脚的外设功能可以通过一个特定的操作锁定,以避免意外的写入I/O寄存器。

STM32F103中文手册

在APB2上的I/O脚可达18MHz的翻转速度。

ADC(模拟/数字转换器)

STM32F103xx增强型产品内嵌2个12位的模拟/数字转换器(ADC),每个ADC有多达16个外部通道,可以执行单次或扫描转换模式;在扫描模式下,转换在一组选定的模拟输入上自动进行。 ADC接口上额外的逻辑功能允许: ● 同时采样和保持 ● 交叉采样和保持 ● 单次采样

ADC可以使用DMA操作。

模拟看门狗功能允许非常精准地监视一路、多路或所有选中的被转换电压,当被监视的信号超出预置的阀值时,将产生中断。

由标准定时器(TIMx)和高级控制定时器(TIM1)产生的事件,可以分别内部级联到ADC的开始触发、外部触发和DMA触发,允许应用程序同步AD转换和时钟的操作。

温度传感器

温度传感器产生一个随温度线性变化的电压,转换范围在2V < VDDA < 3.6V之间。温度传感器在内部被连接到ADC12_IN16的输入通道上,用于将传感器的输出转换到数字数值。

串行线JTAG调试口(SWJ-DP)

内嵌ARM的SWJ-DP接口和JTAG接口,JTAG的TMS和TCK信号分别与SWDIO和SWCLK共用管脚,TMS脚上的一个特殊的信号序列用于在JTAG-DP和SWJ-DP间切换。

STM32F103中文手册

图一.STM32F103xx增强型模块框图

工作温度=-40至+105°C (结温达125°C)

AF: I/O口上的其他功能

STM32F103中文手册

3

管脚定义

图二.STM32F103xx增强型VFQFPN36管脚

STM32F103中文手册

图四.STM32F103xx增强型LQFP64管脚

STM32F103中文手册

STM32F103增强型图五.STM32F103xx增强型LQFP48管脚

2007年10月

第三版

第12页

STM32F103中文手册

第三版

第13页

2007年10月

STM32F103中文手册

表三. 管脚定义

STM32F103中文手册

STM32F103增强型

表三.管脚定义(续)脚位 VFQFPN36 LQFP100 BGA100 LQFP48 LQFP64管脚名称类型 I/O电平主功能 (复位后)默认的其他功能

G3 14 20 29 11 H3 15 21 30 12 J3 16 22 31 13 K3 17 23 32 14 G4 H4 24 33 25 34 -

PA4 PA5 PA6 PA7 PC4 PC5 PB0 PB1 PB2/BOOT1 PE7 PE8 PE9 PE10 PE11 PE12 PE13 PE14 PE15 PB10 PB11 VSS_1 VDD_1 PB12

I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O S S S I/O FT FT FT FT FT FT FT FT FT FT FT FT FT

PA4 PA5 PA6 PA7 PC4 PC5 PB0 PB1 PB2/BOOT1 PE7 PE8 PE9 PE10 PE11 PE12 PE13 PE14 PE15 PB10 PB11 VSS_1 VDD_1 PB12

J4 18 26 35 15 K4 19 27 36 16 G5 20 28 37 17 H5 - - 38 J5 - - 39 K5 - - 40 G6 - - 41 H6 - - 42 J6 - - 43 K6 - - 44 G7 - - 45 H7 - - 46 J7 21 29 47 K7 22 30 48 -

SPI1_NSS(6)/USART2 _CK(6)/ADC12_IN4 SPI1_SCK(6)/ADC12_ IN5 SPI1_MISO(6)/ADC12 _IN6/TIM3_CH1(6) SPI1_MOSI(6)/ADC12 _IN7/TIM3_CH2(6) ADC12_IN14 ADC12_IN15 ADC12_IN8/TIM3_CH3 (6) ADC12_IN9/TIM3_CH4 (6)

I2C2_SCL/USART3_TX (5)(6) I2C2_SDA/USART3_RX (5)(6)

E7 23 31 49 18 F7 24 32 50 19 K8 25 33 51 -

J8 26 34 52

-

PB13

I/O

FT

PB13

H8 27 35 53 G8 28 36 54

-

PB14 PB15

I/O I/O

FT FT

PB14 PB15

SPI2_NSS(5)/I2C2_S MBAI(5)/USART3_CK( 5)(6)/TIM1_BKIN(6) SPI2_SCK(5)/USART3 _CTS(5)(6)/TIM1_CH 1N(6) SPI2_MISO(5)/USART 3_RTS(5)(6)/TIM1_C H2N(6) SPI2_MOSI(5)/TIM1_ CH3N(6)

2007年10月

第三版

第15页

STM32F103中文手册

STM32F103增强型

表三.管脚定义(续)VFQFPN36 LQFP100 BGA100 LQFP48 LQFP64管脚名称类型 I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O电平主功能 (复位后) PD8 PD9 PD10 PD11 PD12 PD13 PD14 PD15 PC6 PC7 PC8 PC9 PA8 PA9 PA10 PA11 USART1_CK/TIM1_CH1 (6)/MCO USART1_TX(6)/TIM1_ CH2(6) USART1_RX(6)/TIM1_ CH3(6) USART1_CTS/CANRX(6 )/TIM1_CH4(6)/USBD M USART1_RTS/CANTX(6 )/TIM1_ETR(6)/USBD P PA13默认的其他功能

K9 J9 H9 G9 K10 J10 H10 G10 F10 E10 F9 E9

-

37 38 39 40

55 56 57 58 59 60 61 62 63 64 65 66

-

PD8 PD9 PD10 PD11 PD12 PD13 PD14 PD15 PC6 PC7 PC8 PC9 PA8 PA9 PA10 PA11

FT FT FT FT FT FT FT FT FT FT FT FT FT FT FT

D9 29 41 67 20 C9 30 42 68 21 D10 31 43 69 22 C10 32 44 70 23

B10 33

45 71 24 A10 F8 E6 F6 A9 A8 B9 B8 C8 D8 E8 B7 C7 34 35 36 37 38 5 6 46 47 48 49 50 51 52 53 5 6 54 72 73 74 75 76 77 78 79 80 81 82 83 84 25 26 27 28 29 2 3 -

PA12 PA13/JTMS/SWDIO VSS_2 VDD_2 PA14/JTCK/SWCLK PA15/JTDI PC10 PC11 PC12 PD0 PD1 PD2 PD3

I/O I/O S S I/O I/O I/O I/O I/O I/O I/O I/O I/O

FT FT

PA12 JTMS/SWDIO未连接 VSS_2 VDD_2 JTCK/SWCLK JTDI PC10 PC11 PC12 PD0 PD1 PD2 PD3

FT FT FT FT FT FT FT FT FT

PA14 PA15

TIM3_ETR

2007年10月

第三版

第16页

STM32F103中文手册

表三.管脚定义(续)

注:

1. I : 输入, O:输出, S:电源, HiZ:高阻 2. FT:兼容5V

3. 其中部分功能仅在部分型号芯片中支持,具体信息请参考表2。

4. PC13,PC14和PC15引脚通过电源开关进行供电,因此这三个引脚作为输出引脚时有以下限制:

9 作为输出脚时只能工作在2MHz模式下 9 最大驱动负载为30pF

9 同一时间,三个引脚中只有一个引脚能作为输出引脚。 5. 仅在内嵌大等于64K Flash的型号中支持此类功能。

6. VFQFPN36封装的2号,3号引脚和LQFP48,LQFP64封装的5号,6号引脚在芯片复位后默认配置为

OSC_IN和OSC_OUT功能脚。软件可以重新设置这两个引脚为PD0和PD1功能脚。但对于LQFP100封装,由于PD0和PD1为固有的功能脚,因此没有必要再由软件进行设置。更多详细信息请参考STM32F10xxx参考手册的复用功能I/O章节和调试设置章节。PD0和PD1作为输出引脚只能工作在50MHz模式下。 7. 此类复用功能能够由软件配置到其他引脚上,详细信息请参考STM32F10xxx参考手册的复用功能I/O

章节和调试设置章节。

STM32F103中文手册

4

存储器映像

图七 存储器图

STM32F103中文手册

5 电气特性

请参考英文版数据手册

6 封装参数

请参考英文版数据手册

7

订货代码

表四. 订货代码

型号

闪存存储器 K字节

SRAM存储器

K字节

LQFP48 封装

LQFP64

LQFP100

LFBGA100

VFQFPN36

7.1 后续的产品系列

后续的STM32F103xx增强型系列产品将会有更广泛的型号选择,芯片将会有更大的封装尺寸并内嵌多达512KB的Flash和48KB的SRAM。同时,后续产品会提供EMI,SDIO,I2S,DAC,更多的定时器和USARTS接口功能。

8 版本历史

请参考英文版数据手册

本文来源:https://www.bwwdw.com/article/jeci.html

Top