Resllrkds是啥意思思?

当前位置: >>
STM32F10x微控制器参考手册(2009年12月第10版)
STM32F10xxx参考手册翻译说明本文档是依据STM32 Reference Manual (RM0008)翻译的,已经与2009年6月的英文第9版(Doc ID 13902 Rev 9)进行了全面校对,更正了不少以前版本的错误。 在校对即将结束时,ST于2009年12月中旬又发布了英文第10版(Doc ID 13902 Rev 10),为了与最新的 英文版同步,我们按照英文第10版结尾的”文档版本历史”中的指示,在翻译的文档中快速地校对更正了对 应的部分。由于时间的关系,没有逐字逐句地按照英文第10版进行通篇校对,鉴于芯片本身没有改变, 我们相信除了”文档版本历史”中指出的差别外,英文第10版与英文第9版不会再有更多的变化,遂定稿现 在这个翻译版本为对应的中文第10版文档。 由于我们的水平有限以及文档篇幅的庞大,翻译的过程中难免会有错误和遗漏的地方,希望广大读者们 能够及时向我们反馈您在阅读期间所发现的错误和问题,我们会尽快在下一个版本中更正。您可以发邮 件到mcu.向我们提出您的意见和建议,谢谢。 意法半导体(中国)投资有限公司 MCU技术支持 日参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 STM32F10xxx参考手册文档使用说明本手册是STM32微控制器产品的技术参考手册,技术参考手册是有关如何使用该产品的具体信息,包含 各个功能模块的内部结构、所有可能的功能描述、各种工作模式的使用和寄存器配置等详细信息。 技术参考手册不包含有关产品技术特征的说明,这些内容在数据手册中。数据手册中的内容包括:产品 的基本配置(如内置Flash和RAM的容量、外设模块的种类和数量等),管脚的数量和分配,电气特性,封 装信息,和定购代码等。 STM32是一个微控制器产品系列的总称,目前这个系列中已经包含了多个子系列,分别是:STM32小容 量产品、STM32中容量产品、STM32大容量产品和STM32互联型产品;按照功能上的划分,又可分为 STM32F101xx、STM32F102xx和STM32F103xx系列;因此STM32产品系列有以下这些数据手册: 小容量STM32F101xx:/stonline/products/literature/ds/15058.pdf 中容量STM32F101xx:/stonline/products/literature/ds/13586.pdf 大容量STM32F101xx:/stonline/products/literature/ds/14610.pdf 小容量STM32F102xx:/stonline/products/literature/ds/15057.pdf 中容量STM32F102xx:/stonline/products/literature/ds/15056.pdf 小容量STM32F103xx:/stonline/products/literature/ds/15060.pdf 中容量STM32F103xx:/stonline/products/literature/ds/13587.pdf 大容量STM32F103xx:/stonline/products/literature/ds/14611.pdf 互联型STM32F105xx/STM32F107xx:/stonline/products/literature/ds/15274.pdf STM32微控制器产品中大多数功能模块都是在多个产品(或所有产品)中共有的并且是相同的,因此只有一 份STM32微控制器产品的技术参考手册对应所有这些产品。技术参考手册对每种功能模块都有专门的一 个章节对应,每章的开始申明了这个功能模块的适用范围;例如第5章”备份寄存器”适用于整个STM32微 控制器系列,第27章”以太网”只适用于STM32F107xx互联型产品。 为了方便阅读,下一页的表格列出了每个产品子系列所对应功能模块在技术参考手册中的章节一览。 通常在芯片选型的初期,首先要看 数据手册 以评估该产品是否能够满足设计上的功能需求;在基本选定 所需产品后,需要察看技术参考手册以确定各功能模块的工作模式是否符合要求;在确定选型进入编程 设计阶段时,需要详细阅读技术参考手册获知各项功能的具体实现方式和寄存器的配置使用。 在设计硬 件时还需参考数据手册以获得电压、电流、管脚分配、驱动能力等信息。 关于Cortex-M3核心、SysTick定时器和NVIC的详细说明,请参考另一篇ST的文档和一篇ARM的文档: 《STM32F10xxx Cortex-M3编程手册》和《Cortex?-M3技术参考手册》。参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 STM32F10xxx参考手册STM32系列产品命名规则示例: STM32 产品系列STM32 = 基于ARM?的32位微控制器F103C8T6Axxx产品类型F = 通用类型产品子系列101 = 基本型 102 = USB基本型,USB 2.0全速设备 103 = 增强型 105或107 = 互联型引脚数目T = 36脚 C = 48脚 R = 64脚 V = 100脚 Z = 144脚闪存存储器容量4 = 16K字节的闪存存储器 6 = 32K字节的闪存存储器 8 = 64K字节的闪存存储器 B = 128K字节的闪存存储器 C = 256K字节的闪存存储器 D = 384K字节的闪存存储器 E = 512K字节的闪存存储器封装H = BGA T = LQFP U = VFQFPN Y = WLCSP64温度范围6 = 工业级温度范围,-40°C~85°C 7 = 工业级温度范围,-40°C~105°C内部代码A 或者空 (详见产品数据手册)选项xxx = 已编程的器件代号(3个数字) TR = 卷带式包装参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 STM32F10xxx参考手册 STM32技术参考手册各章节与各产品系列交叉对照表小 容 量 STM32F101xx 中 容 量 大 容 量 小 容 量 STM32F102xx 中 容 量 小 容 量 STM32F103xx STM32F105xx STM32F107xx 中 容 量 大 容 量STM32F101xxSTM32F101xxSTM32F102xxSTM32F103xxSTM32F103xx第1章:文中的缩写 第2章:存储器和总线构架 第3章:CRC计算单元(CRC) 第4章:电源控制(PWR) 第5章:备份寄存器(BKP) 第6章:小容量、中容量和大容量产品的复位和时钟控制(RCC) 第7章:互联型产品的复位和时钟控制(RCC) 第8章:通用和复用功能I/O(GPIO和AFIO) 第9章:中断和事件 第10章:DMA控制器(DMA) 第11章:模拟/数字转换(ADC) 第12章:数字/模拟转换(DAC) 第13章:高级控制定时器(TIM1和TIM8) 第14章:通用定时器(TIMx) 第15章:基本定时器(TIM6和TIM7) 第16章:实时时钟(RTC) 第17章:独立看门狗(IWDG) 第18章:窗口看门狗(WWDG) 第19章:灵活的静态存储器控制器(FSMC) 第20章:SDIO接口(SDIO) 第21章:USB全速设备接口(USB) 第22章:控制器局域网(bxCAN) 第23章:串行外设接口(SPI) 第24章:I2C接口 第25章:通用同步异步收发器(USART) 第26章:USB OTG全速(OTG_FS) 第27章:以太网(ETH):具有DMA控制器的介质访问控制(MAC) 第28章:器件电子签名 第29章:调试支持(DBG)● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ●● ● ● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ●● ●● ●● ●● ●● ●● ●● ●● ●● ●● ●● 表示所在行对应的章节适用于该列标示的产品系列提示:点击上表中的章节名字可以直接跳转到对应的章节。参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 STM32F10xxx参考手册 下表给出了一个交叉参考,在使用各功能模块时应重点阅读哪些章节:备 份 寄 存 器 (BKP) 模 拟 数 字 模 拟 转 换 / / 数 字 转 换 (ADC) 定 时 器 (TIMx(x=1…8)) 功能模块 静 窗 态 存 口 储 看 接 门 器 口 狗 控 制 器 ( (FSMC)SDIO通 用 输 入 输 出 端 口实 时 时 钟独 立 看 门 狗通 用 串 行 总 线控 制 器 局 域 网串 行 外 设 总 线芯 片 间 总 线 接 口通 用 同 步 异 步 收 发 器通 用 串 行 总 线以 太 网(ETH)(RTC)(SDIO)(IWDG)WWDG)(USB)(bxCAN)(SPI)OTG(OTG_FS)(DAC)(I2C)(GPIO)(USART)第1章:文中的缩写 第2章:存储器和总线构架 第3章:CRC计算单元(CRC) 第4章:电源控制(PWR) 第5章:备份寄存器(BKP) 第6章:小容量、中容量和大容量产品的复位 和时钟控制(RCC) 或 第7章:互联型产品的复位和时钟控制(RCC) 第8章:通用和复用功能I/O(GPIO和AFIO) 第9章:中断和事件 第10章:DMA控制器(DMA) 第11章:模拟/数字转换(ADC) 第12章:数字/模拟转换(DAC) 第13章:高级控制定时器(TIM1和TIM8) 第14章:通用定时器(TIMx) 第15章:基本定时器(TIM6和TIM7) 第16章:实时时钟(RTC) 第17章:独立看门狗(IWDG) 第18章:窗口看门狗(WWDG) 第19章:灵活的静态存储器控制器(FSMC) 第20章:SDIO接口(SDIO) 第21章:USB全速设备接口(USB) 第22章:控制器局域网(bxCAN) 第23章:串行外设接口(SPI) 第24章:I2C接口 第25章:通用同步异步收发器(USART) 第26章:USB OTG全速(OTG_FS) 第27章:以太网(ETH):具有DMA控制器的 介质访问控制(MAC) 第28章:器件电子签名 第29章:调试支持(DBG)● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ◎● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ◎ ● ● ● ● ◎ ● ● ● ● ● ● ● ● ● ● ● ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ● ● ◎ ◎ ● ● ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎◎ ◎ ● ● ● ● ● ● ● ● ● ● ● ● ● ●◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎ ◎● 表示对应的章节是必读的 ◎ 表示对应的章节是选读的注:请区分第7章的内容只适合于互联型产品,第6章的内容适合于除互联型产品以外的产品。参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 STM32F10xxx参考手册参考手册STM32F101xx, STM32F102xx、STM32F103xx、STM32F105xx 和 STM32F107xx,ARM 内核 32 位高性能微控制器导言本参考手册针对应用开发,提供关于如何使用STM32F101xx、STM32F102xx、STM32F103和 STM32F105xx/STM32F107xx 微 控 制 器 的 存 储 器 和 外 设 的 详 细 信 息 。 在 本 参 考 手 册 中 STM32F101xx 、 STM32F102xx 、 STM32F103 和 STM32F105xx/STM32F107xx 被 统 称 为 STM32F10xxx。 STM32F10xxx系列拥有不同的存储器容量、封装和外设配置。 关于订货编号、电气和物理性能参数,请参考小容量、中容量和大容量的STM32F101xx和 STM32F103xx 的 数 据 手 册 , 小 容 量 和 中 容 量 的 STM32F102xx 数 据 手 册 和 STM32F105xx/ STM32F107xx互联型产品的数据手册。 关于芯片内部闪存的编程,擦除和保护操作,请参考STM32F10xxx闪存编程手册。 关于ARM Cortex?-M3内核的具体信息,请参考Cortex?-M3技术参考手册。相关文档● Cortex?-M3技术参考手册,可按下述链接下载: /help/topic/com.arm.doc.ddi0337e/DDI0337E_cortex_m3_r1p1_trm.pdf 下述文档可在ST网站下载(/mcu/): ● STM32F101xx、STM32F102xx和STM32F103xx的数据手册。 ● STM32F10xxx闪存编程手册。相关数据手册下载地址:小容量STM32F101xx:/stonline/products/literature/ds/15058.pdf 中容量STM32F101xx:/stonline/products/literature/ds/13586.pdf 大容量STM32F101xx:/stonline/products/literature/ds/14610.pdf 小容量STM32F102xx:/stonline/products/literature/ds/15057.pdf 中容量STM32F102xx:/stonline/products/literature/ds/15056.pdf 小容量STM32F103xx:/stonline/products/literature/ds/15060.pdf 中容量STM32F103xx:/stonline/products/literature/ds/13587.pdf 大容量STM32F103xx:/stonline/products/literature/ds/14611.pdf 互联型STM32F105xx/STM32F107xx:/stonline/products/literature/ds/15274.pdf STM32F10xxx Cortex-M3编程手册:/stonline/products/literature/pm/15491.pdf参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录STM32F10xxx参考手册目录 1 文中的缩写1.1 1.2 1.3 寄存器描述表中使用的缩写列表 术语表 可用的外设 系统构架 存储器组织 存储器映像 2.3.1 2.3.2 2.3.3 2.4 嵌入式SRAM 位段 嵌入式闪存2424 24 242存储器和总线构架2.1 2.2 2.32525 27 28 29 29 30 33启动配置 CRC简介 CRC主要特性 CRC功能描述 CRC寄存器 3.4.1 3.4.2 3.4.3 3.4.4 数据寄存器(CRC_DR) 独立数据寄存器(CRC_IDR) 控制寄存器(CRC_CR) CRC寄存器映像3CRC计算单元(CRC)3.1 3.2 3.3 3.43434 34 34 35 35 35 36 364电源控制(PWR)4.1 电源 4.1.1 4.1.2 4.1.3 4.2 4.2.1 4.2.2 4.3 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.4 4.4.1 4.4.2 4.4.3 独立的A/D转换器供电和参考电压 电池备份区域 电压调节器 上电复位(POR)和掉电复位(PDR) 可编程电压监测器(PVD) 降低系统时钟 外部时钟的控制 睡眠模式 停止模式 待机模式 低功耗模式下的自动唤醒(AWU) 电源控制寄存器(PWR_CR) 电源控制/状态寄存器(PWR_CSR) PWR寄存器地址映像3737 37 38 38 38 38 39 40 40 40 40 41 42 43 44 44 45 46电源管理器低功耗模式电源控制寄存器5备份寄存器(BKP)5.1 5.2 BKP简介 BKP特性4747 477/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 5.3 BKP功能描述 5.3.1 5.3.2 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 侵入检测 RTC校准 备份数据寄存器x(BKP_DRx) (x = 1 … 10) RTC时钟校准寄存器(BKP_RTCCR) 备份控制寄存器(BKP_CR) 备份控制/状态寄存器(BKP_CSR) BKP寄存器映像STM32F10xxx参考手册 47 47 48 48 48 48 49 49 51BKP寄存器描述6小容量、中容量和大容量产品的复位和时钟控制(RCC)6.1 复位 6.1.1 6.1.2 6.1.3 6.2 时钟 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.2.6 6.2.7 6.2.8 6.2.9 6.2.10 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.3.8 6.3.9 6.3.10 6.3.11 HSE时钟 HSI时钟 PLL LSE时钟 LSI时钟 系统时钟(SYSCLK)选择 时钟安全系统(CSS) RTC时钟 看门狗时钟 时钟输出 时钟控制寄存器(RCC_CR) 时钟配置寄存器(RCC_CFGR) 时钟中断寄存器 (RCC_CIR) APB2外设复位寄存器 (RCC_APB2RSTR) APB1外设复位寄存器 (RCC_APB1RSTR) AHB外设时钟使能寄存器 (RCC_AHBENR) APB2外设时钟使能寄存器(RCC_APB2ENR) APB1外设时钟使能寄存器(RCC_APB1ENR) 备份域控制寄存器 (RCC_BDCR) 控制/状态寄存器 (RCC_CSR) RCC寄存器地址映像 系统复位 电源复位 备份域复位5454 54 54 55 55 57 57 58 58 58 59 59 59 59 59 60 60 61 63 65 67 69 70 71 74 75 77RCC寄存器描述7互联型产品的复位和时钟控制(RCC)7.1 复位 7.1.1 7.1.2 7.1.3 7.2 时钟 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 HSE时钟 HSI时钟 PLL LSE时钟 LSI时钟 系统时钟(SYSCLK)选择 系统复位 电源复位 备份域复位7878 78 78 79 79 81 82 82 82 83 838/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 7.2.7 7.2.8 7.2.9 7.2.10 7.3 7.3.1 7.3.2 7.3.3 7.3.4 7.3.5 7.3.6 7.3.7 7.3.8 7.3.9 7.3.10 7.3.11 7.3.12 7.3.13 时钟安全系统(CSS) RTC时钟 看门狗时钟 时钟输出 时钟控制寄存器(RCC_CR) 时钟配置寄存器(RCC_CFGR) 时钟中断寄存器(RCC_CIR) APB2外设复位寄存器(RCC_APB2RSTR) APB1外设复位寄存器(RCC_APB1RSTR) AHB外设时钟使能寄存器(RCC_AHBENR) APB2外设时钟使能寄存器(RCC_APB2ENR) APB1外设时钟使能寄存器(RCC_APB1ENR) 备份域控制寄存器(RCC_BDCR) 控制/状态寄存器(RCC_CSR) AHB外设时钟复位寄存器(RCC_AHBRSTR) 时钟配置寄存器2(RCC_CFGR2) RCC寄存器地址映像STM32F10xxx参考手册 83 83 84 84 85 85 86 88 91 92 94 95 97 99 100 101 101 103RCC寄存器8通用和复用功能I/O(GPIO和AFIO)8.1 GPIO功能描述 8.1.1 8.1.2 8.1.3 8.1.4 8.1.5 8.1.6 8.1.7 8.1.8 8.1.9 8.1.10 8.1.11 8.2 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.2.7 8.3 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.3.6 8.3.7 8.3.8 8.3.9 8.3.10 通用I/O(GPIO) 单独的位设置或位清除 外部中断/唤醒线 复用功能(AF) 软件重新映射I/O复用功能 GPIO锁定机制 输入配置 输出配置 复用功能配置 模拟输入配置 外设的GPIO配置 端口配置低寄存器(GPIOx_CRL) (x=A..E) 端口配置高寄存器(GPIOx_CRH) (x=A..E) 端口输入数据寄存器(GPIOx_IDR) (x=A..E) 端口输出数据寄存器(GPIOx_ODR) (x=A..E) 端口位设置/清除寄存器(GPIOx_BSRR) (x=A..E) 端口位清除寄存器(GPIOx_BRR) (x=A..E) 端口配置锁定寄存器(GPIOx_LCKR) (x=A..E) 把OSC32_IN/OSC32_OUT作为GPIO 端口PC14/PC15 把OSC_IN/OSC_OUT引脚作为GPIO端口PD0/PD1 CAN1复用功能重映射 CAN2复用功能重映射 JTAG/SWD复用功能重映射 ADC复用功能重映射 定时器复用功能重映射 USART复用功能重映射 I2C1复用功能重映射 SPI 1复用功能重映射105105 106 107 107 107 107 107 107 108 109 109 110 113 113 114 114 115 115 115 116 116 116 117 117 117 117 118 118 119 120 1209/754GPIO寄存器描述复用功能I/O和调试配置(AFIO)参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 8.3.11 8.3.12 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.4.6 8.5 SPI3复用功能重映射 以太网复用功能重映射 事件控制寄存器(AFIO_EVCR) 复用重映射和调试I/O配置寄存器(AFIO_MAPR) 外部中断配置寄存器1(AFIO_EXTICR1) 外部中断配置寄存器2(AFIO_EXTICR2) 外部中断配置寄存器3(AFIO_EXTICR3) 外部中断配置寄存器4(AFIO_EXTICR4)STM32F10xxx参考手册 120 121 121 121 121 126 127 127 128 129AFIO寄存器描述GPIO 和AFIO寄存器地址映象 嵌套向量中断控制器 9.1.1 9.1.2 系统嘀嗒(SysTick)校准值寄存器 中断和异常向量 主要特性 框图 唤醒事件管理 功能说明 外部中断/事件线路映像 中断屏蔽寄存器(EXTI_IMR) 事件屏蔽寄存器(EXTI_EMR) 上升沿触发选择寄存器(EXTI_RTSR) 下降沿触发选择寄存器(EXTI_FTSR) 软件中断事件寄存器(EXTI_SWIER) 挂起寄存器(EXTI_PR) 外部中断/事件寄存器映像9中断和事件9.1130130 130 130 134 134 135 135 135 137 138 138 138 139 139 140 140 1419.2外部中断/事件控制器(EXTI) 9.2.1 9.2.2 9.2.3 9.2.4 9.2.59.3EXTI 寄存器描述 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.3.6 9.3.710DMA控制器(DMA)10.1 10.2 10.3 DMA简介 DMA主要特性 功能描述 DMA处理 仲裁器 DMA 通道 可编程的数据传输宽度、对齐方式和数据大小端 错误管理 中断 DMA请求映像 DMA中断状态寄存器(DMA_ISR) DMA中断标志清除寄存器(DMA_IFCR) DMA通道x配置寄存器(DMA_CCRx)(x = 1…7) DMA通道x传输数量寄存器(DMA_CNDTRx)(x = 1…7) DMA通道x外设地址寄存器(DMA_CPARx)(x = 1…7) DMA通道x存储器地址寄存器(DMA_CMARx)(x = 1…7) DMA寄存器映像142142 142 143 143 144 144 145 146 146 147 149 149 150 150 152 152 152 15310.3.1 10.3.2 10.3.3 10.3.4 10.3.5 10.3.6 10.3.7 10.4 10.4.1 10.4.2 10.4.3 10.4.4 10.4.5 10.4.6 10.4.7DMA寄存器11模拟/数字转换(ADC)15510/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 11.1 11.2 11.3 ADC介绍 ADC主要特征 ADC功能描述 11.3.1 11.3.2 11.3.3 11.3.4 11.3.5 11.3.6 11.3.7 11.3.8 11.3.9 11.3.10 11.4 11.5 11.6 11.7 11.8 11.9 校准 数据对齐 可编程的通道采样时间 外部触发转换 DMA请求 双ADC模式 11.9.1 11.9.2 11.9.3 11.9.4 11.9.5 11.9.6 11.9.7 11.9.8 11.9.9 同步注入模式 同步规则模式 快速交叉模式 慢速交叉模式 交替触发模式 独立模式 混合的规则/注入同步模式 混合的同步规则+交替触发模式 混合同步注入 + 交叉模式 ADC开关控制 ADC时钟 通道选择 单次转换模式 连续转换模式 时序图 模拟看门狗 扫描模式 注入通道管理 间断模式STM32F10xxx参考手册 155 155 156 157 157 157 157 158 158 158 159 159 160 161 161 161 162 163 163 164 165 165 166 166 167 167 167 168 168 169 170 170 171 173 175 175 176 176 176 177 177 178 178 179 179 18011.10 温度传感器 11.11 ADC中断 11.12 ADC寄存器 11.12.1 11.12.2 11.12.3 11.12.4 11.12.5 11.12.6 11.12.7 11.12.8 11.12.9 11.12.10 11.12.11 11.12.12 11.12.13 11.12.14 11.12.15 ADC状态寄存器(ADC_SR) ADC控制寄存器1(ADC_CR1) ADC控制寄存器2(ADC_CR2) ADC采样时间寄存器1(ADC_SMPR1) ADC采样时间寄存器2(ADC_SMPR2) ADC注入通道数据偏移寄存器x (ADC_JOFRx)(x=1..4) ADC看门狗高阀值寄存器(ADC_HTR) ADC看门狗低阀值寄存器(ADC_LRT) ADC规则序列寄存器1(ADC_SQR1) ADC规则序列寄存器2(ADC_SQR2) ADC规则序列寄存器3(ADC_SQR3) ADC注入序列寄存器(ADC_JSQR) ADC 注入数据寄存器x (ADC_JDRx) (x= 1..4) ADC规则数据寄存器(ADC_DR) ADC寄存器地址映像12数字/模拟转换(DAC)12.1 DAC简介18218211/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 12.2 12.3 DAC主要特征 DAC功能描述 使能DAC通道 使能DAC输出缓存 DAC数据格式 DAC转换 DAC输出电压 选择DAC触发 DMA请求 噪声生成 三角波生成 不使用波形发生器的独立触发 使用相同LFSR的独立触发 使用不同LFSR的独立触发 产生相同三角波的独立触发 产生不同三角波的独立触发 同时软件启动 不使用波形发生器的同时触发 使用相同LFSR的同时触发 使用不同LFSR的同时触发 使用相同三角波发生器的同时触发 使用不同三角波发生器的同时触发 DAC控制寄存器(DAC_CR) DAC软件触发寄存器(DAC_SWTRIGR) DAC通道1的12位右对齐数据保持寄存器(DAC_DHR12R1) DAC通道1的12位左对齐数据保持寄存器(DAC_DHR12L1) DAC通道1的8位右对齐数据保持寄存器(DAC_DHR8R1) DAC通道2的12位右对齐数据保持寄存器(DAC_DHR12R2) DAC通道2的12位左对齐数据保持寄存器(DAC_DHR12L2) DAC通道2的8位右对齐数据保持寄存器(DAC_DHR8R2) 双DAC的12位右对齐数据保持寄存器(DAC_DHR12RD) 双DAC的12位左对齐数据保持寄存器(DAC_DHR12LD) 双DAC的8位右对齐数据保持寄存器(DAC_DHR8RD) DAC通道1数据输出寄存器(DAC_DOR1) DAC通道2数据输出寄存器(DAC_DOR2) DAC寄存器映像STM32F10xxx参考手册 182 183 183 184 184 185 185 185 186 186 187 187 187 188 188 188 188 189 189 189 189 189 190 191 191 193 194 194 194 195 195 195 196 196 196 197 197 19812.3.1 12.3.2 12.3.3 12.3.4 12.3.5 12.3.6 12.3.7 12.3.8 12.3.9 12.4 12.4.1 12.4.2 12.4.3 12.4.4 12.4.5 12.4.6 12.4.7 12.4.8 12.4.9 12.4.10 12.4.11 12.5 12.5.1 12.5.2 12.5.3 12.5.4 12.5.5 12.5.6 12.5.7 12.5.8 12.5.9 12.5.10 12.5.11 12.5.12 12.5.13 12.5.14双DAC通道转换DAC寄存器13高级控制定时器(TIM1 和TIM8)13.1 13.2 13.3 TIM1和TIM8简介 TIM1和TIM8主要特性 TIM1和TIM8功能描述 时基单元 计数器模式 重复计数器 时钟选择 捕获/比较通道 输入捕获模式 PWM输入模式 强置输出模式199199 199 200 200 202 209 210 213 215 216 216 12/75413.3.1 13.3.2 13.3.3 13.3.4 13.3.5 13.3.6 13.3.7 13.3.8参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 13.3.9 13.3.10 13.3.11 13.3.12 13.3.13 13.3.14 13.3.15 13.3.16 13.3.17 13.3.18 13.3.19 13.3.20 13.3.21 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.4.5 13.4.6 13.4.7 13.4.8 13.4.9 13.4.10 13.4.11 13.4.12 13.4.13 13.4.14 13.4.15 13.4.16 13.4.17 13.4.18 13.4.19 13.4.20 13.4.21 输出比较模式 PWM模式 互补输出和死区插入 使用刹车功能 在外部事件时清除OCxREF信号 产生六步PWM输出 单脉冲模式 编码器接口模式 定时器输入异或功能 与霍尔传感器的接口 TIMx定时器和外部触发的同步 定时器同步 调试模式 TIM1和TIM8控制寄存器1(TIMx_CR1) TIM1和TIM8控制寄存器2(TIMx_CR2) TIM1和TIM8从模式控制寄存器(TIMx_SMCR) TIM1和TIM8 DMA/中断使能寄存器(TIMx_DIER) TIM1和TIM8状态寄存器(TIMx_SR) TIM1和TIM8事件产生寄存器(TIMx_EGR) TIM1和TIM8捕获/比较模式寄存器1(TIMx_CCMR1) TIM1和TIM8捕获/比较模式寄存器2(TIMx_CCMR2) TIM1和TIM8捕获/比较使能寄存器(TIMx_CCER) TIM1和TIM8计数器(TIMx_CNT) TIM1和TIM8预分频器(TIMx_PSC) TIM1和TIM8自动重装载寄存器(TIMx_ARR) TIM1和TIM8重复计数寄存器(TIMx_RCR) TIM1和TIM8捕获/比较寄存器1(TIMx_CCR1) TIM1和TIM8捕获/比较寄存器2(TIMx_CCR2) TIM1和TIM8捕获/比较寄存器3(TIMx_CCR3) TIM1和TIM8捕获/比较寄存器(TIMx_CCR4) TIM1和TIM8刹车和死区寄存器(TIMx_BDTR) TIM1和TIM8 DMA控制寄存器(TIMx_DCR) TIM1和TIM8连续模式的DMA地址(TIMx_DMAR) TIM1和TIM8寄存器图STM32F10xxx参考手册 217 218 220 221 223 223 224 225 227 227 229 232 232 233 233 234 235 237 238 239 240 242 244 246 246 246 246 247 247 247 248 248 249 250 251TIM1和TIM8寄存器描述14通用定时器(TIMx)14.1 14.2 14.3 TIMx简介 TIMx主要功能 TIMx功能描述 时基单元 计数器模式 时钟选择 捕获/比较通道 输入捕获模式 PWM输入模式 强置输出模式 输出比较模式 PWM 模式 单脉冲模式 在外部事件时清除OCxREF信号 编码器接口模式253253 253 254 254 255 263 265 267 267 268 268 269 271 273 273 13/75414.3.1 14.3.2 14.3.3 14.3.4 14.3.5 14.3.6 14.3.7 14.3.8 14.3.9 14.3.10 14.3.11 14.3.12参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 14.3.13 14.3.14 14.3.15 14.3.16 14.4 14.4.1 14.4.2 14.4.3 14.4.4 14.4.5 14.4.6 14.4.7 14.4.8 14.4.9 14.4.10 14.4.11 14.4.12 14.4.13 14.4.14 14.4.15 14.4.16 14.4.17 14.4.18 14.4.19 定时器输入异或功能 定时器和外部触发的同步 定时器同步 调试模式 控制寄存器1(TIMx_CR1) 控制寄存器2(TIMx_CR2) 从模式控制寄存器(TIMx_SMCR) DMA/中断使能寄存器(TIMx_DIER) 状态寄存器(TIMx_SR) 事件产生寄存器(TIMx_EGR) 捕获/比较模式寄存器1(TIMx_CCMR1) 捕获/比较模式寄存器2(TIMx_CCMR2) 捕获/比较使能寄存器(TIMx_CCER) 计数器(TIMx_CNT) 预分频器(TIMx_PSC) 自动重装载寄存器(TIMx_ARR) 捕获/比较寄存器1(TIMx_CCR1) 捕获/比较寄存器2(TIMx_CCR2) 捕获/比较寄存器3(TIMx_CCR3) 捕获/比较寄存器4(TIMx_CCR4) DMA控制寄存器(TIMx_DCR) 连续模式的DMA地址(TIMx_DMAR) TIMx寄存器图STM32F10xxx参考手册 275 275 277 281 282 282 283 284 285 286 287 288 290 292 293 293 293 293 294 294 294 295 295 296TIMx寄存器描述15基本定时器(TIM6 和TIM7)15.1 15.2 15.3 TIM6和TIM7简介 TIM6和TIM7的主要特性 TIM6和TIM7的功能 时基单元 计数模式 时钟源 调试模式 TIM6和TIM7控制寄存器1(TIMx_CR1) TIM6和TIM7控制寄存器2(TIMx_CR2) TIM6和TIM7 DMA/中断使能寄存器(TIMx_DIER) TIM6和TIM7状态寄存器(TIMx_SR) TIM6和TIM7事件产生寄存器(TIMx_EGR) TIM6和TIM7计数器(TIMx_CNT) TIM6和TIM7预分频器(TIMx_PSC) TIM6和TIM7自动重装载寄存器(TIMx_ARR) TIM6和TIM7寄存器图298298 298 299 299 300 302 303 303 303 304 304 305 305 305 306 306 30715.3.1 15.3.2 15.3.3 15.3.4 15.4 15.4.1 15.4.2 15.4.3 15.4.4 15.4.5 15.4.6 15.4.7 15.4.8 15.4.9TIM6和TIM7寄存器16实时时钟(RTC)16.1 16.2 16.3 RTC简介 主要特性 功能描述 概述 复位过程 读RTC寄存器308308 308 308 308 309 30914/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本16.3.1 16.3.2 16.3.3 目录 16.3.4 16.3.5 16.4 16.4.1 16.4.2 16.4.3 16.4.4 16.4.5 16.4.6 16.4.7 配置RTC寄存器 RTC标志的设置 RTC控制寄存器高位(RTC_CRH) RTC控制寄存器低位(RTC_CRL) RTC预分频装载寄存器(RTC_PRLH/RTC_PRLL) RTC预分频器余数寄存器(RTC_DIVH / RTC_DIVL) RTC计数器寄存器 (RTC_CNTH / RTC_CNTL) RTC闹钟寄存器(RTC_ALRH/RTC_ALRL) RTC寄存器映像STM32F10xxx参考手册 310 310 311 311 311 312 313 313 314 315RTC寄存器描述17独立看门狗(IWDG)17.1 17.2 17.3 简介 IWDG主要性能 IWDG功能描述 硬件看门狗 寄存器访问保护 调试模式 键寄存器(IWDG_KR) 预分频寄存器(IWDG_PR) 重装载寄存器(IWDG_RLR) 状态寄存器(IWDG_SR) IWDG寄存器映像316316 316 316 316 316 316 317 317 318 318 319 31917.3.1 17.3.2 17.3.3 17.4 17.4.1 17.4.2 17.4.3 17.4.4 17.4.5IWDG寄存器描述18窗口看门狗(WWDG)18.1 18.2 18.3 18.4 18.5 18.6 WWDG简介 WWDG主要特性 WWDG功能描述 如何编写看门狗超时程序 调试模式 寄存器描述 控制寄存器(WWDG_CR) 配置寄存器(WWDG_CFR) 状态寄存器(WWDG_SR) WWDG寄存器映像320320 320 320 321 322 322 322 322 323 32318.6.1 18.6.2 18.6.3 18.6.419灵活的静态存储器控制器(FSMC)19.1 19.2 19.3 19.4 FSMC功能描述 框图 AHB接口 支持的存储器和操作 NOR和PSRAM地址映像 NAND和PC卡地址映像 外部存储器接口信号 支持的存储器及其操作 时序规则 NOR闪存和PSRAM控制器时序图 外部设备地址映像324324 324 325 325 326 327 327 328 329 330 330 330 15/75419.3.1 19.4.1 19.4.2 19.5 19.5.1 19.5.2 19.5.3 19.5.4NOR闪存和PSRAM控制器参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 19.5.5 19.5.6 19.6 19.6.1 19.6.2 19.6.3 19.6.4 19.6.5 19.6.6 19.6.7 19.7 同步的成组读 NOR闪存和PSRAM控制器寄存器 外部存储器接口信号 NAND闪存/PC卡支持的存储器及其操作 NAND闪存、ATA和PC卡时序图 NAND闪存操作 NAND闪存预等待功能 NAND闪存的纠错码ECC计算(NAND闪存) NAND闪存和PC卡控制器寄存器STM32F10xxx参考手册 343 347 352 352 353 353 354 355 356 356 362NAND闪存和PC卡控制器FSMC寄存器地址映象 SDIO主要功能 SDIO总线拓扑 SDIO功能描述 SDIO适配器 SDIO AHB接口 卡识别模式 卡复位 操作电压范围确认 卡识别过程 写数据块 读数据块 数据流操作,数据流写入和数据流读出(只适用于多媒体卡) 擦除:成组擦除和扇区擦除 宽总线选择和解除选择 保护管理 卡状态寄存器 SD状态寄存器 SD的I/O模式 命令与响应 R1(普通响应命令) R1b R2(CID、CSD寄存器) R3(OCR寄存器) R4(快速I/O) R4b R5(中断请求) R6(中断请求) 使用SDIO_D2信号线的SDIO I/O读等待操作 使用停止SDIO_CK的SDIO读等待操作 SDIO暂停/恢复操作 SDIO中断 命令完成指示关闭 命令完成指示使能20SDIO接口(SDIO)20.1 20.2 20.3363363 363 366 367 374 374 374 374 375 375 376 376 376 377 378 378 380 382 385 385 388 388 388 388 389 389 389 390 390 390 390 391 391 391 391 391 391 16/75420.3.1 20.3.2 20.4 20.4.1 20.4.2 20.4.3 20.4.4 20.4.5 20.4.6 20.4.7 20.4.8 20.4.9 20.4.10 20.4.11 20.4.12 20.4.13 20.4.14 20.5 20.5.1 20.5.2 20.5.3 20.5.4 20.5.5 20.5.6 20.5.7 20.5.8 20.6 20.6.1 20.6.2 20.6.3 20.6.4 20.7 20.7.1 20.7.2卡功能描述响应格式SDIO I/O卡特定的操作CE-ATA特定操作参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 20.7.3 20.7.4 20.8 20.9 CE-ATA中断 中止CMD61STM32F10xxx参考手册 392 392 392 392 392 392 393 393 394 395 395 395 396 397 397 398 399 401 401 402硬件流控制 SDIO寄存器 SDIO电源控制寄存器(SDIO_POWER) SDIO时钟控制寄存器(SDIO_CLKCR) SDIO参数寄存器(SDIO_ARG) SDIO命令寄存器(SDIO_CMD) SDIO命令响应寄存器(SDIO_RESPCMD) SDIO响应1..4寄存器(SDIO_RESPx) SDIO数据定时器寄存器(SDIO_DTIMER) SDIO数据长度寄存器(SDIO_DLEN) SDIO数据控制寄存器(SDIO_DCTRL) SDIO数据计数器寄存器(SDIO_DCOUNT) SDIO状态寄存器(SDIO_STA) SDIO清除中断寄存器(SDIO_ICR) SDIO中断屏蔽寄存器(SDIO_MASK) SDIO FIFO计数器寄存器(SDIO_FIFOCNT) SDIO数据FIFO寄存器(SDIO_FIFO) SDIO寄存器映像20.9.1 20.9.2 20.9.3 20.9.4 20.9.5 20.9.6 20.9.7 20.9.8 20.9.9 20.9.10 20.9.11 20.9.12 20.9.13 20.9.14 20.9.15 20.9.1621USB全速设备接口(USB)21.1 21.2 21.3 21.4 USB简介 USB主要特征 USB功能描述 USB功能模块描述 通用USB设备编程 系统复位和上电复位 双缓冲端点 同步传输 挂起/恢复事件 通用寄存器 端点寄存器 缓冲区描述表 USB寄存器映像 编程中需要考虑的问题403403 403 404 405 406 406 406 409 410 411 412 412 416 419 42121.3.1 21.4.1 21.4.2 21.4.3 21.4.4 21.4.5 21.5 21.5.1 21.5.2 21.5.3 21.5.4USB寄存器描述22控制器局域网(bxCAN)22.1 22.2 22.3 bxCAN简介 bxCAN主要特点 bxCAN总体描述 CAN 2.0B主动内核 控制、状态和配置寄存器 发送邮箱 接收过滤器 初始化模式 正常模式 睡眠模式(低功耗)423423 423 424 424 424 424 424 426 426 426 42617/75422.3.1 22.3.2 22.3.3 22.3.4 22.4 22.4.1 22.4.2 22.4.3bxCAN工作模式参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 22.5 测试模式 静默模式 环回模式 环回静默模式STM32F10xxx参考手册 427 427 427 428 428 428 428 430 430 431 434 435 436 438 439 439 439 447 451 454 22.5.1 22.5.2 22.5.322.6 22.7STM32F10xxx处于调试模式时 bxCAN功能描述 发送处理 时间触发通信模式 接收管理 标识符过滤 报文存储 出错管理 位时间特性22.7.1 22.7.2 22.7.3 22.7.4 22.7.5 22.7.6 22.7.7 22.8 22.9bxCAN中断 CAN 寄存器描述 寄存器访问保护 CAN控制和状态寄存器 CAN邮箱寄存器 CAN过滤器寄存器 bxCAN寄存器列表22.9.1 22.9.2 22.9.3 22.9.4 22.9.523串行外设接口(SPI)23.1 23.2 SPI简介 SPI和I S主要特征 SPI特征 I2S功能 概述 配置SPI为从模式 配置SPI为主模式 配置SPI为单工通信 数据发送与接收过程 CRC计算 状态标志 关闭SPI 利用DMA的SPI通信 错误标志 SPI中断 I S功能描述 支持的音频协议 时钟发生器 I2S主模式 I2S从模式 状态标志位 错误标志位 I2S中断 DMA功能2 2457457 457 457 458 459 459 462 462 463 463 468 469 470 470 472 472 473 473 474 479 482 483 484 485 485 485 48618/75423.2.1 23.2.2 23.3 23.3.1 23.3.2 23.3.3 23.3.4 23.3.5 23.3.6 23.3.7 23.3.8 23.3.9 23.3.10 23.3.11 23.4 23.4.1 23.4.2 23.4.3 23.4.4 23.4.5 23.4.6 23.4.7 23.4.8 23.4.9 23.5SPI功能描述I2S功能描述SPI和I2S寄存器描述参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 23.5.1 23.5.2 23.5.3 23.5.4 23.5.5 23.5.6 23.5.7 23.5.8 23.5.9 23.5.10 SPI控制寄存器1(SPI_CR1)(I2S模式下不使用) SPI控制寄存器2(SPI_CR2) SPI 状态寄存器(SPI_SR) SPI 数据寄存器(SPI_DR) SPI CRC多项式寄存器(SPI_CRCPR)(I2S模式下不使用) SPI Rx CRC寄存器(SPI_RXCRCR)(I2S模式下不使用) SPI Tx CRC寄存器(SPI_TXCRCR) SPI_I2S配置寄存器(SPI_I2S_CFGR) SPI_I2S预分频寄存器(SPI_I2SPR) SPI 寄存器地址映象STM32F10xxx参考手册 486 487 488 489 489 490 490 490 491 49224I2C接口24.1 24.2 24.3 I C简介 I C主要特点 I C功能描述 模式选择 I2C从模式 I2C主模式 错误条件 SDA/SCL线控制 SMBus DMA请求 包错误校验(PEC)2 2 2493493 493 494 494 495 497 499 500 501 502 503 504 505 505 505 507 508 509 509 510 512 513 514 51524.3.1 24.3.2 24.3.3 24.3.4 24.3.5 24.3.6 24.3.7 24.3.8 24.4 24.5 24.62 2I2C中断请求 I C调试模式 I C寄存器描述 控制寄存器1(I2C_CR1) 控制寄存器2(I2C_CR2) 自身地址寄存器1(I2C_OAR1) 自身地址寄存器2(I2C_OAR2) 数据寄存器(I2C_DR) 状态寄存器1(I2C_SR1) 状态寄存器2 (I2C_SR2) 时钟控制寄存器(I2C_CCR) TRISE寄存器(I2C_TRISE) I2C寄存器地址映象24.6.1 24.6.2 24.6.3 24.6.4 24.6.5 24.6.6 24.6.7 24.6.8 24.6.9 24.6.1025通用同步异步收发器(USART)25.1 25.2 25.3 USART介绍 USART主要特性 USART功能概述 USART 特性描述 发送器 接收器 分数波特率的产生 USART接收器容忍时钟的变化 多处理器通信 校验控制 LIN(局域互联网)模式 USART 同步模式 单线半双工通信516516 516 517 518 519 521 524 525 526 527 528 530 53219/75425.3.1 25.3.2 25.3.3 25.3.4 25.3.5 25.3.6 25.3.7 25.3.8 25.3.9 25.3.10参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 25.3.11 25.3.12 25.3.13 25.3.14 25.4 25.5 25.6 智能卡 IrDA SIR ENDEC 功能模块 利用DMA连续通信 硬件流控制STM32F10xxx参考手册 532 533 535 537 538 539 540 540 541 542 542 544 545 546 548USART中断请求 USART模式配置 USART寄存器描述 状态寄存器(USART_SR) 数据寄存器(USART_DR) 波特比率寄存器(USART_BRR) 控制寄存器1(USART_CR1) 控制寄存器2(USART_CR2) 控制寄存器3(USART_CR3) 保护时间和预分频寄存器(USART_GTPR) USART寄存器地址映象25.6.1 25.6.2 25.6.3 25.6.4 25.6.5 25.6.6 25.6.7 25.6.826USB OTG全速(OTG_FS)26.1 26.2 OTG模块介绍 OTG_FS主要功能 通用功能 主机模式功能 设备模式功能 OTG全速控制器 全速OTG PHY(物理接口) ID信号检测 HNP双角色设备 SRP双角色设备 具备SRP功能的设备 设备状态 设备端点 具备SRP功能的主机 USB主机状态 主机通道 主机调度器 主机SOF 设备SOF549549 549 549 550 550 551 551 551 552 552 552 553 553 553 554 554 556 556 557 558 558 560 560 560 560 562 563 563 563 564 56420/75426.2.1 26.2.2 26.2.3 26.3 26.3.1 26.3.2 26.4 26.4.1 26.4.2 26.4.3 26.5 26.5.1 26.5.2 26.5.3 26.6 26.6.1 26.6.2 26.6.3 26.6.4 26.7 26.7.1 26.7.2 26.8 26.9OTG_FS功能描述OTG双角色设备(DRD)USB设备模式USB主机SOF触发供电选项 USB数据FIFO 设备模式下的接收FIFO 设备模式下的发送FIFO 主机模式下的接收FIFO26.10 设备模式下的FIFO结构 26.10.1 26.10.2 26.11.126.11 主机模式下的FIFO结构参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 26.11.2 主机模式下的发送FIFOSTM32F10xxx参考手册 564 565 566 566 567 570 585 593 608 610 617 617 617 617 618 632 633 646 64826.12 USB系统性能 26.13 OTG_FS中断 26.14 OTG_FS控制和状态寄存器 26.14.1 26.14.2 26.14.3 26.14.4 26.14.5 26.14.6 26.15.1 26.15.2 26.15.3 26.15.4 26.15.5 26.15.6 26.15.7 26.15.8 CSR存储器映像 OTG_FS全局寄存器 主机模式下的寄存器 设备模式下的寄存器 OTG_FS电源和时钟门控寄存器(OTG_FS_PCGCCTL) OTG_FS寄存器映像 控制器初始化 主机模式下的初始化 设备模式下的初始化 主机模式下的编程规则 设备模式下的编程规则 操作流程 最差情况下的响应时间 OTG编程规则26.15 OTG_FS编程规则27以太网(ETH):具有DMA控制器的介质访问控制(MAC)27.1 27.2 以太网模块介绍 以太网模块主要功能 MAC控制器功能 DMA功能 PTP功能652652 652 652 653 654 654 655 655 657 659 660 660 661 663 669 673 673 675 675 676 678 682 683 683 684 684 684 68421/75427.2.1 27.2.2 27.2.3 27.3 27.4以太网模块引脚和内部信号 以太网模块功能描述:SMI、MII和RMII 站点管理接口(SMI) 独立于介质的接口:MII 精简的独立于介质的接口:RMII MII/RMII的选择 MAC 802.3帧格式 MAC帧的传输 MAC帧的接收 MAC中断 MAC过滤 MAC自循环模式 MAC管理计数器:MMC 电源管理:PMT 精确时间协议(IEEE1588 PTP) 使用DMA发送的初始化步骤 主机总线突发访问 主机数据缓存对齐 缓冲区大小计算 DMA仲裁器 DMA错误响应27.4.1 27.4.2 27.4.3 27.4.4 27.5 27.5.1 27.5.2 27.5.3 27.5.4 27.5.5 27.5.6 27.5.7 27.5.8 27.5.9 27.6 27.6.1 27.6.2 27.6.3 27.6.4 27.6.5 27.6.6以太网模块功能描述:MAC 802.3以太网功能描述:DMA控制器操作参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 目录 27.6.7 27.6.8 27.6.9 27.7 27.8 发送DMA设置 接收DMA设置 DMA中断STM32F10xxx参考手册 684 694 700 701 702 702 713 716 719 729以太网中断 以太网寄存器描述 MAC寄存器描述 MMC寄存器描述 IEEE 1588时间戳寄存器 DMA寄存器描述 以太网寄存器映像27.8.1 27.8.2 27.8.3 27.8.4 27.8.528器件电子签名28.1 28.2 存储器容量寄存器 闪存容量寄存器 产品唯一身份标识寄存器(96位) 概况 ARM参考文献 SWJ调试端口(serial wire and JTAG) JTAG-DP和SW-DP切换的机制 SWJ调试端口脚 灵活的SWJ-DP脚分配 JTAG脚上的内部上拉和下拉 利用串行接口并释放不用的调试脚作为普通I/O口 引脚分布和调试端口脚 28.1.1732732 732 73229调试支持(DBG)29.1 29.2 29.3 29.4734734 735 735 736 736 736 736 737 737 738 738 738 739 740 740 740 741 741 741 742 742 742 743 743 744 744 744 745 745 745 74522/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本29.3.1 29.4.1 29.4.2 29.4.3 29.4.4 29.5 29.6STM32F10xxx JTAG TAP 连接 ID 代码和锁定机制 微控制器设备ID编码 边界扫描TAP Cortex-M3 TAP Cortex-M3 JEDEC-106 ID代码29.6.1 29.6.2 29.6.3 29.6.4 29.7 29.8JTAG调试端口 SW调试端口 SW协议介绍 SW协议序列 SW-DP状态机(Reset, idle states, ID code) DP和AP读/写访问 SW-DP寄存器 SW-AP寄存器29.8.1 29.8.2 29.8.3 29.8.4 29.8.5 29.8.6 29.9对于JTAG-DP或SWDP都有效的AHB-AP (AHB 访问端口)29.10 内核调试 29.11 调试器主机在系统复位下的连接能力 29.12 FPB (Flash patch breakpoint) 29.13 DWT(数据观察点触发data watchpoint trigger) 29.14 ITM (指令跟踪微单元 instrumentation trace macrocell) 29.14.1 29.14.2 概述 时间戳包,同步和溢出包 目录 29.15 ETM模块(嵌入式跟踪微单元Embedded Trace Macrocell) 29.15.1 29.15.2 29.15.3 29.15.4 29.16.1 29.16.2 29.16.3 29.17.1 29.17.2 29.17.3 29.17.4 29.17.5 29.17.6 29.17.7 29.17.8 29.17.9 29.17.10 概述 信号协议和包类型 主要的ETM寄存器 配置实例 低功耗模式的调试支持 支持定时器、看门狗、bxCAN和I2C的调试 调试MCU配置寄存器 导言 跟踪引脚分配 TPUI格式器 TPUI帧异步包 同步帧包的发送 同步模式 异步模式 TRACECLKIN在STM32F10xxx内部的连接 TPIU寄存器 配置的例子STM32F10xxx参考手册 746 746 746 747 747 747 747 747 748 750 750 750 752 752 752 752 753 753 753 754 75429.16 MCU调试模块(MCUDBG)29.17 TPIU (跟踪端口接口单元 Trace Port Interface Unit)29.18 DBG寄存器地址映象23/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构STM32F10xxx参考手册11.1文中的缩写寄存器描述表中使用的缩写列表在对寄存器的描述中使用了下列缩写:read / write (rw) read-only (r) write-only (w) read/clear (rc_w1) read / clear (rc_w0) read / clear by read (rc_r) read / set (rs) read-only write trigger (rt_w) toggle (t) Reserved(Res.) 软件能读写此位。 软件只能读此位。 软件只能写此位,读此位将返回复位值。 软件可以读此位,也可以通过写’1’清除此位,写’0’对此位无影响。 软件可以读此位,也可以通过写’0’清除此位,写’1’对此位无影响。 软件可以读此位;读此位将自动地清除它为’0’,写’0’对此位无影响。 软件可以读也可以设置此位,写’0’对此位无影响。 软件可以读此位;写’0’或’1’触发一个事件但对此位数值没有影响。 软件只能通过写’1’来翻转此位,写’0’对此位无影响。 保留位,必须保持默认值不变1.2术语表● 小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和 STM32F103xx微控制器。 ● 中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx 和STM32F103xx微控制器。 ● 大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx 微控制器。 ● 互联型产品是STM32F105xx和STM32F107xx微控制器。1.3可用的外设有关STM32微控制器系列全部型号中,某外设存在与否及其数目,请查阅相应的小容量、中容 量或者大容量STM32F101xx和STM32F103xx以及小容量和中容量STM32F102xx的数据手册, 以及STM32F105xx/STM32F107xx数据手册。24/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构STM32F10xxx参考手册22.1存储器和总线构架系统构架在小容量、中容量和 大容量产品中,主系统由以下部分构成: ● 四个驱动单元: ─ ─ Cortex?-M3内核DCode总线(D-bus),和系统总线(S-bus) 通用DMA1和通用DMA2● 四个被动单元 ─ 内部SRAM ─ 内部闪存存储器 ─ FSMC ─ AHB到APB的桥(AHB2APBx),它连接所有的APB设备 这些都是通过一个多级的AHB总线构架相互连接的,如下图图1所示: 图1 系统结构在互联型产品中,主系统由以下部分构成: ● 五个驱动单元: ─ ─ ─ Cortex?-M3内核DCode总线(D-bus),和系统总线(S-bus) 通用DMA1和通用DMA2 以太网DMA● 三个被动单元 ─ 内部SRAM ─ 内部闪存存储器 ─ AHB到APB的桥(AHB2APBx),它连接所有的APB设备 这些都是通过一个多级的AHB总线构架相互连接的,如图2所示:25/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构 图2 互联型产品的系统结构STM32F10xxx参考手册ICode总线该总线将Cortex?-M3内核的指令总线与闪存指令接口相连接。指令预取在此总线上完成。DCode总线该总线将Cortex?-M3内核的DCode总线与闪存存储器的数据接口相连接(常量加载和调试访 问)。系统总线此总线连接Cortex?-M3内核的系统总线(外设总线)到总线矩阵,总线矩阵协调着内核和DMA间 的访问。DMA总线此 总 线将 DMA 的AHB主 控 接口 与总 线 矩阵 相联 , 总线 矩阵 协 调着 CPU 的 DCode 和 DMA 到 SRAM、闪存和外设的访问。总线矩阵总线矩阵协调内核系统总线和DMA主控总线之间的访问仲裁,仲裁利用轮换算法。在互联型产 品中,总线矩阵包含5个驱动部件(CPU的DCode、系统总线、以太网DMA、DMA1总线和 DMA2总线)和3个从部件(闪存存储器接口(FLITF)、SRAM和AHB2APB桥)。在其它产品中总线 矩阵包含4个驱动部件(CPU的DCode、系统总线、DMA1总线和DMA2总线)和4个被动部件(闪存 存储器接口(FLITF)、SRAM、FSMC和AHB2APB桥)。 AHB外设通过总线矩阵与系统总线相连,允许DMA访问。26/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构STM32F10xxx参考手册AHB/APB桥(APB)两个AHB/APB桥在AHB和2个APB总线间提供同步连接。APB1操作速度限于36MHz,APB2操 作于全速(最高72MHz)。 有关连接到每个桥的不同外设的地址映射请参考 表1 。在每一次复位以后,所有除SRAM和 FLITF以外的外设都被关闭,在使用一个外设之前,必须设置寄存器RCC_AHBENR来打开该外 设的时钟。注意: 当对APB寄存器进行8位或者16位访问时,该访问会被自动转换成32位的访问:桥会自动将8位 或者32位的数据扩展以配合32位的向量。2.2存储器组织程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB的线性地址空间内。 数据字节以小端格式存放在存储器中。一个字里的最低地址字节被认为是该字的最低有效字 节,而最高地址字节是最高有效字节。 外设寄存器的映像请参考相关章节。 可访问的存储器空间被分成8个主要块,每个块为512MB。 其他所有没有分配给片上存储器和外设的存储器空间都是保留的地址空间,请参考相应器件的 数据手册中的存储器映像图。27/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构STM32F10xxx参考手册2.3存储器映像请参考相应器件的数据手册中的存储器映像图。 表1列出了所用STM32F10xxx中内置外设的起 始地址。 表1 寄存器组起始地址外设 USB OTG 全速 保留 以太网 保留 CRC 闪存存储器接口 保留 复位和时钟控制(RCC) 保留 DMA2 DMA1 保留 SDIO 保留 ADC3 USART1 TIM8定时器 SPI1 TIM1定时器 ADC2 ADC1 GPIO端口G GPIO端口F GPIO端口E GPIO端口D GPIO端口C GPIO端口B GPIO端口A EXTI AFIO 保留 DAC 电源控制(PWR) 后备寄存器(BKP) bxCAN2 bxCAN1 USB/CAN共享的512字节SRAM APB1 参见12.5.14节 参见4.4.3节 参见5.4.5节 参见22.9.5节 参见22.9.5节 APB2 参见11.12.15节 参见25.6.8节 参见13.4.21节 参见23.5节 参见13.4.21节 参见11.12.15节 参见11.12.15节 参见8.5节 参见8.5节 参见8.5节 参见8.5节 参见8.5节 参见8.5节 参见8.5节 参见9.3.7节 参见8.5节 参见20.9.16节 AHB 参见6.3.11节 参见3.4.4节 AHB 参见27.8.5节 总线 寄存器映像 参见26.14.6节起始地址 0x C 0x5003 FFFF 0x C 0x4FFF FFFF 0x C 0x4002 9FFF 0x - 0x4002 3FFF 0x - 0x4002 33FF 0x - 0x4002 23FF 0x - 0x4002 1FFF 0x - 0x4002 13FF 0x - 0x4002 0FFF 0x - 0x4002 07FF 0x - 0x4002 03FF 0x - 0x4001 7FFF 0x - 0x4001 83FF 0x - 0x4001 7FFF 0x - 0x4001 3FFF 0x - 0x4001 3BFF 0x - 0x4001 37FF 0x - 0x4001 33FF 0x - 0x4001 2FFF 0x - 0x4001 2BFF 0x - 0x4001 27FF 0x - 0x4001 23FF 0x - 0x4001 23FF 0x - 0x4001 1BFF 0x - 0x4001 17FF 0x - 0x4001 13FF 0X - 0x4001 0FFF 0x - 0x4001 0BFF 0x - 0x4001 07FF 0x - 0x4001 03FF 0x - 0x4000FFFF 0x - 0x4000 77FF 0x - 0x4000 73FF 0x - 0x4000 6FFF 0x - 0x4000 6BFF 0x - 0x4000 67FF 0x(1)参见10.4.7节 参见10.4.7节- 0x4000 63FF28/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构0x - 0x4000 5FFF 0x - 0x4000 5BFF 0x - 0x4000 57FF 0x - 0x4000 53FF 0x - 0x4000 4FFF 0x - 0x4000 4BFF 0x - 0x4000 47FF 0x - 0x4000 3FFF 0x - 0x4000 3FFF 0x - 0x4000 3BFF 0x - 0x4000 37FF 0x - 0x4000 33FF 0x - 0x4000 2FFF 0x - 0x4000 2BFF 0x - 0x4000 27FF 0x - 0x4000 17FF 0x - 0x4000 13FF 0x - 0x4000 0FFF 0x - 0x4000 0BFF 0x - 0x4000 07FF 0x - 0x4000 03FF USB全速设备寄存器 I2C2 I2C1 UART5 UART4 USART3 USART2 保留 SPI3/I2S3 SPI2/I2S3 保留 独立看门狗(IWDG) 窗口看门狗(WWDG) RTC 保留 TIM7定时器 TIM6定时器 TIM5定时器 TIM4定时器 TIM3定时器 TIM2定时器STM32F10xxx参考手册参见21.5.4节 参见24.6.10节 参见24.6.10节 参见25.6.8节 参见25.6.8节 参见25.6.8节 参见25.6.8节参见23.5节 参见23.5节参见17.4.5节 参见18.6.4节 参见16.4.7节参见15.4.9节 参见15.4.9节 参见14.4.19节 参见14.4.19节 参见14.4.19节 参见14.4.19节1.只在小容量、中容量和大容量的产品中才有这个共享的SRAM区域,互联型产品中没有这个区域。2.3.1嵌入式SRAMSTM32F10xxx内置64K字节的静态SRAM。它可以以字节、半字(16位)或全字(32位)访问。 SRAM的起始地址是0x。2.3.2位段Cortex?-M3存储器映像包括两个位段(bit-band)区。这两个位段区将别名存储器区中的每个字 映射到位段存储器区的一个位,在别名存储区写入一个字具有对位段区的目标位执行读-改-写操 作的相同效果。 在STM32F10xxx里,外设寄存器和SRAM都被映射到一个位段区里,这允许执行单一的位段的 写和读操作。 下面的映射公式给出了别名区中的每个字是如何对应位带区的相应位的: bit_word_addr = bit_band_base + (byte_offset×32) + (bit_number×4) 其中: bit_word_addr是别名存储器区中字的地址,它映射到某个目标位。 bit_band_base是别名区的起始地址。 byte_offset是包含目标位的字节在位段里的序号 bit_number是目标位所在位置(0-31)例子:下面的例子说明如何映射别名区中SRAM地址为0x的字节中的位2: 0x = 0x + (0x300×32) + (2×4). 对0x地址的写操作与对SRAM中地址0x字节的位2执行读-改-写操作有着相 同的效果。29/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构STM32F10xxx参考手册读0x地址返回SRAM中地址0x字节的位2的值(0x01 或 0x00)。 请参考《Cortex?-M3技术参考手册》以了解更多有关位段的信息。2.3.3嵌入式闪存高性能的闪存模块有以下的主要特性: ● 高达512K字节闪存存储器结构:闪存存储器有主存储块和信息块组成: 主存储块容量: 小容量产品主存储块最大为4K×64位,每个存储块划分为32个1K字节的页(见表2)。 中容量产品主存储块最大为16K×64位,每个存储块划分为128个1K字节的页(见表3)。 大容量产品主存储块最大为64K×64位,每个存储块划分为256个2K字节的页(见表4)。 互联型产品主存储块最大为32K×64位,每个存储块划分为128个2K字节的页(见表5)。 ─ 信息块容量: 互联型产品有2360×64位(见表5)。 其它产品有258×64位(见表2、表3、表4)。 闪存存储器接口的特性为: ● 带预取缓冲器的读接口(每字为2×64位) ● 选择字节加载器 ● 闪存编程/擦除操作 ● 访问/写保护 表2模块─闪存模块的组织(小容量产品)名称 页0 页1 页2 地址 0x - 0x0800 03FF 0x - 0x0800 07FF 0x - 0x0800 0BFF 0x - 0x0800 0FFF 0x - 0x0800 13FF … … 0x - 0x0800 7FFF 0x1FFF F000 - 0x1FFF F7FF 0x1FFF F800 - 0x1FFF F80F 0x - 0xx - 0xx - 0xxC - 0xx - 0xx - 0xx - 0xxC - 0xx - 0x 大小(字节) 1K 1K 1K 1K 1K … … 1K 2K 16 4 4 4 4 4 4 4 4 4主存储块页3 页4 … … 页31 系统存储器 选择字节 FLASH_ACR FALSH_KEYR FLASH_OPTKEYR FLASH_SR FLASH_CR FLASH_AR 保留 FLASH_OBR FLASH_WRPR信息块闪存存储器 接口寄存器30/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构 表3模块STM32F10xxx参考手册闪存模块的组织(中容量产品)名称 页0 页1 页2 地址 0x - 0x0800 03FF 0x - 0x0800 07FF 0x - 0x0800 0BFF 0x - 0x0800 0FFF 0x - 0x0800 13FF … … 0x0801 FC00 - 0x0801 FFFF 0x1FFF F000 - 0x1FFF F7FF 0x1FFF F800 - 0x1FFF F80F 0x - 0xx - 0xx - 0xxC - 0xx - 0xx - 0xx - 0xxC - 0xx - 0x 大小(字节) 1K 1K 1K 1K 1K … … 1K 2K 16 4 4 4 4 4 4 4 4 4主存储块页3 页4 … … 页127 系统存储器 选择字节 FLASH_ACR FALSH_KEYR FLASH_OPTKEYR FLASH_SR FLASH_CR FLASH_AR 保留 FLASH_OBR FLASH_WRPR信息块闪存存储器 接口寄存器表4模块闪存模块的组织(大容量产品)名称 页0 页1 页2 地址 0x - 0x0800 07FF 0x - 0x0800 0FFF 0x - 0x0800 17FF 0x - 0x0800 1FFF … … 0x - 0x0807 FFFF 0x1FFF F000 - 0x1FFF F7FF 0x1FFF F800 - 0x1FFF F80F 0x - 0xx - 0xx - 0xxC - 0xx - 0xx - 0xx - 0xxC - 0xx - 0x 大小(字节) 2K 2K 2K 2K … … 2K 2K 16 4 4 4 4 4 4 4 4 4主存储块页3 … … 页255 系统存储器 选择字节 FLASH_ACR FALSH_KEYR FLASH_OPTKEYR FLASH_SR FLASH_CR FLASH_AR 保留 FLASH_OBR FLASH_WRPR信息块闪存存储器 接口寄存器31/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构 表5模块STM32F10xxx参考手册闪存模块的组织(互联型产品)名称 页0 页1 页2 地址 0x - 0x0800 07FF 0x - 0x0800 0FFF 0x - 0x0800 17FF 0x - 0x0800 1FFF … … 0x - 0x0803 FFFF 0x1FFF B000 - 0x1FFF F7FF 0x1FFF F800 - 0x1FFF F80F 0x - 0xx - 0xx - 0xxC - 0xx - 0xx - 0xx - 0xxC - 0xx - 0x 大小(字节) 2K 2K 2K 2K … … 2K 18K 16 4 4 4 4 4 4 4 4 4主存储块页3 … … 页127 系统存储器 选择字节 FLASH_ACR FALSH_KEYR FLASH_OPTKEYR FLASH_SR FLASH_CR FLASH_AR 保留 FLASH_OBR FLASH_WRPR信息块闪存存储器 接口寄存器注:有关闪存寄存器的详细信息,请参考《STM32F10xxx闪存编程手册》闪存读取闪存的指令和数据访问是通过AHB总线完成的。预取模块是用于通过ICode总线读取指令的。仲 裁是作用在闪存接口,并且DCode总线上的数据访问优先。 读访问可以有以下配置选项: ● 等待时间:可以随时更改的用于读取操作的等待状态的数量。 ● 预取缓冲区(2个64位):在每一次复位以后被自动打开,由于每个缓冲区的大小(64位)与闪 存的带宽相同,因此只通过需一次读闪存的操作即可更新整个缓冲区的内容。由于预取缓 冲区的存在,CPU可以工作在更高的主频。CPU每次取指最多为32位的字,取一条指令 时,下一条指令已经在缓冲区中等待。 ● 半周期:用于功耗优化。注:1. 这些选项应与闪存存储器的访问时间一起使用。等待周期体现了系统时钟(SYSCLK)频率与闪存访问时间的关系: 0等待周期,当 0 & SYSCLK & 24MHz 1等待周期,当 24MHz & SYSCLK ≤ 48MHz 2等待周期,当 48MHz & SYSCLK ≤ 72MHz 2 . 半周期配置不能与使用了预分频器的AHB一起使用,时钟系统应该等于HCLK时钟。该特性 只能用在时钟频率为8MHz或低于8MHz时,可以直接使用的内部RC振荡器(HSI),或者是主振 荡器(HSE),但不能用PLL。 3. 当AHB预分频系数不为1时,必须置预取缓冲区处于开启状态。 4. 只有在系统时钟(SYSCLK)小于24MHz并且没有打开AHB的预分频器(即HCLK必须等于 SYSHCLK)时,才能执行预取缓冲器的打开和关闭操作。一般而言,在初始化过程中执行预取 缓冲器的打开和关闭操作,这时微控制器的时钟由8MHz的内部RC振荡器(HSI)提供。 5. 使用DMA:DMA在DCode总线上访问闪存存储器,它的优先级比ICode上的取指高。DMA在 每次传送完成后具有一个空余的周期。有些指令可以和DMA传输一起执行。32/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 存储器和总线架构STM32F10xxx参考手册编程和擦除闪存闪存编程一次可以写入16位(半字)。 闪存擦除操作可以按页面擦除或完全擦除(全擦除)。全擦除不影响信息块。 为了确保不发生过度编程, 闪存编程和擦除控制器块是由一个固定的时钟控制的。 写操作(编程或擦除)结束时可以触发中断。仅当闪存控制器接口时钟开启时,此中断可以用来从 WFI模式退出。注:有关闪存存储器的操作和寄存器配置,请参考STM32F10xxx闪存编程手册。2.4启动配置在STM32F10xxx里,可以通过BOOT[1:0]引脚选择三种不同启动模式。 表6 启动模式启动模式选择引脚 BOOT1 X 0 1 BOOT0 0 1 1 主闪存存储器 系统存储器 内置SRAM 主闪存存储器被选为启动区域 系统存储器被选为启动区域 内置SRAM被选为启动区域 启动模式 说明在系统复位后,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1 和BOOT0引脚的状态,来选择在复位后的启动模式。 在从待机模式退出时,BOOT引脚的值将被被重新锁存;因此,在待机模式下BOOT引脚应保持 为需要的启动配置。在启动延迟之后,CPU从地址0x获取堆栈顶的地址,并从启动 存储器的0x指示的地址开始执行代码。 因为固定的存储器映像,代码区始终从地址0x开始(通过ICode和DCode总线访问), 而数据区(SRAM)始终从地址0x开始(通过系统总线访问)。Cortex-M3的CPU始终从 ICode总线获取复位向量,即启动仅适合于从代码区开始(典型地从Flash启动)。STM32F10xxx 微控制器实现了一个特殊的机制,系统可以不仅仅从Flash存储器或系统存储器启动,还可以从 内置SRAM启动。 根据选定的启动模式,主闪存存储器、系统存储器或SRAM可以按照以下方式访问: ● 从主闪存存储器启动:主闪存存储器被映射到启动空间(0x),但仍然能够在它原 有的地址(0x)访问它,即闪存存储器的内容可以在两个地址区域访问,0x或0x。 ● 从系统存储器启动:系统存储器被映射到启动空间(0x),但仍然能够在它原有的 地址(互联型产品原有地址为0x1FFF B000,其它产品原有地址为0x1FFF F000)访问它。 ● 从内置SRAM启动:只能在0x开始的地址区访问SRAM。注意: 当从内置SRAM启动,在应用程序的初始化代码中,必须使用NVIC的异常表和偏移寄存器,从 新映射向量表之SRAM中。内嵌的自举程序内嵌的自举程序存放在系统存储区,由ST在生产线上写入,用于通过可用的串行接口对闪存存 储器进行重新编程: ● 对于小容量、中容量和大容量的产品而言,可以通过USART1接口启用自举程序。进一步的 细节请查询AN2606。 ● 对于互联型产品而言,可以通过以下某个接口启用自举程序:USART1、USART2(重映像 的)、CAN2(重映像的)或USB OTG全速接口的设备模式(通过设备固件更新DFU协议)。 USART接口依靠内部8MHz振荡器(HSI)运行。CAN和USB OTG接口只能当外部有一个 8MHz、14.7456MHz或25MHz时钟(HSE)时运行。进一步的细节请查询AN2606。33/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 CRC计算单元(CRC)STM32F10xxx参考手册3CRC计算单元(CRC)小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和 STM32F103xx微控制器。 中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx和 STM32F103xx微控制器。 大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控 制器。 互联型产品是指STM32F105xx和STM32F107xx微控制器。 除非特别说明,本章描述的模块适用于整个STM32F10xxx微控制器系列。3.1CRC简介循环冗余校验(CRC)计算单元是根据固定的生成多项式得到任一32位全字的CRC计算结果。 在其他的应用中, CRC技术主要应用于核实数据传输或者数据存储的正确性和完整性。标准 EN/IEC 60335-1即提供了一种核实闪存存储器完整性的方法。CRC计算单元可以在程序运行时 计算出软件的标识,之后与在连接时生成的参考标识比较,然后存放在指定的存储器空间。3.2CRC主要特性● 使用CRC-32(以太网)多项式:0x4C11DB7 X32 + X26 + X23 + X22 + X16 + X12 + X11 + X10 + X8 + X7 + X4 + X2 + X +1 ● 一个32位数据寄存器用于输入 / 输出 ─ ● CRC计算时间:4个AHB时钟周期(HCLK) ● 通用8位寄存器(可用于存放临时数据) 下图为CRC计算单元框图 图3 CRC 计算单元框图3.3CRC功能描述CRC计算单元含有1个32位数据寄存器: ● 对该寄存器进行写操作时,作为输入寄存器,可以输入要进行CRC计算的新数据。 ● 对该寄存器进行读操作时,返回上一次CRC计算的结果。 每一次写入数据寄存器,其计算结果是前一次CRC计算结果和新计算结果的组合(对整个32位字 进行CRC计算,而不是逐字节地计算)。34/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 CRC计算单元(CRC)STM32F10xxx参考手册在CRC计算期间会暂停CPU的写操作,因此可以对寄存器CRC_DR进行背靠背写入或者连续地 写-读操作。 可以通过设置寄存器CRC_CR的RESET位来重置寄存器CRC_DR为0xFFFF FFFF。该操作不 影响寄存器CRC_IDR内的数据。3.43.4.1CRC寄存器CRC计算单元包括2个数据寄存器和1个控制寄存器数据寄存器(CRC_DR)地址偏移:0x00 复位值:0xFFFF FFFF31 rw 1530 rw 1429 rw 1328 rw 1227 rw 1126 rw 1025 rw 924 rw 823 rw 722 rw 621 rw 520 rw 419 rw 318 rw 217 rw 116 rw 0DR[31:16]DR[15:0] rw rw rw位31: 0rwrwrwrwrwrwrwrwrwrwrwrwrw数据寄存器位 写入CRC计算器的新数据时,作为输入寄存器 读取时返回CRC计算的结果3.4.2独立数据寄存器(CRC_IDR)地址偏移:0x04 复位值:0x1514131211 保留109876543210IDR[7:0] rw rw rw rw rw rw rw rw位31:8 位7:0保留。 通用8位数据寄存器位 可用于临时存放1字节的数据。 寄存器CRC_CR的RESET位产生的CRC复位对本寄存器没有影响译注:此寄存器不参与CRC计算,可以存放任何数据。35/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 CRC计算单元(CRC)STM32F10xxx参考手册3.4.3控制寄存器(CRC_CR)地址偏移:0x08 复位值:0x3130292827262524 保留232221201918171615141312111098 保留76543210 RESET w位31:1 位0保留。 RESET位 复位CRC计算单元,设置数据寄存器为0xFFFF FFFF。 只能对该位写’1’,它由硬件自动清’0’。3.4.4CRC寄存器映像下表列出了CRC的寄存器映像和复位值 表7 CRC 计算单元寄存器映像和复位值偏移 0x00 0x04 0x08寄存器 CRC_DR 复位值 CRC_IDR 复位值 CRC_CR 复位值31~2423~1615~876543210数据寄存器 0xFFFF FFFF 保留 保留 独立的数据寄存器 0x00 保留 0 RESET 036/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR)STM32F10xxx参考手册4电源控制(PWR)小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和 STM32F103xx微控制器。 中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx和 STM32F103xx微控制器。 大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控 制器。 互联型产品是指STM32F105xx和STM32F107xx微控制器。 除非特别说明,本章描述的模块适用于整个STM32F10xxx微控制器系列。4.1电源STM32的工作电压(VDD)为2.0~3.6V。通过内置的电压调节器提供所需的1.8V电源。 当主电源VDD掉电后,通过VBAT脚为实时时钟(RTC)和备份寄存器提供电源。 图4 电源框图注:VDDA和VSSA必须分别联到VDD和VSS。4.1.1独立的A/D转换器供电和参考电压为了提高转换的精确度,ADC使用一个独立的电源供电,过滤和屏蔽来自印刷电路板上的毛刺 干扰。 ● ADC的电源引脚为VDDA ● 独立的电源地VSSA 如果有VREF-引脚(根据封装而定),它必须连接到VSSA。37/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR)STM32F10xxx参考手册100脚和144脚封装:为了确保输入为低压时获得更好精度,用户可以连接一个独立的外部参考电压ADC到VREF+和 VREF-脚上。在VREF+的电压范围为2.4V~VDDA。64脚或更少封装:没有VREF+和VREF-引脚,他们在芯片内部与ADC的电源(VDDA)和地(VSSA)相联。4.1.2电池备份区域使用电池或其他电源连接到VBAT脚上,当VDD断电时,可以保存备份寄存器的内容和维持RTC的 功能。 VBAT脚也为RTC、LSE振荡器和PC13至PC15供电,这保证当主要电源被切断时RTC能继续工 作。切换到VBAT供电由复位模块中的掉电复位功能控制。 如果应用中没有使用外部电池,VBAT必须连接到VDD引脚上。 注意: 在VDD 上升阶段(tRSTTEMPO)或者探测到PVD之后,VBAT 和VDD 之间的电源开关仍会保持连接在 VBAT。在VDD上升阶段,如果VDD在小于tRSTTEMPO的时间内达到稳定状态(关于tRSTTEMPO可参考数 据手册中的相关部分),且VDD & VBAT + 0.6V时,电流可能通过VDD和VBAT之间的内部二极管注 入到VBAT。 如果与VBAT连接的电源或者电池不能承受这样的注入电流,强烈建议在外部VBAT和电源之间连 接一个低压降二极管。 如果在应用中没有外部电池,建议VBAT在外部通过一个100nF的陶瓷电容与VDD相连,更多细节 参阅AN2586。 当备份区域由VDD(内部模拟开关连到VDD)供电时,下述功能可用: ● PC14和PC15可以用于GPIO或LSE引脚 ● PC13可以作为通用I/O口、TAMPER引脚、RTC校准时钟、RTC闹钟或秒输出(参见第5 章:备份寄存器(BKP))注:因为模拟开关只能通过少量的电流(3mA),在输出模式下使用PC13至PC15的I/O口功能是有限 制的:速度必须限制在2MHz以下,最大负载为30pF,而且这些I/O口绝对不能当作电流源(如驱 动LED)。当后备区域由VBAT供电时(VDD消失后模拟开关连到VBAT),可以使用下述功能: ● PC14和PC15只能用于LSE引脚 ● PC13可以作为TAMPER引脚、RTC闹钟或秒输出(参见第5.4.2节:RTC时钟校准寄存器 (BKP_RTCCR))4.1.3电压调节器复位后调节器总是使能的。根据应用方式它以3种不同的模式工作。 ● 运转模式:调节器以正常功耗模式提供1.8V电源(内核,内存和外设)。 ● 停止模式:调节器以低功耗模式提供1.8V电源,以保存寄存器和SRAM的内容。 ● 待机模式:调节器停止供电。除了备用电路和备份域外,寄存器和SRAM的内容全部丢失。4.24.2.1电源管理器上电复位(POR)和掉电复位(PDR)STM32内部有一个完整的上电复位(POR)和掉电复位(PDR)电路,当供电电压达到2V时系统既 能正常工作。38/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR)STM32F10xxx参考手册当VDD/VDDA低于指定的限位电压VPOR/VPDR时,系统保持为复位状态,而无需外部复位电路。关 于上电复位和掉电复位的细节请参考数据手册的电气特性部分。 图5 上电复位和掉电复位的波形图4.2.2可编程电压监测器(PVD)用户可以利用PVD对VDD 电压与电源控制寄存器(PWR_CR)中的PLS[2:0]位进行比较来监控电 源,这几位选择监控电压的阀值。 通过设置PVDE位来使能PVD。 电源控制/状态寄存器(PWR_CSR)中的PVDO标志用来表明VDD 是高于还是低于PVD的电压阀 值。该事件在内部连接到外部中断的第16线,如果该中断在外部中断寄存器中是使能的,该事 件就会产生中断。当VDD下降到PVD阀值以下和(或)当VDD上升到PVD阀值之上时,根据外部中 断第16线的上升/下降边沿触发设置,就会产生PVD中断。例如,这一特性可用于用于执行紧急 关闭任务。 图6 PVD的门限39/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR)STM32F10xxx参考手册4.3低功耗模式在系统或电源复位以后,微控制器处于运行状态。当CPU不需继续运行时,可以利用多种低功 耗模式来节省功耗,例如等待某个外部事件时。用户需要根据最低电源消耗、最快速启动时间 和可用的唤醒源等条件,选定一个最佳的低功耗模式。 STM32F10xxx有三种低功耗模式: ● 睡眠模式(Cortex?-M3内核停止,所有外设包括Cortex-M3核心的外设,如NVIC、系统时 钟(SysTick)等仍在运行) ● 停止模式(所有的时钟都已停止) ● 待机模式(1.8V电源关闭) 此外,在运行模式下,可以通过以下方式中的一种降低功耗: ● 降低系统时钟 ● 关闭APB和AHB总线上未被使用的外设时钟。 表8 低功耗模式一览模式 睡眠 (SLEEP-NOW或 SLEEP-ON-EXIT) WFI WFE 进入 唤醒 任一中断 唤醒事件 对1.8V区域 时钟的影响 CPU时钟关,对 其他时钟和ADC 时钟无影响 对VDD区域 时钟的影响 无 电压调节器开停机PDDS和LPDS位 任一外部中断 ( 在外 +SLEEPDEEP位 部 中 断 寄 存 器 中 设 +WFI或WFE 置) WKUP引脚的上升 PDDS位 沿、RTC闹钟事件、 +SLEEPDEEP位 NRST引脚上的外部 +WFI或WFE 复位、IWDG复位开启或处于低功耗 模式(依据电源控制 寄 存 器 (PWR_CR) HSI 和HSE 的设定) 关闭所有 1.8V 区 的振荡器关 域的时钟 闭 关待机4.3.1降低系统时钟在 运 行 模 式 下 , 通 过 对 预 分 频 寄 存 器 进 行 编 程 , 可 以 降 低 任 意 一 个 系 统 时 钟(SYSCLK 、 HCLK、PCLK1、PCLK2)的速度。进入睡眠模式前,也可以利用预分频器来降低外设的时钟。 详见第6.3.2节:时钟配置寄存器(RCC_CFGR)。4.3.2外部时钟的控制在运行模式下,任何时候都可以通过停止为外设和内存提供时钟(HCLK和PCLKx)来减少功耗。 为了在睡眠模式下更多地减少功耗,可在执行WFI或WFE指令前关闭所有外设的时钟。 通 过 设 置 AHB 外 设 时 钟 使 能 寄 存 器 (RCC_AHBENR) 、 APB2 外 设 时 钟 使 能 寄 存 器 (RCC_APB2ENR)和APB1外设时钟使能寄存器(RCC_APB1ENR)来开关各个外设模块的时钟。4.3.3睡眠模式进入睡眠模式通过执行WFI或WFE指令进入睡眠状态。根据Cortex?-M3系统控制寄存器中的SLEEPONEXIT 位的值,有两种选项可用于选择睡眠模式进入机制: ● SLEEP-NOW:如果SLEEPONEXIT位被清除,当WRI或WFE被执行时,微控制器立即进 入睡眠模式。 ● SLEEP-ON-EXIT:如果SLEEPONEXIT位被置位,系统从最低优先级的中断处理程序中退 出时,微控制器就立即进入睡眠模式。 在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态。40/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR) 关于如何进入睡眠模式,更多的细节参考表9和表10。STM32F10xxx参考手册退出睡眠模式如果执行WFI指令进入睡眠模式,任意一个被嵌套向量中断控制器响应的外设中断都能将系统从 睡眠模式唤醒。 如果执行WFE指令进入睡眠模式,则一旦发生唤醒事件时,微处理器都将从睡眠模式退出。唤 醒事件可以通过下述方式产生: ● 在外设控制寄存器中使能一个中断,而不是在NVIC(嵌套向量中断控制器)中使能,并且在 Cortex-M3系统控制寄存器中使能SEVONPEND位。当MCU从WFE中唤醒后,外设的中断 挂起位和外设的NVIC中断通道挂起位(在NVIC中断清除挂起寄存器中)必须被清除。 ● 配置一个外部或内部的EXIT线为事件模式。当MCU从WFE中唤醒后,因为与事件线对应的 挂起位未被设置,不必清除外设的中断挂起位或外设的NVIC中断通道挂起位。 该模式唤醒所需的时间最短,因为没有时间损失在中断的进入或退出上。 关于如何退出睡眠模式,更多的细节参考表9和表10。 表9 SLEEP-NOW模式说明 在以下条件下执行WFI(等待中断)或WFE(等待事件)指令: 进入 C SLEEPDEEP = 0 和 C SLEEPONEXIT = 0 参考Cortex-M3系统控制寄存器。 如果执行WFI进入睡眠模式: 退出 中断:参考中断向量表(表54) 如果执行WFE进入睡眠模式: 唤醒事件:参考唤醒事件管理(第9.2.3节) 唤醒延时 无SLEEP-NOW模式表10SLEEP-ON-EXIT模式说明 在以下条件下执行WFI指令: C SLEEPDEEP = 0和 C SLEEPONEXIT = 1 参考Cortex?-M3系统控制寄存器 中断:参考中断向量表(表54) 无SLEEP-ON_EXIT模式进入退出 唤醒延时4.3.4停止模式停止模式是在Cortex?-M3的深睡眠模式基础上结合了外设的时钟控制机制,在停止模式下电压 调节器可运行在正常或低功耗模式。此时在1.8V供电区域的的所有时钟都被停止,PLL、HSI和 HSE RC振荡器的功能被禁止,SRAM和寄存器内容被保留下来。 在停止模式下,所有的I/O引脚都保持它们在运行模式时的状态。进入停止模式关于如何进入停止模式,详见表11。 在停止模式下,通过设置电源控制寄存器(PWR_CR)的LPDS位使内部调节器进入低功耗模式, 能够降低更多的功耗。 如果正在进行闪存编程,直到对内存访问完成,系统才进入停止模式。 如果正在进行对APB的访问,直到对APB访问完成,系统才进入停止模式。 可以通过对独立的控制位进行编程,可选择以下功能:41/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR)STM32F10xxx参考手册● 独立看门狗(IWDG):可通过写入看门狗的键寄存器或硬件选择来启动IWDG。一旦启动了 独立看门狗,除了系统复位,它不能再被停止。详见17.3节。 ● 实时时钟(RTC):通过备份域控制寄存器 (RCC_BDCR)的RTCEN位来设置。 ● 内部RC振荡器(LSI RC):通过控制/状态寄存器 (RCC_CSR)的LSION位来设置。 ● 外部32.768kHz振荡器(LSE):通过备份域控制寄存器 (RCC_BDCR)的LSEON位设置。 在停止模式下,如果在进入该模式前ADC和DAC没有被关闭,那么这些外设仍然消耗电流。通 过设置寄存器ADC_CR2的ADON位和寄存器DAC_CR的ENx位为0可关闭这2个外设。退出停止模式关于如何退出停止模式,详见下表。 当一个中断或唤醒事件导致退出停止模式时,HSI RC振荡器被选为系统时钟。 当电压调节器处于低功耗模式下,当系统从停止模式退出时,将会有一段额外的启动延时。如 果在停止模式期间保持内部调节器开启,则退出启动时间会缩短,但相应的功耗会增加。 表11 停止模式说明 在以下条件下执行WFI(等待中断)或WFE(等待事件)指令: C 设置Cortex-M3系统控制寄存器中的SLEEPDEEP位 进入 C 清除电源控制寄存器(PWR_CR)中的PDDS位 C 通过设置PWR_CR中LPDS位选择电压调节器的模式 注:为了进入停止模式,所有的外部中断的请求位(挂起寄存器(EXTI_PR))和RTC的闹钟标志 都必须被清除,否则停止模式的进入流程将会被跳过,程序继续运行。 如果执行WFI进入停止模式: 退出 设置任一外部中断线为中断模式(在NVIC中必须使能相应的外部中断向量)。参见中断向量 表(表54)。 如果执行WFE进入停止模式: 设置任一外部中断线为事件模式。参见唤醒事件管理(第9.2.3节)。 唤醒延时 HSI RC唤醒时间 + 电压调节器从低功耗唤醒的时间。停止模式4.3.5待机模式待机模式可实现系统的最低功耗。该模式是在Cortex-M3深睡眠模式时关闭电压调节器。整个 1.8V供电区域被断电。PLL、HSI和HSE振荡器也被断电。SRAM和寄存器内容丢失。只有备份 的寄存器和待机电路维持供电(见图4)。进入待机模式关于如何进入待机模式,详见表12。 可以通过设置独立的控制位,选择以下待机模式的功能: ● 独立看门狗(IWDG):可通过写入看门狗的键寄存器或硬件选择来启动IWDG。一旦启动了 独立看门狗,除了系统复位,它不能再被停止。详见17.3节。 ● 实时时钟(RTC):通过备用区域控制寄存器(RCC_BDCR)的RTCEN位来设置。 ● 内部RC振荡器(LSI RC):通过控制/状态寄存器(RCC_CSR)的LSION位来设置。 ● 外部32.768kHz振荡器(LSE):通过备用区域控制寄存器(RCC_BDCR)的LSEON位设置。退出待机模式当一个外部复位(NRST引脚)、IWDG复位、WKUP引脚上的上升沿或RTC闹钟事件的上升沿发 生时(见图154:简化的RTC框图),微控制器从待机模式退出。从待机唤醒后,除了电源控制/状 态寄存器(PWR_CSR)(见第4.4.2节),所有寄存器被复位。 从待机模式唤醒后的代码执行等同于复位后的执行(采样启动模式引脚、读取复位向量等)。电源 控制/状态寄存器(PWR_CSR)(见第4.4.2节)将会指示内核由待机状态退出。 关于如何退出待机模式,详见下表。42/754参照2009年12月 RM0008 Reference Manual 英文第10版 本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本 电源控制(PWR) 表12 待机模式说明 在以下条件下执行WFI(等待中断)或WFE(等待事件)指令: 进入 C 设置Cortex?-M3系统控制寄存器中的SLEEPDEEP位 C 设置电源控制寄存器(PWR_CR)中的PDDS位 C 清除电源控制/状态寄存器(PWR_CSR)中的WUF位 退出 唤醒延时STM32F10xxx参考手册待机模式WKUP引脚的上升沿、RTC闹钟事件的上升沿、NRST引脚上外部复位、IWDG复位。 复位阶段时电压调节器的启动。待机模式下的输入/输出端口状态在待机模式下,所有的I/O引脚处于高阻态,除了以下的引脚: ● 复位引脚(始终有效) ● 当被设置为防侵入或校准输出时的TAMPER引脚 ● 被使能的唤醒引脚调试模式默认情况下,如果在进行调试微处理器时,使微处理器进入停止或待机模式,将失去调试连 接。这是因为Cortex?-M3的内核失去了时钟。 然而,通过设置DBGMCU_CR寄存器中的某些配置位,可以在使用低功耗模式下调试软件。更 多的细节请参考第29.16.1节:低功耗模式的调试支持。4.3.6低功耗模式下的自动唤醒(AWU)RTC可以在不需要依赖外部中断的情况下唤醒低功耗模式下的微控制器(自动唤醒模式)。RTC提 供一个可编程的时间基数,用于周期性从停止或待机模式下唤醒。通过对备份区域控制寄存器 (RCC_BDCR)的RTCSEL[1:0]位的编程,三个RTC时钟源中的二个时钟源可以选作实现此功 能。 ● 低功耗32.768kHz外部晶振(LSE) 该时钟源提供了一个低功耗且精确的时间基准。(在典型情形下消耗小于1?A) ● 低功耗内部RC振荡器(LSI

我要回帖

更多关于 kds是啥意思 的文章

 

随机推荐