STM32F103的复位及时钟控制模块头文件
stm32f103c6t6a规格书
stm32f103c6t6a规格书STM32F103C6T6A是一款高性能的32位微控制器,具有强大的处理能力和丰富的外设接口,适用于各种应用场景。
本文将从芯片架构、主要特性、外设功能等方面对STM32F103C6T6A进行详细介绍。
一、芯片架构STM32F103C6T6A采用ARM Cortex-M3内核,工作频率高达72MHz,具有高性能和低功耗的特点。
它集成了片内存储器、时钟、复位电路、I/O接口等功能模块,可以满足各种复杂应用的需求。
二、主要特性1. 存储器:STM32F103C6T6A具有32KB的Flash存储器和6KB的SRAM,可用于存储程序代码和数据。
2. 时钟和复位:芯片内部集成了时钟电路和复位电路,可以提供稳定的时钟信号和复位功能。
3. I/O接口:芯片具有丰富的I/O接口,包括GPIO、USART、SPI、I2C等,方便与外部设备进行通信和控制。
4. 定时器:芯片内部集成了多个定时器,可以实现精确的定时和计数功能。
5. ADC和DAC:芯片具有12位的模数转换器和数字模拟转换器,可以实现模拟信号的采集和输出。
6. PWM输出:芯片支持多通道的PWM输出,可以用于控制电机、LED等设备。
输和处理。
8. 低功耗模式:芯片支持多种低功耗模式,可以实现节能的应用设计。
9. 安全性:芯片具有硬件加密和访问控制功能,可以保护系统的安全性。
三、外设功能1. GPIO:芯片具有多个通用输入输出引脚,可以连接外部设备,实现数据的输入和输出。
2. USART:芯片支持多个USART接口,可以实现串口通信功能。
3. SPI:芯片支持多个SPI接口,可以实现高速的串行外设之间的数据传输。
4. I2C:芯片支持多个I2C接口,可以实现器件之间的简单通信。
5. USB:芯片支持USB接口,可以实现与计算机之间的数据传输和通信。
6. ADC:芯片具有模数转换功能,可以实现模拟信号的采集和处理。
7. DAC:芯片具有数字模拟转换功能,可以实现数字信号的模拟输出。
stm32f103中文手册[9]
stm32f103中文手册一、概述stm32f103是一款基于ARM Cortex-M3内核的32位微控制器,具有高性能、低功耗和高集成度等特点。
它适用于各种工业控制、消费电子、医疗设备、通信和汽车应用等领域。
stm32f103的主要特性有:主频可达72MHz的ARM Cortex-M3内核,支持Thumb-2指令集和嵌套向量中断控制器(NVIC)64KB至128KB的闪存(Flash)和20KB的静态随机存储器(SRAM)7个定时器,包括3个16位通用定时器、1个16位高级定时器、2个基本定时器和1个系统滴答定时器2个12位模数转换器(ADC),每个ADC有16个通道,可达1Msps的采样率2个数字模拟转换器(DAC),每个DAC有1个通道,可达1Msps的转换率3个通用同步异步收发器(USART),支持同步和异步模式,以及智能卡、IrDA和调制解调器接口2个串行外设接口(SPI),支持全双工和单向模式,以及多主机和多从机模式2个I2C总线接口,支持标准模式(100Kbps)、快速模式(400Kbp s)和快速模式+(1Mbps)1个USB 2.0全速设备接口,支持12Mbps的数据传输率1个CAN总线接口,支持标准帧和扩展帧格式,以及时间触发通信模式37到51个通用输入输出端口(GPIO),可配置为推挽或开漏输出,上拉或下拉输入,或者复用为其他外设功能7到12个外部中断线,可配置为上升沿、下降沿或双边沿触发3个电源管理模式,包括运行模式、睡眠模式和停止模式内部8MHz的高速内部振荡器(HSI),可作为系统时钟或PLL时钟的输入源外部4至16MHz的高速外部振荡器(HSE),可作为系统时钟或PLL 时钟的输入源内部40kHz的低速内部振荡器(LSI),可作为看门狗定时器或自动唤醒单元的时钟源外部32.768kHz的低速外部振荡器(LSE),可作为实时时钟或校准HSI的时钟源可编程电压检测器(PVD),可监测电源电压是否低于设定阈值,并产生中断或复位信号可选的温度传感器,可测量芯片内部温度,并通过ADC读取可选的备份域,包括4KB的备份SRAM和20个备份寄存器,可在断电后保持数据调试功能,包括串行线调试(SWD)接口和串行线观察(SWO)输出stm32f103有多种封装形式和引脚数目,如LQFP48、LQFP64、LQFP 100等。
STM32f103寄存器说明
CRC寄存器(一种算法,用以确认发送过程中是否出错)数据寄存器:CRC_DR可读写,复位值:0xFFFF FFFF;独立数据寄存器:CRC_IDR临时存放任何8位数据;控制寄存器:CRC_CR只零位可用,用于复位CRC,对其写1复位,由硬件清零;PWR电源控制(控制和管理电源)电源控制寄存器:PWR_CR控制选择系统的电源电源控制/状态寄存器:PWR_CSR睡眠或待机模式电源控制BKP备份寄存器(用以控制和管理备份数据)备份数据寄存器x:BKP_DRx (x = 1 … 10) 10个16位数据寄存器用以存储用户数据RTC时钟校准寄存器:BKP_RTCCR控制实时时钟的运行备份控制寄存器:BKP_CR控制选择清除备份数据的类型备份控制/状态寄存器:BKP_CSR对侵入事件的控制RCC寄存器(时钟的选择、复位、分频)时钟控制寄存器(RCC_CR)各时钟状态显示时钟配置寄存器(RCC_CFGR)时钟分频时钟中断寄存器(RCC_CIR)控制就绪中断使能与否APB2外设复位寄存器(RCC_APB2RSTR) APB1外设复位寄存器(RCC_APB1RSTR) 复位APB各功能寄存器AHB外设时钟使能寄存器(RCC_AHBENR) AHB时钟使能控制APB2外设时钟使能寄存器(RCC_APB2ENR) APB1外设时钟使能寄存器(RCC_APB1ENR) APB1时钟使能控制备份域控制寄存器(RCC_BDCR)备份域时钟控制控制/状态寄存器(RCC_CSR)复位标志寄存器AHB外设时钟复位寄存器(RCC_AHBRSTR) 复位以太网MAC模块时钟配置寄存器2(RCC_CFGR2)时钟选择与分频GPIO寄存器(设置端口的功能)端口配置低寄存器(GPIOx_CRL) (x=A..E)端口配置高寄存器(GPIOx_CRH) (x=A..E)端口输入数据寄存器(GPIOx_IDR) (x=A..E)只读数据,读出IO口的状态端口输出数据寄存器(GPIOx_ODR) (x=A..E) 可读可写端口位设置/清除寄存器(GPIOx_BSRR) (x=A..E)端口位清除寄存器(GPIOx_BRR) (x=A..E)将某一端口清零端口配置锁定寄存器(GPIOx_LCKR) (x=A..E) 用于保护端口配值AFIO寄存器(将端口重映射到其它端口用以端口的第二功能)事件控制寄存器(AFIO_EVCR)选择时间输出端口与引脚复用重映射和调试I/O配置寄存器(AFIO_MAPR) 各寄存器功能引脚重映射选择外部中断配置寄存器1(AFIO_EXTICR1)外部中断配置寄存器2(AFIO_EXTICR2)外部中断配置寄存器3(AFIO_EXTICR3) 外部中断配置寄存器4(AFIO_EXTICR4) 外部中断引脚重映射选择EXTI 寄存器(外部中断控制器)中断屏蔽寄存器(EXTI_IMR)用于屏蔽或开放某一引脚的中断请求事件屏蔽寄存器(EXTI_EMR)用于屏蔽或开放某一引脚的事件上升沿触发选择寄存器(EXTI_RTSR) 禁止或允许某一引脚的上升沿触发下降沿触发选择寄存器(EXTI_FTSR) 禁止或允许某一引脚的下降沿触发软件中断事件寄存器(EXTI_SWIER) 控制某引脚的软件中断挂起寄存器(EXTI_PR)显示某线的引脚有无触发请求DMA寄存器(脱离cpu的传输模式)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)设置存储器地址ADC寄存器(模数转换器)ADC状态寄存器(ADC_SR)AD转换标志寄存器ADC控制寄存器1(ADC_CR1)ADC控制寄存器2(ADC_CR2)设置AD转换的各种功能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注入序列寄存器(ADC_JSQR)ADC 注入数据寄存器x (ADC_JDRx) (x= 1..4)ADC数据结果寄存器ADC规则数据寄存器(ADC_DR)DAC寄存器(数模转换器)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)TIM1和TIM8寄存器(高级的定时计数寄存器)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)TIMx寄存器(控制定时器)控制寄存器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)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)RTC寄存器(实时时钟)RTC控制寄存器高位(RTC_CRH)RTC控制寄存器低位(RTC_CRL)16.4.3 RTC预分频装载寄存器(RTC_PRLH/RTC_PRLL) 16.4.4 RTC预分频器余数寄存器(RTC_DIVH / RTC_DIVL)RTC计数器寄存器(RTC_CNTH / RTC_CNTL) 16.4.6 RTC闹钟寄存器(RTC_ALRH/RTC_ALRL)IWDG寄存器(独立看门狗,用以监督系统硬件的正常运行)键寄存器(IWDG_KR)预分频寄存器(IWDG_PR)重装载寄存器(IWDG_RLR)状态寄存器(IWDG_SR)窗口看门狗(WWDG)寄存器(用以监督软件的正常运行)控制寄存器(WWDG_CR)配置寄存器(WWDG_CFR)状态寄存器(WWDG_SR)FSMC寄存器(可变静态存储控制器)NOR闪存和PSRAM控制器寄存器SRAM/NOR闪存片选控制寄存器1…4 (FSMC_BCR1…4)SRAM/NOR闪存片选时序寄存器1…4 (FSMC_BTR1…4) SRAM/NOR闪存写时序寄存器1…4 (FSMC_BWTR1…4)NAND闪存和PC卡控制器寄存器PC卡/NAND闪存控制寄存器2..4 (FSMC_PCR2..4) FIFO状态和中断寄存器2..4 (FSMC_SR2..4)通用存储空间时序寄存器 2..4 (FSMC_PMEM2..4)属性存储空间时序寄存器 2..4 (FSMC_PATT2..4)I/O空间时序寄存器4 (FSMC_PIO4)ECC结果寄存器2/3 (FSMC_ECCR2/3)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)USB寄存器(usb传输控制器)通用寄存器USB控制寄存器(USB_CNTR)USB中断状态寄存器(USB_ISTR)USB帧编号寄存器(USB_FNR)USB设备地址寄存器(USB_DADDR)USB分组缓冲区描述表地址寄存器(USB_BTABLE)端点寄存器USB 端点n寄存器(USB_EPnR), n=[0..7]缓冲区寄存器发送缓冲区地址寄存器n(USB_ADDRn_TX)发送数据字节数寄存器n(USB_COUNTn_TX)接收缓冲区地址寄存器n(USB_ADDRn_RX)接收数据字节数寄存器n(USB_COUNTn_RX)CAN 寄存器(邮箱控制寄存器)CAN控制和状态寄存器CAN主控制寄存器(CAN_MCR)CAN主状态寄存器(CAN_MSR)CAN发送状态寄存器(CAN_TSR)CAN接收FIFO 0寄存器(CAN_RF0R)CAN接收FIFO 1寄存器(CAN_RF1R)CAN中断使能寄存器(CAN_IER)CAN错误状态寄存器(CAN_ESR)CAN位时序寄存器(CAN_BTR)CAN邮箱寄存器发送邮箱标识符寄存器(CAN_TIxR) (x=0..2)发送邮箱数据长度和时间戳寄存器(CAN_TDTxR) (x=0..2)发送邮箱低字节数据寄存器(CAN_TDLxR) (x=0..2)发送邮箱高字节数据寄存器(CAN_TDHxR) (x=0..2)接收FIFO邮箱标识符寄存器(CAN_RIxR) (x=0..1)接收FIFO邮箱数据长度和时间戳寄存器(CAN_RDTxR) (x=0..1)接收FIFO邮箱低字节数据寄存器(CAN_RDLxR) (x=0..1)接收FIFO邮箱高字节数据寄存器(CAN_RDHxR) (x=0..1)CAN过滤器寄存器CAN 过滤器主控寄存器(CAN_FMR)CAN 过滤器模式寄存器(CAN_FM1R)CAN 过滤器位宽寄存器(CAN_FS1R)CAN 过滤器FIFO关联寄存器(CAN_FFA1R)CAN 过滤器激活寄存器(CAN_FA1R)CAN 过滤器组i的寄存器x (CAN_FiRx) (互联产品中i=0..27,其它产品中i=0..13;x=1..2)SPI和I2S寄存器(串行外设接口控制器)SPI控制寄存器1(SPI_CR1)SPI控制寄存器2(SPI_CR2)SPI 状态寄存器(SPI_SR)SPI 数据寄存器(SPI_DR)SPI CRC多项式寄存器(SPI_CRCPR)SPI Rx CRC寄存器(SPI_RXCRCR)SPI Tx CRC寄存器(SPI_TXCRCR)SPI_I2S配置寄存器(SPI_I2S_CFGR)SPI_I2S预分频寄存器(SPI_I2SPR)I2C寄存器(数据传输寄存器)控制寄存器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)USART寄存器(通用同步异步收发器)状态寄存器(USART_SR)数据寄存器(USART_DR)波特比率寄存器(USART_BRR)控制寄存器1(USART_CR1)控制寄存器2(USART_CR2)控制寄存器3(USART_CR3)保护时间和预分频寄存器(USART_GTPR)OTG_FS控制和状态寄存器(数据传输控制器)OTG_FS全局寄存器OTG_FS控制和状态寄存器(OTG_FS_GOTGCTL)OTG_FS中断寄存器(OTG_FS_GOTGINT)OTG_FS AHB配置寄存器(OTG_FS_GAHBCFG)OTG_FS_USB配置寄存器(OTG_FS_GUSBCFG)OTG_FS复位寄存器(OTG_FS_GRSTCTL)OTG_FS控制器中断寄存器(OTG_FS_GINTSTS)OTG_FS中断屏蔽寄存器(OTG_FS_GINTMSK)OTG_FS接收状态调试读/OTG状态读和POP寄存器(OTG_FS_GRXSTSR / OTG_FS_GRXSTSP)OTG_FS接收FIFO长度寄存器(OTG_FS_GRXFSIZ)OTG_FS非周期性TX FIFO长度寄存器(OTG_FS_GNPTXFSIZ)OTG_FS非周期性TX FIFO/请求队列状态寄存器(OTG_FS_GNPTXSTS)OTG_FS通用控制器配置寄存器(OTG_FS_GCCFG)OTG_FS控制器ID寄存器(OTG_FS_CID)OTG_FS主机周期性发送FIFO长度寄存器(OTG_FS_HPTXFSIZ)OTG_FS设备IN端点发送FIFO长度寄存器(OTG_FS_DIEPTXFx)(其中x是FIFO的编号,x=1…4)主机模式下的寄存器OTG_FS主机模式配置寄存器(OTG_FS_HCFG)OTG_FS主机帧间隔寄存器(OTG_FS_HFIR)OTG_FS主机帧号/帧时间剩余寄存器(OTG_FS_HFNUM)OTG_FS主机周期性发送FIFO/请求队列寄存器(OTG_FS_HPTXSTS)OTG_FS主机所有通道中断寄存器(OTG_FS_HAINT)OTG_FS主机所有通道中断屏蔽寄存器(OTG_FS_HAINTMSK)OTG_FS主机端口控制和状态寄存器(OTG_FS_HPRT)OTG_FS主机通道x特性寄存器(OTG_FS_HCCHARx)(此处x代码通道号,x = 0...7)OTG_FS主机通道x中断寄存器(OTG_FS_HCINTx)(其中x代表通道号,x=0...7,)OTG_FS主机通道x中断屏蔽寄存器(OTG_FS_HCINTMSKx)(其中x为通道号,x=0...7) OTG_FS主机通道x传输长度寄存器(OTG_FS_HCTSIZx)(其中x为通道号,x=0...7)设备模式下的寄存器OTG_FS设备配置寄存器(OTG_FS_DCFG)OTG_FS设备控制寄存器(OTG_FS_DCTL)OTG_FS设备状态寄存器(OTG_FS_DSTS)OTG_FS设备IN端点通用中断屏蔽寄存器(OTG_FS_DIEPMSK)OTG_FS设备OUT端点通用中断屏蔽寄存器(OTG_FS_DOEPMSK)OTG_FS设备所有端点中断寄存器(OTG_FS_DAINT)OTG_FS所有端点中断屏蔽寄存器(OTG_FS_DAINTMSK)OTG_FS设备V BUS放电时间寄存器(OTG_FS_DVBUSDIS)OTG_FS设备V BUS脉冲时间寄存器(OTG_FS_DVBUSPULSE)OTG_FS设备IN端点FIFO空中断屏蔽寄存器(OTG_FS_DIEPEMPMSK)OTG_FS设备控制IN端点0控制寄存器(OTG_FS_DIEPCTL0)OTG设备端点x控制寄存器(OTG_FS_DIEPCTLx)(其中x为端点号,x=1…3)OTG_FS设备控制OUT端点0控制寄存器(OTG_FS_DOEPCTL0)OTG_FS设备OUT端点x控制寄存器(OTG_FS_DOEPCTLx)(其中x为端点号,x=1…3) OTG_FS设备端点x中断寄存器(OTG_FS_DIEPINTx)(其中x为端点号,x=0…3)OTG_FS设备端点x中断寄存器(OTG_FS_DOEPINTx)(其中x为端点号,x=0…3)OTG_FS设备IN端点0传输长度寄存器(OTG_FS_DIEPTSIZ0)OTG_FS设备OUT端点0传输长度寄存器(OTG_FS_DOEPTSIZ0)OTG_FS设备端点x传输长度寄存器(OTG_FS_DIEPTSIZx)(其中x为端点号,x=1…3) OTG_FS设备IN端点传输FIFO状态寄存器(OTG-FS_DTXFSTSx)(其中x为端点号,x=0…3)OTG_FS设备端点x传输长度寄存器(OTG_FS_DOEPTSIZx)(其中x为端点号,x=1…3) OTG_FS电源和时钟门控寄存器(OTG_FS_PCGCCTL)以太网寄存器(通信传输控制器)MAC寄存器以太网MAC设置寄存器(ETH_MACCR)以太网MAC帧过滤器寄存器(ETH_MACFFR)以太网MAC Hash列表高寄存器(ETH_MACHTHR)以太网MAC Hash列表低寄存器(ETH_MACHTLR)以太网MAC MII地址寄存器(ETH_MACMIIAR)以太网MAC MII数据寄存器(ETH_MACMIIDR)以太网MAC流控寄存器(ETH_MACFCR)以太网MAC VLAN标签寄存器(ETH_MACVLANTR)以太网MAC远程唤醒帧过滤器寄存器(ETH_MACRWUFFR)以太网MAC PMT控制和状态寄存器(ETH_MACPMTCSR)以太网MAC中断状态寄存器(ETH_MACSR)以太网MAC中断屏蔽寄存器(ETH_MAIMR)以太网MAC地址0高寄存器(ETH_MACA0HR)以太网MAC地址0低寄存器(ETH_MACA0LR)以太网MAC地址1高寄存器(ETH_MACA1HR)以太网MAC地址1低寄存器(ETH_MACA1LR)以太网MAC地址2高寄存器(ETH_MACA2HR)以太网MAC地址2低寄存器(ETH_MACA2LR)以太网MAC地址3高寄存器(ETH_MACA3HR)以太网MAC地址3低寄存器(ETH_MACA3LR)MMC寄存器以太网MMC控制寄存器(ETH_MMCCR)以太网MMC接收中断寄存器(ETH_MMCRIR)以太网MMC发送中断寄存器(ETH_MMCTIR)以太网MMC接收中断屏蔽寄存器(ETH_MMCRIMR)以太网MMC发送中断屏蔽寄存器(ETH_MMCTIMR)以太网MMC1次冲突后发送”好”帧的计数器寄存器(ETH_MMCTGFSCCR)以太网MMC1次以上冲突后发送”好”帧的计数器寄存器(ETH_MMCTGFMSCCR)以太网MMC发送”好”帧的计数器寄存器(ETH_MMCTGFCR)以太网MMC CRC错误接收帧计数器寄存器(ETH_ MMCRFCECR)以太网MMC对齐错误接收帧计数器寄存器(ETH_ MMCRFAECR)以太网MMC接收帧”好”单播帧计数器寄存器(ETH_ MMCRGUFCR)27.8.3。
stm32f103中文手册[13]
stm32f103中文手册一、概述高性能的ARM 32位Cortex-M3CPU,主频可达72MHz,具有单周期乘法和硬件除法指令,支持嵌套向量中断控制器(NVIC)和嵌入式跟踪宏单元(ETM)。
高密度的存储器资源,包括64KB至512KB的闪存,20KB至64KB的SR AM,以及可选的2KB的备份SRAM。
丰富的外设资源,包括12个通用定时器,2个高级定时器,3个同步串行接口(SPI),2个I2C接口,5个USART接口,1个USB全速设备接口,1个CAN接口,2个DAC转换器,2个12位ADC转换器,以及多达80个G PIO引脚。
灵活的时钟控制系统,支持4种内部时钟源和4种外部时钟源,以及多种预分频器和倍频器。
低功耗模式,包括睡眠模式、停止模式和待机模式,以及电压监测和温度传感器功能。
先进的调试和编程功能,支持JTAG和SWD接口,以及串行线调试(SWV)和串行线跟踪(SWO)功能。
二、引脚定义stm32f103的引脚定义如下图所示:![stm32f103引脚图](^4^)其中:VDDA和VSSA分别为模拟电源正负极。
VDD和VSS分别为数字电源正负极。
NRST为复位引脚。
BOOT0和BOOT1为启动模式选择引脚。
PA0至PA15为端口A的16个GPIO引脚。
PB0至PB15为端口B的16个GPIO引脚。
PC0至PC15为端口C的16个GPIO引脚。
PD0至PD15为端口D的16个GPIO引脚(仅144引脚封装有)。
PE0至PE15为端口E的16个GPIO引脚(仅144引脚封装有)。
OSC_IN和OSC_OUT为外部晶振输入输出引脚。
JTMS/SWDIO、JTCK/SWCLK、JTDI、JTDO/TRACESWO、JNTRST分别为JTAG/SWD接口的5个信号线。
PB6/PB7/PB8/PB9/PB10/PB11分别可作为I2C1/I2C2接口的SCL/SDA 信号线。
PA4/PA5/PA6/PA7/PB12/PB13/PB14/PB15分别可作为SPI1/SPI2接口的NSS/SCK/MISO/MOSI信号线。
STM32f103寄存器说明书
CRC寄存器(一种算法,用以确认发送过程中是否出错)数据寄存器:CRC_DR可读写,复位值:0xFFFF FFFF;独立数据寄存器:CRC_IDR临时存放任何8位数据;控制寄存器:CRC_CR只零位可用,用于复位CRC,对其写1复位,由硬件清零;PWR电源控制(控制和管理电源)电源控制寄存器:PWR_CR控制选择系统的电源电源控制/状态寄存器:PWR_CSR睡眠或待机模式电源控制BKP备份寄存器(用以控制和管理备份数据)备份数据寄存器x:BKP_DRx (x = 1 … 10) 10个16位数据寄存器用以存储用户数据RTC时钟校准寄存器:BKP_RTCCR控制实时时钟的运行备份控制寄存器:BKP_CR控制选择清除备份数据的类型备份控制/状态寄存器:BKP_CSR对侵入事件的控制RCC寄存器(时钟的选择、复位、分频)时钟控制寄存器(RCC_CR)各时钟状态显示时钟配置寄存器(RCC_CFGR)时钟分频时钟中断寄存器(RCC_CIR)控制就绪中断使能与否APB2外设复位寄存器(RCC_APB2RSTR) APB1外设复位寄存器(RCC_APB1RSTR) 复位APB各功能寄存器AHB外设时钟使能寄存器(RCC_AHBENR) AHB时钟使能控制APB2外设时钟使能寄存器(RCC_APB2ENR) APB1外设时钟使能寄存器(RCC_APB1ENR) APB1时钟使能控制备份域控制寄存器(RCC_BDCR)备份域时钟控制控制/状态寄存器(RCC_CSR)复位标志寄存器AHB外设时钟复位寄存器(RCC_AHBRSTR) 复位以太网MAC模块时钟配置寄存器2(RCC_CFGR2)时钟选择与分频GPIO寄存器(设置端口的功能)端口配置低寄存器(GPIOx_CRL) (x=A..E)端口配置高寄存器(GPIOx_CRH) (x=A..E)端口输入数据寄存器(GPIOx_IDR) (x=A..E)只读数据,读出IO口的状态端口输出数据寄存器(GPIOx_ODR) (x=A..E) 可读可写端口位设置/清除寄存器(GPIOx_BSRR) (x=A..E)端口位清除寄存器(GPIOx_BRR) (x=A..E)将某一端口清零端口配置锁定寄存器(GPIOx_LCKR) (x=A..E) 用于保护端口配值AFIO寄存器(将端口重映射到其它端口用以端口的第二功能)事件控制寄存器(AFIO_EVCR)选择时间输出端口与引脚复用重映射和调试I/O配置寄存器(AFIO_MAPR) 各寄存器功能引脚重映射选择外部中断配置寄存器1(AFIO_EXTICR1)外部中断配置寄存器2(AFIO_EXTICR2)外部中断配置寄存器3(AFIO_EXTICR3) 外部中断配置寄存器4(AFIO_EXTICR4) 外部中断引脚重映射选择EXTI 寄存器(外部中断控制器)中断屏蔽寄存器(EXTI_IMR)用于屏蔽或开放某一引脚的中断请求事件屏蔽寄存器(EXTI_EMR)用于屏蔽或开放某一引脚的事件上升沿触发选择寄存器(EXTI_RTSR) 禁止或允许某一引脚的上升沿触发下降沿触发选择寄存器(EXTI_FTSR) 禁止或允许某一引脚的下降沿触发软件中断事件寄存器(EXTI_SWIER) 控制某引脚的软件中断挂起寄存器(EXTI_PR)显示某线的引脚有无触发请求DMA寄存器(脱离cpu的传输模式)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)设置存储器地址ADC寄存器(模数转换器)ADC状态寄存器(ADC_SR)AD转换标志寄存器ADC控制寄存器1(ADC_CR1)ADC控制寄存器2(ADC_CR2)设置AD转换的各种功能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注入序列寄存器(ADC_JSQR)ADC 注入数据寄存器x (ADC_JDRx) (x= 1..4)ADC数据结果寄存器ADC规则数据寄存器(ADC_DR)DAC寄存器(数模转换器)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)TIM1和TIM8寄存器(高级的定时计数寄存器)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)TIMx寄存器(控制定时器)控制寄存器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)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)RTC寄存器(实时时钟)RTC控制寄存器高位(RTC_CRH)RTC控制寄存器低位(RTC_CRL)16.4.3 RTC预分频装载寄存器(RTC_PRLH/RTC_PRLL) 16.4.4 RTC预分频器余数寄存器(RTC_DIVH / RTC_DIVL)RTC计数器寄存器(RTC_CNTH / RTC_CNTL) 16.4.6 RTC闹钟寄存器(RTC_ALRH/RTC_ALRL)IWDG寄存器(独立看门狗,用以监督系统硬件的正常运行)键寄存器(IWDG_KR)预分频寄存器(IWDG_PR)重装载寄存器(IWDG_RLR)状态寄存器(IWDG_SR)窗口看门狗(WWDG)寄存器(用以监督软件的正常运行)控制寄存器(WWDG_CR)配置寄存器(WWDG_CFR)状态寄存器(WWDG_SR)FSMC寄存器(可变静态存储控制器)NOR闪存和PSRAM控制器寄存器SRAM/NOR闪存片选控制寄存器1…4 (FSMC_BCR1…4)SRAM/NOR闪存片选时序寄存器1…4 (FSMC_BTR1…4) SRAM/NOR闪存写时序寄存器1…4 (FSMC_BWTR1…4)NAND闪存和PC卡控制器寄存器PC卡/NAND闪存控制寄存器2..4 (FSMC_PCR2..4) FIFO状态和中断寄存器2..4 (FSMC_SR2..4)通用存储空间时序寄存器 2..4 (FSMC_PMEM2..4)属性存储空间时序寄存器 2..4 (FSMC_PATT2..4)I/O空间时序寄存器4 (FSMC_PIO4)ECC结果寄存器2/3 (FSMC_ECCR2/3)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)USB寄存器(usb传输控制器)通用寄存器USB控制寄存器(USB_CNTR)USB中断状态寄存器(USB_ISTR)USB帧编号寄存器(USB_FNR)USB设备地址寄存器(USB_DADDR)USB分组缓冲区描述表地址寄存器(USB_BTABLE)端点寄存器USB 端点n寄存器(USB_EPnR), n=[0..7]缓冲区寄存器发送缓冲区地址寄存器n(USB_ADDRn_TX)发送数据字节数寄存器n(USB_COUNTn_TX)接收缓冲区地址寄存器n(USB_ADDRn_RX)接收数据字节数寄存器n(USB_COUNTn_RX)CAN 寄存器(控制寄存器)CAN控制和状态寄存器CAN主控制寄存器(CAN_MCR)CAN主状态寄存器(CAN_MSR)CAN发送状态寄存器(CAN_TSR)CAN接收FIFO 0寄存器(CAN_RF0R)CAN接收FIFO 1寄存器(CAN_RF1R)CAN中断使能寄存器(CAN_IER)CAN错误状态寄存器(CAN_ESR)CAN位时序寄存器(CAN_BTR)CAN寄存器发送标识符寄存器(CAN_TIxR) (x=0..2)发送数据长度和时间戳寄存器(CAN_TDTxR) (x=0..2)发送低字节数据寄存器(CAN_TDLxR) (x=0..2)发送高字节数据寄存器(CAN_TDHxR) (x=0..2)接收FIFO标识符寄存器(CAN_RIxR) (x=0..1)接收FIFO数据长度和时间戳寄存器(CAN_RDTxR) (x=0..1)接收FIFO低字节数据寄存器(CAN_RDLxR) (x=0..1)接收FIFO高字节数据寄存器(CAN_RDHxR) (x=0..1)CAN过滤器寄存器CAN 过滤器主控寄存器(CAN_FMR)CAN 过滤器模式寄存器(CAN_FM1R)CAN 过滤器位宽寄存器(CAN_FS1R)CAN 过滤器FIFO关联寄存器(CAN_FFA1R)CAN 过滤器激活寄存器(CAN_FA1R)CAN 过滤器组i的寄存器x (CAN_FiRx) (互联产品中i=0..27,其它产品中i=0..13;x=1..2)SPI和I2S寄存器(串行外设接口控制器)SPI控制寄存器1(SPI_CR1)SPI控制寄存器2(SPI_CR2)SPI 状态寄存器(SPI_SR)SPI 数据寄存器(SPI_DR)SPI CRC多项式寄存器(SPI_CRCPR)SPI Rx CRC寄存器(SPI_RXCRCR)SPI Tx CRC寄存器(SPI_TXCRCR)SPI_I2S配置寄存器(SPI_I2S_CFGR)SPI_I2S预分频寄存器(SPI_I2SPR)I2C寄存器(数据传输寄存器)控制寄存器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)USART寄存器(通用同步异步收发器)状态寄存器(USART_SR)数据寄存器(USART_DR)波特比率寄存器(USART_BRR)控制寄存器1(USART_CR1)控制寄存器2(USART_CR2)控制寄存器3(USART_CR3)保护时间和预分频寄存器(USART_GTPR)OTG_FS控制和状态寄存器(数据传输控制器)OTG_FS全局寄存器OTG_FS控制和状态寄存器(OTG_FS_GOTGCTL)OTG_FS中断寄存器(OTG_FS_GOTGINT)OTG_FS AHB配置寄存器(OTG_FS_GAHBCFG)OTG_FS_USB配置寄存器(OTG_FS_GUSBCFG)OTG_FS复位寄存器(OTG_FS_GRSTCTL)OTG_FS控制器中断寄存器(OTG_FS_GINTSTS)OTG_FS中断屏蔽寄存器(OTG_FS_GINTMSK)OTG_FS接收状态调试读/OTG状态读和POP寄存器(OTG_FS_GRXSTSR / OTG_FS_GRXSTSP)OTG_FS接收FIFO长度寄存器(OTG_FS_GRXFSIZ)OTG_FS非周期性TX FIFO长度寄存器(OTG_FS_GNPTXFSIZ)OTG_FS非周期性TX FIFO/请求队列状态寄存器(OTG_FS_GNPTXSTS)OTG_FS通用控制器配置寄存器(OTG_FS_GCCFG)OTG_FS控制器ID寄存器(OTG_FS_CID)OTG_FS主机周期性发送FIFO长度寄存器(OTG_FS_HPTXFSIZ)OTG_FS设备IN端点发送FIFO长度寄存器(OTG_FS_DIEPTXFx)(其中x是FIFO的编号,x=1…4)主机模式下的寄存器OTG_FS主机模式配置寄存器(OTG_FS_HCFG)OTG_FS主机帧间隔寄存器(OTG_FS_HFIR)OTG_FS主机帧号/帧时间剩余寄存器(OTG_FS_HFNUM)OTG_FS主机周期性发送FIFO/请求队列寄存器(OTG_FS_HPTXSTS)OTG_FS主机所有通道中断寄存器(OTG_FS_HAINT)OTG_FS主机所有通道中断屏蔽寄存器(OTG_FS_HAINTMSK)OTG_FS主机端口控制和状态寄存器(OTG_FS_HPRT)OTG_FS主机通道x特性寄存器(OTG_FS_HCCHARx)(此处x代码通道号,x = 0...7)OTG_FS主机通道x中断寄存器(OTG_FS_HCINTx)(其中x代表通道号,x=0...7,)OTG_FS主机通道x中断屏蔽寄存器(OTG_FS_HCINTMSKx)(其中x为通道号,x=0...7) OTG_FS主机通道x传输长度寄存器(OTG_FS_HCTSIZx)(其中x为通道号,x=0...7)设备模式下的寄存器OTG_FS设备配置寄存器(OTG_FS_DCFG)OTG_FS设备控制寄存器(OTG_FS_DCTL)OTG_FS设备状态寄存器(OTG_FS_DSTS)OTG_FS设备IN端点通用中断屏蔽寄存器(OTG_FS_DIEPMSK)OTG_FS设备OUT端点通用中断屏蔽寄存器(OTG_FS_DOEPMSK)OTG_FS设备所有端点中断寄存器(OTG_FS_DAINT)OTG_FS所有端点中断屏蔽寄存器(OTG_FS_DAINTMSK)OTG_FS设备V BUS放电时间寄存器(OTG_FS_DVBUSDIS)OTG_FS设备V BUS脉冲时间寄存器(OTG_FS_DVBUSPULSE)OTG_FS设备IN端点FIFO空中断屏蔽寄存器(OTG_FS_DIEPEMPMSK)OTG_FS设备控制IN端点0控制寄存器(OTG_FS_DIEPCTL0)OTG设备端点x控制寄存器(OTG_FS_DIEPCTLx)(其中x为端点号,x=1…3)OTG_FS设备控制OUT端点0控制寄存器(OTG_FS_DOEPCTL0)OTG_FS设备OUT端点x控制寄存器(OTG_FS_DOEPCTLx)(其中x为端点号,x=1…3) OTG_FS设备端点x中断寄存器(OTG_FS_DIEPINTx)(其中x为端点号,x=0…3)OTG_FS设备端点x中断寄存器(OTG_FS_DOEPINTx)(其中x为端点号,x=0…3)OTG_FS设备IN端点0传输长度寄存器(OTG_FS_DIEPTSIZ0)OTG_FS设备OUT端点0传输长度寄存器(OTG_FS_DOEPTSIZ0)OTG_FS设备端点x传输长度寄存器(OTG_FS_DIEPTSIZx)(其中x为端点号,x=1…3) OTG_FS设备IN端点传输FIFO状态寄存器(OTG-FS_DTXFSTSx)(其中x为端点号,x=0…3)OTG_FS设备端点x传输长度寄存器(OTG_FS_DOEPTSIZx)(其中x为端点号,x=1…3) OTG_FS电源和时钟门控寄存器(OTG_FS_PCGCCTL)以太网寄存器(通信传输控制器)MAC寄存器以太网MAC设置寄存器(ETH_MACCR)以太网MAC帧过滤器寄存器(ETH_MACFFR)以太网MAC Hash列表高寄存器(ETH_MACHTHR)以太网MAC Hash列表低寄存器(ETH_MACHTLR)以太网MAC MII地址寄存器(ETH_MACMIIAR)以太网MAC MII数据寄存器(ETH_MACMIIDR)以太网MAC流控寄存器(ETH_MACFCR)以太网MAC VLAN标签寄存器(ETH_MACVLANTR)以太网MAC远程唤醒帧过滤器寄存器(ETH_MACRWUFFR)以太网MAC PMT控制和状态寄存器(ETH_MACPMTCSR)以太网MAC中断状态寄存器(ETH_MACSR)以太网MAC中断屏蔽寄存器(ETH_MAIMR)以太网MAC地址0高寄存器(ETH_MACA0HR)以太网MAC地址0低寄存器(ETH_MACA0LR)以太网MAC地址1高寄存器(ETH_MACA1HR)以太网MAC地址1低寄存器(ETH_MACA1LR)以太网MAC地址2高寄存器(ETH_MACA2HR)以太网MAC地址2低寄存器(ETH_MACA2LR)以太网MAC地址3高寄存器(ETH_MACA3HR)以太网MAC地址3低寄存器(ETH_MACA3LR)MMC寄存器以太网MMC控制寄存器(ETH_MMCCR)以太网MMC接收中断寄存器(ETH_MMCRIR)以太网MMC发送中断寄存器(ETH_MMCTIR)以太网MMC接收中断屏蔽寄存器(ETH_MMCRIMR)以太网MMC发送中断屏蔽寄存器(ETH_MMCTIMR)以太网MMC1次冲突后发送”好”帧的计数器寄存器(ETH_MMCTGFSCCR)以太网MMC1次以上冲突后发送”好”帧的计数器寄存器(ETH_MMCTGFMSCCR)以太网MMC发送”好”帧的计数器寄存器(ETH_MMCTGFCR)以太网MMC CRC错误接收帧计数器寄存器(ETH_ MMCRFCECR)以太网MMC对齐错误接收帧计数器寄存器(ETH_ MMCRFAECR)以太网MMC接收帧”好”单播帧计数器寄存器(ETH_ MMCRGUFCR)27.8.3。
STM32学习笔记-STM32F103ZET6
STM32F103 系列芯片的系统架构:系统结构:在每一次复位以后,所有除SRAM 和FLITF 以外的外设都被关闭,在使用一个外设之前,必须设置寄存器RCC_AHBENR 来打开该外设的时钟。
GPIO 输入输出,外部中断,定时器,串口。
理解了这四个外设,基本就入门了一款MCU。
时钟控制RCC:-4~16M 的外部高速晶振-内部8MHz 的高速RC 振荡器-内部40KHz低速RC 振荡器,看门狗时钟-内部锁相环(PLL,倍频),一般系统时钟都是外部或者内部高速时钟经过PLL 倍频后得到- 外部低速32.768K 的晶振,主要做RTC 时钟源ARM存储器映像:数据字节以小端格式存放在存储器中。
一个字里的最低地址字节被认为是该字的最低有效字节,而最高地址字节是最高有效字节。
存储器映像与寄存器映射:ARM 存储器映像4GB0X0000 00000X1FFF FFFF0X2000 00000X3FFF FFFF0X4000 00000X5FFF FFFF寄存器名称相对外设基地址的偏移值编号位表读写权限寄存器位功能说明使用C语言封装寄存器:1、总线和外设基地址封装利用地址偏移(1)定义外设基地址(Block2 首地址)(2)定义APB2总线基地址(相对外设基地址偏移固定)(3)定义GPIOX外设基地址(相对APB2总线基地址偏移固定)(4)定义GPIOX寄存器地址(相对GPIOX外设基地址偏移固定)(5)使用 C 语言指针操作寄存器进行读/写//定义外设基地址#define PERIPH_BASE ((unsigned int)0x40000000) 1)//定义APB2 总线基地址#define APB2PERIPH_BASE (PERIPH_BASE + 0x00010000) 2)//定义GPIOC 外设基地址#define GPIOC_BASE (AHB1PERIPH_BASE + 0x0800) 3)//定义寄存器基地址这里以GPIOC 为例#define GPIOC_CRL *(unsigned int*)(GPIOC_BASE+0x00) 4)#define GPIOC_CRH *(unsigned int*)(GPIOC_BASE+0x04)#define GPIOC_IDR *(unsigned int*)(GPIOC_BASE+0x08)#define GPIOC_ODR *(unsigned int*)(GPIOC_BASE+0x0C)#define GPIOC_BSRR *(unsigned int*)(GPIOC_BASE+0x10)#define GPIOC_BRR *(unsigned int*)(GPIOC_BASE+0x14)#define GPIOC_LCKR *(unsigned int*)(GPIOC_BASE+0x18)//控制GPIOC 第0 管脚输出一个低电平5)GPIOC_BSRR = (0x01<<(16+0));//控制GPIOC 第0 管脚输出一个高电平GPIOC_BSRR = (0x01<<0);2、寄存器封装利用结构体、外设基地址和寄存器地址偏移typedef unsigned int uint32_t; /*无符号32 位变量*/typedef unsigned short int uint16_t; /*无符号16 位变量*//* GPIO 寄存器列表*/typedef struct{uint32_t CRL; /*GPIO 端口配置低寄存器地址偏移: 0x00 */uint32_t CRH; /*GPIO 端口配置高寄存器地址偏移: 0x04 */uint32_t IDR; /*GPIO 数据输入寄存器地址偏移: 0x08 */uint32_t ODR; /*GPIO 数据输出寄存器地址偏移: 0x0C */uint32_t BSRR; /*GPIO 位设置/清除寄存器地址偏移: 0x10 */uint32_t BRR; /*GPIO 端口位清除寄存器地址偏移: 0x14 */uint16_t LCKR; /*GPIO 端口配置锁定寄存器地址偏移: 0x18 */}GPIO_TypeDef;只要给结构体设置好首地址,就能把结构体内成员的地址确定下来,然后就能以结构体的形式访问寄存器。
stm32f103中文手册[1]
STM32F103中文手册概述32位ARM® Cortex®-M3内核,最高运行频率72 MHz从16 KB到1 MB的闪存,从6 KB到96 KB的SRAM从36到144个引脚的不同封装,支持LQFP、BGA、TFBGA、UFBGA和V FQFPN等从1.65 V到3.6 V的宽电源电压范围,支持低功耗模式和电池供电从-40°C到+105°C的工作温度范围多达11个通信接口,包括3个USART、2个UART、2个I2C、2个SPI、1个CAN和1个USB 2.0全速多达15个定时器,包括7个16位通用定时器、2个16位基本定时器、2个16位高级定时器、2个32位定时器和2个看门狗定时器多达3个12位模数转换器(ADC),每秒可采样1.2 M次两路12位数模转换器(DAC)多达80个外部中断/事件源多达112个GPIO端口,支持5 V耐压CRC计算单元,用于检测数据传输错误实时时钟(RTC),支持日历功能和闹钟功能嵌入式内存保护单元(MPU),用于增强应用程序安全性嵌入式调试支持,包括串行线调试(SWD)和JTAG接口7层DMA控制器,支持所有外设数据传输可选的双银行闪存模式,支持实时软件更新存储器映射STM32F103系列单片机的存储器映射如下图所示:![存储器映射]代码区:包括闪存和系统存储器。
闪存用于存储用户程序代码和数据。
系统存储器用于存储引导加载程序(bootloader)和设备标识符。
SRAM区:包括SRAM1和SRAM2。
SRAM1用于存储用户程序数据和堆栈。
SRAM2用于存储备份寄存器和备份域。
外设区:包括APB1外设、APB2外设和AHB外设。
APB1外设和APB2外设是通过两个高速总线矩阵连接到内核的低速外设。
AHB外设是通过一个高速总线矩阵连接到内核的高速外设。
外部设备区:包括FSMC区域、NOR/PSRAM区域和NAND/CF区域。
stm32f103中文手册[7]
stm32f103中文手册1. 概述stm32f103是一款高性能、低功耗、高集成度的32位微控制器,基于ARM Cortex-M3内核,支持Thumb-2指令集,具有72MHz的主频和64KB至512KB的闪存。
stm32f103具有丰富的外设资源,包括多种通信接口、定时器、模数转换器、DMA控制器、触摸感应控制器等,能够满足各种复杂的应用需求。
stm32f103还具有多种低功耗模式,能够实现动态电源管理,降低系统功耗。
stm32f1 03采用多种封装形式,适用于不同的应用场合。
2. 引脚定义stm32f103的引脚定义如图1所示。
stm32f103的引脚分为四类:电源引脚、复位引脚、晶振引脚和功能引脚。
电源引脚包括VDD、VSS、V DDA和VSSA,分别提供数字电源、数字地、模拟电源和模拟地。
复位引脚包括NRST和BOOT0,分别用于复位芯片和选择启动模式。
晶振引脚包括OSC_IN和OSC_OUT,分别连接外部晶振的输入和输出端。
功能引脚包括多达80个可编程的通用输入输出(GPIO)引脚,以及一些专用功能引脚,如JTAG/SWD调试接口、USB接口等。
![图1 stm32f103引脚定义](^4^)图1 stm32f103引脚定义3. 系统架构ARM Cortex-M3内核:是stm32f103的核心部分,负责执行程序指令,处理数据和中断等。
存储器:包括闪存(Flash)、静态随机存储器(SRAM)和备份寄存器(Backupregisters),分别用于存储程序代码、数据和备份数据等。
外设总线:包括总线矩阵(Bus matrix)、总线桥(Bus bridge)和外设总线(Peripheralbus),分别用于连接内核、存储器和外设等。
时钟和复位控制:包括时钟树(Clocktree)、复位控制器(Reset controller)和电源管理单元(Power managementunit),分别用于提供时钟信号、复位信号和电源管理等。
STM32F103_数据手册(中文)
参照2008年4月 STM32F103xCDE数据手册 英文第1.0版 (本译文仅供参考,如有翻译错误,请以英文原稿为准)
4/30
STM32F103xC, STM32F103xD, STM32F103xE数据手册
● 代码可以在除PC卡外的片外存储器运行; ● 目标频率为SYSCLK/2,即当系统时钟为72MHz时,外部访问的速度可达36MHz;
数据手册
STM32F103xC STM32F103xD
功能
STM32F103xE
增强型,32位基于ARM核心的带512K字节闪存的微控制器 USB、CAN、11个定时器、3个ADC 、13个RM 32位的Cortex™-M3 CPU − 最高72MHz工作频率, 1.25DMips/MHz(Dhrystone 2.1), 在存储器的0等待周期访问时 − 单周期乘法和硬件除法
STM32F103xC, STM32F103xD, STM32F103xE数据手册
1 介绍
本文给出了STM32F103xC、STM32F103xD和STM32F103xE增强型的订购信息和器件的机械特性。
有关闪存存储器的编程、擦除和保护等信息,请参考《STM32F10xxx闪存编程参考手册》。 有关Cortex-M3的信息,请参考《Cortex-M3技术参考手册》
嵌套的向量式中断控制器(NVIC) STM32F103xC、STM32F103xD和STM32F103xE增强型内置嵌套的向量式中断控制器,能够处
理多达60个可屏蔽中断通道(不包括16个Cortex™-M3的中断线)和16个优先级。 ● 紧耦合的NVIC能够达到低延迟的中断响应处理 ● 中断向量入口地址直接进入内核 ● 紧耦合的NVIC接口 ● 允许中断的早期处理 ● 处理晚到的较高优先级中断 ● 支持中断尾部链接功能 ● 自动保存处理器状态 ● 中断返回时自动恢复,无需额外指令开销 该模块以最小的中断延迟提供灵活的中断管理功能。
STM32电源、时钟及 复位电路
串行调试接口(SW-DP)为AHP-AP模块提供2针(时钟+数 据)接口。
SWJ调试端口脚表
JTAG连接实现图
启动配置
3.5调试接口
调试接口
硬件调试工具 JTAG或SWD连接器 调试线
SWJ调试端口(serial wire and JTAG)
STM32F10xxx内核集成了串行/JTAG调试接口(SWJDP)。
这是标准的ARM CoreSight调试接口,包括JTAGDP接口(5个引脚)和SW-DP接口(2个引脚)。
用户可以利用PVD对VDD电压与电源控制寄存器(PWR_CR)中的 PLS[2:0]位进行比较来监控电源。
通过设置PVDE位来使能PVD 电源控制/状态寄存器(PWR_CSR)中的PVDO标志用来表明VDD是 高于还是低于PVD的电压阀值。
该事件在内部连接到外部中断的第16线,如果该中断在外部 中断寄存器中是使能的,该事件就会产生中断。
3.1.2 电源管理器
1、上电复位(POR)和掉电复位(PDR) STM32内部有一个完整的上电复位(POR)和掉电复 位(PDR)电路,当供电电压达到2V时系统就能正常 工作。 当VDD/VDDA低于指定的限位电VPOR/VPDR时,系统 保持为复位状态,而无需外部复位电路。
2、可编程电压监测器(PVD)
NRST引脚上的低电平(外部复位) 窗口看门狗计数终止(WWDG复位) 独立看门狗计数终止(IWDG复位) 软件复位(SW复位) 低功耗管理复位
2、电源复位
电源复位
当以下事件中之一发生时,产生电源复位:
上电/掉电复位(POR/PDR复位) 从待机模式中返回
STM32F103常用的初始化步骤(第一部分2020年2月)
USART_ITConfig();
6、使能串口
USART_Cmd();
编写中断处理函数
USART1_IRQHandler()
{
}
外部中断初始化过程
1、初始化IO口为输入(使能IO、初始化IO)
2、开启AFIO时钟
3、设置IO口与中断线的映射关系
GPIO_EXTILineConfig();
{
中断逻辑…
EXTI_ClearITPendingBit(EXTI_Line3);
//清除 LINE 上的中断标志位
}
}
IWDG过程
WWDG过程
1、取消寄存器写保护(向IWDG_KR写入0X5555)
IWDG_WriteAccessCmd();
2、设置独立看门狗的预分频系数和重装载值
IWDG_SetPrescaler();
//CC1P=1设置为下降沿捕获
……
}
TIM_ClearITPendingBit(TIM5, TIM_IT_CC1|TIM_IT_Update);
//清除中断标志位
}
电容触摸按键:
见原子代码。
FSMC初始化
1、GPIO,FSMC,AFIO时钟使能;
2、GPIO初始化:GPIO_Init()函数;
3、FSMC初始化:FSMC_NORSRAMInit()函数;
串口初始化代码方式一
串口初始化代码方式二
串口初始化代码方式三(推荐使用)
1、使能IO和USART
2、初始化IO
3、NVIC初始化
4、USART初始化
5、开启中断
USART_ITConfig();
6、使能串口
STM32F103中文教程及参考手册
参考手册STM32F101xx和STM32F103xxARM内核32位高性能微控制器导言本参考手册针对应用开发,提供关于如何使用STM32F101xx和STM32F103xx微控制器的存储器和外设的详细信息。
在本参考手册中STM32F101xx和STM32F103xx被统称为STM32F10xxx。
STM32F10xxx系列拥有不同的存储器容量,封装和外设配置。
关于订货编号,电器和物理性能参数,请参考STM32F101xx和STM32F103xx数据手册。
关于芯片内部闪存的编程,擦除和保护操作,请参考STM32F10xxx闪存编程手册。
关于ARM Cortex™-M3内核的具体信息,请参考Cortex™-M3术参考手册。
* 感谢南京万利提供原始翻译文档目录1文中的缩写141.1寄存器描述表中使用的缩写列表------------------------------------------------------14 2存储器和总线构架152.1系统构架-------------------------------------------------------------------------------------152.2存储器组织---------------------------------------------------------------------------------162.3存储器映像---------------------------------------------------------------------------------172.3.1 外设存储器映像----------------------------------------------------------------------182.3.2 嵌入式SRAM--------------------------------------------------------------------------202.3.3 位段--------------------------------------------------------------------------------------202.3.4 嵌入式闪存----------------------------------------------------------------------------202.4启动配置-------------------------------------------------------------------------------------22 3电源控制(PWR) 233.1电源-------------------------------------------------------------------------------------------233.1.1 独立的A/D转换器供电和参考电压-----------------------------------------------233.1.2 电池备份区域-------------------------------------------------------------------------243.1.3 电压调节器----------------------------------------------------------------------------243.2电源管理器---------------------------------------------------------------------------------253.2.1 上电复位(POR)和掉电复位(PDR)-------------------------------------------------253.2.2 可编程电压监测器(PVD)-----------------------------------------------------------253.3低功耗模式---------------------------------------------------------------------------------263.3.1 降低系统时钟-------------------------------------------------------------------------273.3.2 外部时钟的控制----------------------------------------------------------------------273.3.3 睡眠模式-------------------------------------------------------------------------------273.3.4 停止模式-------------------------------------------------------------------------------283.3.5 待机模式-------------------------------------------------------------------------------293.3.6 低功耗模式下的自动唤醒(AWU)-------------------------------------------------313.4电源控制寄存器---------------------------------------------------------------------------323.4.1 电源控制寄存器(PWR_CR)--------------------------------------------------------323.4.2 电源控制/状态寄存器----------------------------------------------------------------333.5PWR寄存器地址映像--------------------------------------------------------------------34 4复位和时钟控制354.1复位-------------------------------------------------------------------------------------------354.1.1 系统复位-------------------------------------------------------------------------------354.1.2 电源复位-------------------------------------------------------------------------------364.1.3 备份域复位----------------------------------------------------------------------------364.2时钟-------------------------------------------------------------------------------------------364.2.1 HSE时钟--------------------------------------------------------------------------------384.2.2 HSI时钟---------------------------------------------------------------------------------394.2.3 PLL--------------------------------------------------------------------------------------394.2.4 LSE时钟--------------------------------------------------------------------------------394.2.5 LSI时钟---------------------------------------------------------------------------------404.2.6 系统时钟(SYSCLK)选择------------------------------------------------------------404.2.7 时钟安全系统(CSS)------------------------------------------------------------------404.2.8 RTC时钟--------------------------------------------------------------------------------414.2.9 看门狗时钟----------------------------------------------------------------------------414.2.10 时钟输出-------------------------------------------------------------------------------414.3RCC寄存器描述---------------------------------------------------------------------------414.3.1 时钟控制寄存器(RCC_CR)---------------------------------------------------------424.3.2 时钟配置寄存器(RCC_CFGR)-----------------------------------------------------434.3.3 时钟中断寄存器 (RCC_CIR)-------------------------------------------------------464.3.4 APB2外设复位寄存器 (RCC_APB2RSTR)-------------------------------------484.3.5 APB1外设复位寄存器 (RCC_APB1RSTR)-------------------------------------504.3.6 AHB外设时钟使能寄存器 (RCC_AHBENR)-----------------------------------524.3.7 APB2外设时钟使能寄存器(RCC_APB2ENR)---------------------------------534.3.8 APB1外设时钟使能寄存器(RCC_APB1ENR)---------------------------------544.3.9 备份域控制寄存器 (RCC_BDCR)-------------------------------------------------564.3.10 控制/状态寄存器 (RCC_CSR)------------------------------------------------------574.4RCC寄存器地址映像---------------------------------------------------------------------58 5通用和复用功能I/O(GPIO和AFIO) 605.1GPIO功能描述-----------------------------------------------------------------------------605.1.1 通用I/O(GPIO)------------------------------------------------------------------------625.1.2 单独的位设置或位清除-------------------------------------------------------------635.1.3 外部中断/唤醒线----------------------------------------------------------------------635.1.4 复用功能(AF)--------------------------------------------------------------------------635.1.5 软件重新映射I/O复用功能---------------------------------------------------------635.1.6 GPIO锁定机制------------------------------------------------------------------------635.1.7 输入配置-------------------------------------------------------------------------------645.1.8 输出配置-------------------------------------------------------------------------------645.1.9 复用功能配置-------------------------------------------------------------------------655.1.10 模拟输入配置-------------------------------------------------------------------------665.2GPIO寄存器描述--------------------------------------------------------------------------675.2.1 端口配置低寄存器(GPIOx_CRL) (x=A..E)--------------------------------------675.2.2 端口配置高寄存器(GPIOx_CRH) (x=A..E)--------------------------------------685.2.3 端口输入数据寄存器(GPIOx_IDR) (x=A..E)------------------------------------695.2.4 端口输出数据寄存器(GPIOx_ODR) (x=A..E)----------------------------------695.2.5 端口位设置/复位寄存器(GPIOx_BSRR) (x=A..E)-----------------------------705.2.6 端口位复位寄存器(GPIOx_BRR) (x=A..E)--------------------------------------705.2.7 端口配置锁定寄存器(GPIOx_LCKR) (x=A..E)---------------------------------715.3复用功能I/O和调试配置(AFIO)--------------------------------------------------------725.3.1 把OSC32_IN/OSC32_OUT作为GPIO 端口PC14/PC15-----------------------725.3.2 把OSC_IN/OSC_OUT引脚作为GPIO端口PD0/PD1---------------------------725.3.3 BXCAN复用功能重映射------------------------------------------------------------725.3.4 JTAG/SWD复用功能重映射--------------------------------------------------------725.3.5 定时器复用功能重映射-------------------------------------------------------------735.3.6 USART复用功能重映射-------------------------------------------------------------74复用功能重映射---------------------------------------------------------------7515.3.7 I2C1复用功能重映射---------------------------------------------------------------755.3.8 SPI5.4AFIO寄存器描述--------------------------------------------------------------------------765.4.1 事件控制寄存器(AFIO_EVCR)----------------------------------------------------775.4.2 复用重映射和调试I/O配置寄存器(AFIO_MAPR)-----------------------------775.4.3 外部中断配置寄存器1(AFIO_EXTICR1)---------------------------------------805.4.4 外部中断配置寄存器2(AFIO_EXTICR2)---------------------------------------805.4.5 外部中断配置寄存器3(AFIO_EXTICR3)---------------------------------------815.4.6 外部中断配置寄存器4(AFIO_EXTICR4)---------------------------------------815.5GPIO 和AFIO寄存器地址映象---------------------------------------------------------835.5.1 GPIO寄存器地址映象---------------------------------------------------------------835.5.2 AFIO寄存器地址映象---------------------------------------------------------------84 6中断和事件856.1嵌套向量中断控制器---------------------------------------------------------------------856.1.1 系统嘀嗒(SysTick)校准值寄存器--------------------------------------------------856.1.2 中断和异常向量----------------------------------------------------------------------856.2外部中断/事件控制器(EXTI)------------------------------------------------------------876.2.1 主要特性-------------------------------------------------------------------------------876.2.2 框图--------------------------------------------------------------------------------------886.2.3 唤醒事件管理-------------------------------------------------------------------------886.2.4 功能说明-------------------------------------------------------------------------------886.2.5 外部中断/事件线路映像-------------------------------------------------------------896.3EXTI 寄存器描述--------------------------------------------------------------------------916.3.1 外部中断/事件寄存器映像----------------------------------------------------------94 7DMA 控制器(DMA)957.1简介-------------------------------------------------------------------------------------------957.2主要特性-------------------------------------------------------------------------------------957.3功能描述-------------------------------------------------------------------------------------967.3.1 DMA处理------------------------------------------------------------------------------967.3.2 仲裁器----------------------------------------------------------------------------------97通道------------------------------------------------------------------------------977.3.3 DMA7.3.4 错误管理-------------------------------------------------------------------------------987.3.5 DMA请求映像------------------------------------------------------------------------987.4DMA寄存器--------------------------------------------------------------------------------1017.4.1 DMA中断状态寄存器(DMA_ISR)----------------------------------------------1017.4.2 DMA中断标志清除寄存器(DMA_IFCR)--------------------------------------1027.4.3 DMA通道x配置寄存器(DMA_CCRx)(x = 1…7)-----------------------------1037.4.4 DMA通道x传输数量寄存器(DMA_CNDTRx)(x = 1…7)-------------------1047.4.5 DMA通道x外设地址寄存器(DMA_CPARx)(x = 1…7)---------------------1057.4.6 DMA通道x存储器地址寄存器(DMA_CPARx)(x = 1…7)------------------1057.5DMA寄存器映像--------------------------------------------------------------------------1058实时时钟(RTC)1088.1简介------------------------------------------------------------------------------------------1088.2主要特性------------------------------------------------------------------------------------1088.3功能描述------------------------------------------------------------------------------------1098.3.1 概述------------------------------------------------------------------------------------1098.3.2 复位过程-----------------------------------------------------------------------------1108.3.3 读RTC寄存器------------------------------------------------------------------------1108.3.4 配置RTC寄存器---------------------------------------------------------------------1118.3.5 RTC标志的设置---------------------------------------------------------------------1118.4RTC寄存器描述--------------------------------------------------------------------------1138.4.1 RTC控制寄存器高位(RTC_CRH)-------------------------------------------1138.4.2 RTC控制寄存器低位(RTC_CRL)--------------------------------------------1138.4.3 RTC预分频装载寄存器(RTC_PRLH/RTC_PRLL)-----------------------1158.4.4 RTC预分频分频因子寄存器(RTC_DIVH / RTC_DIVL)--------------------1168.4.5 RTC计数器寄存器 (RTC_CNTH / RTC_CNTL)------------------------------1168.4.6 RTC闹钟寄存器(RTC_ALRH/RTC_ALRL)-------------------------------1178.5RTC寄存器映像--------------------------------------------------------------------------118 9备份寄存器(BKP) 1209.1简介------------------------------------------------------------------------------------------1209.2特性------------------------------------------------------------------------------------------1209.3侵入检测------------------------------------------------------------------------------------1209.4RTC校准-----------------------------------------------------------------------------------1219.5BKP寄存器描述--------------------------------------------------------------------------1219.5.1 备份数据寄存器x(BKP_DRx) (x = 1 … 10)-----------------------------------1219.5.2 RTC时钟校准寄存器(BKP_RTCCR)----------------------------------------1229.5.3 备份控制寄存器(BKP_CR)-------------------------------------------------------1229.5.4 备份控制/状态寄存器(BKP_CSR)----------------------------------------------1239.6BKP寄存器映像--------------------------------------------------------------------------124 10独立看门狗(IWDG) 12510.1简介------------------------------------------------------------------------------------------12510.1.1 硬件看门狗--------------------------------------------------------------------------12510.1.2 寄存器访问保护--------------------------------------------------------------------12610.1.3 调试模式-----------------------------------------------------------------------------12610.2IWDG寄存器描述------------------------------------------------------------------------12710.2.1 键寄存器(IWDG_KR)----------------------------------------------------------12710.2.2 预分频寄存器(IWDG_PR)--------------------------------------------------------12710.2.3 重装载寄存器(IWDG_RLR)------------------------------------------------------12810.2.4 状态寄存器(IWDG_SR)-----------------------------------------------------------12810.3IWDG寄存器映像------------------------------------------------------------------------129 11窗口看门狗(WWDG) 13011.1简介------------------------------------------------------------------------------------------13011.2主要特性------------------------------------------------------------------------------------13011.3功能描述------------------------------------------------------------------------------------13011.4如何编写看门狗超时程序--------------------------------------------------------------13111.5调试模式------------------------------------------------------------------------------------13311.6寄存器描述--------------------------------------------------------------------------------13311.6.1 控制寄存器(WWDG_CR)---------------------------------------------------------13311.6.2 配置寄存器(WWDG_CFR)-------------------------------------------------------13411.6.3 状态寄存器(WWDG_SR)---------------------------------------------------------13411.7WWDG寄存器映像----------------------------------------------------------------------135 12高级控制定时器(TIM1) 13612.1简介------------------------------------------------------------------------------------------13612.2主要特性------------------------------------------------------------------------------------13612.3框图------------------------------------------------------------------------------------------13712.4功能描述------------------------------------------------------------------------------------13812.4.1 时基单元-----------------------------------------------------------------------------13812.4.2 计数器模式--------------------------------------------------------------------------13912.4.3 重复向下计数器--------------------------------------------------------------------14712.4.4 时钟选择-----------------------------------------------------------------------------14812.4.5 捕获/比较通道-----------------------------------------------------------------------15112.4.6 输入捕获模式-----------------------------------------------------------------------15312.4.7 PWM输入模式----------------------------------------------------------------------15412.4.8 强置输出模式-----------------------------------------------------------------------15512.4.9 输出比较模式-----------------------------------------------------------------------155模式----------------------------------------------------------------------15712.4.10 PWM12.4.11 互补输出和死区插入--------------------------------------------------------16012.4.12 使用刹车功能-----------------------------------------------------------------16112.4.13 在外部事件时清除OCxREF信号------------------------------------------16312.4.14 六步PWM的产生-------------------------------------------------------------16412.4.15 单脉冲模式--------------------------------------------------------------------16512.4.16 编码器接口模式--------------------------------------------------------------16712.4.17 定时器输入异或功能--------------------------------------------------------16912.4.18 与霍尔传感器的接口--------------------------------------------------------16912.4.19 TIM1定时器和外部触发的同步-------------------------------------------17112.4.20 定时器同步--------------------------------------------------------------------17412.4.21 调试模式-----------------------------------------------------------------------17412.5TIM1寄存器描述--------------------------------------------------------------------------17512.5.1 控制寄存器1(TIM1_CR1)--------------------------------------------------------17512.5.2 控制寄存器2(TIM1_CR2)--------------------------------------------------------17612.5.3 从模式控制寄存器(TIM1_SMCR)----------------------------------------------17812.5.4 DMA/中断使能寄存器(TIM1_DIER)-------------------------------------------17912.5.5 状态寄存器(TIM1_SR)------------------------------------------------------------18112.5.6 事件产生寄存器(TIM1_EGR)----------------------------------------------------18212.5.7 捕获/比较模式寄存器1(TIM1_CCMR1)---------------------------------------18312.5.8 捕获/比较模式寄存器2(TIM1_CCMR2)---------------------------------------18612.5.9 捕获/比较使能寄存器(TIM1_CCER)-------------------------------------------18712.5.10 计数器(TIM1_CNT)----------------------------------------------------------19012.5.11 预分频器(TIM1_PSC)--------------------------------------------------------19012.5.12 自动重装载寄存器(TIM1_ARR)-------------------------------------------19012.5.13 周期计数寄存器(TIM1_RCR)----------------------------------------------19112.5.14 捕获/比较寄存器1(TIM1_CCR1)-----------------------------------------19112.5.15 捕获/比较寄存器2(TIM1_CCR2)-----------------------------------------19212.5.16 捕获/比较寄存器3(TIM1_CCR3)-----------------------------------------19212.5.17 捕获/比较寄存器(TIM1_CCR4)-------------------------------------------19312.5.18 刹车和死区寄存器(TIM1_BDTR)-----------------------------------------19312.5.19 DMA控制寄存器(TIM1_DCR)---------------------------------------------19512.5.20 连续模式的DMA地址(TIM1_DMAR)------------------------------------19512.6TIM1寄存器图-----------------------------------------------------------------------------196 13通用定时器(TIMx) 19813.1概述------------------------------------------------------------------------------------------19813.2主要特性------------------------------------------------------------------------------------19813.3框图------------------------------------------------------------------------------------------19913.4功能描述------------------------------------------------------------------------------------20013.4.1 时基单元-----------------------------------------------------------------------------20013.4.2 计数器模式--------------------------------------------------------------------------20113.4.3 时钟选择-----------------------------------------------------------------------------20913.4.4 捕获/比较通道-----------------------------------------------------------------------21213.4.5 输入捕获模式-----------------------------------------------------------------------21313.4.6 PWM输入模式----------------------------------------------------------------------21413.4.7 强置输出模式-----------------------------------------------------------------------21513.4.8 输出比较模式-----------------------------------------------------------------------21613.4.9 PWM 模式----------------------------------------------------------------------------21713.4.10 单脉冲模式--------------------------------------------------------------------22013.4.11 在外部事件时清除OCxREF信号------------------------------------------22113.4.12 编码器接口模式--------------------------------------------------------------22213.4.13 定时器输入异或功能--------------------------------------------------------22413.4.14 定时器和外部触发的同步--------------------------------------------------22413.4.15 定时器同步--------------------------------------------------------------------22713.4.16 调试模式-----------------------------------------------------------------------23213.5TIMx寄存器描述--------------------------------------------------------------------------23313.5.1 控制寄存器1(TIMx_CR1)--------------------------------------------------------23313.5.2 控制寄存器2(TIMx_CR2)--------------------------------------------------------23413.5.3 从模式控制寄存器(TIMx_SMCR)----------------------------------------------23513.5.4 DMA/中断使能寄存器(TIMx_DIER)-------------------------------------------23713.5.5 状态寄存器(TIMx_SR)------------------------------------------------------------23813.5.6 事件产生寄存器(TIMx_EGR)----------------------------------------------------24013.5.7 捕获/比较模式寄存器1(TIMx_CCMR1)---------------------------------------24113.5.8 捕获/比较模式寄存器2(TIMx_CCMR2)---------------------------------------24413.5.9 捕获/比较使能寄存器(TIMx_CCER)-------------------------------------------24513.5.10 计数器(TIMx_CNT)----------------------------------------------------------24613.5.11 预分频器(TIMx_PSC)--------------------------------------------------------24613.5.12 自动重装载寄存器(TIMx_ARR)-------------------------------------------24713.5.13 捕获/比较寄存器1(TIMx_CCR1)-----------------------------------------24713.5.14 捕获/比较寄存器2(TIMx_CCR2)-----------------------------------------24813.5.15 捕获/比较寄存器3(TIMx_CCR3)-----------------------------------------24813.5.16 捕获/比较寄存器4(TIMx_CCR4)-----------------------------------------24913.5.17 DMA控制寄存器(TIMx_DCR)---------------------------------------------24913.5.18 连续模式的DMA地址(TIMx_DMAR)------------------------------------25013.6TIMx寄存器图-----------------------------------------------------------------------------250 14控制器局域网(bxCAN) 25314.1简介------------------------------------------------------------------------------------------25314.2主要特点------------------------------------------------------------------------------------25314.3总体描述------------------------------------------------------------------------------------25414.3.1 CAN 2.0B内核-----------------------------------------------------------------------25414.3.2 控制、状态和配置寄存器--------------------------------------------------------25414.3.3 发送邮箱-----------------------------------------------------------------------------25514.3.4 接收过滤器--------------------------------------------------------------------------25514.3.5 接收FIFO-----------------------------------------------------------------------------25514.4工作模式------------------------------------------------------------------------------------25614.4.1 初始化模式--------------------------------------------------------------------------25614.4.2 正常模式-----------------------------------------------------------------------------25714.4.3 睡眠模式(低功耗)--------------------------------------------------------------25714.4.4 测试模式-----------------------------------------------------------------------------25814.4.5 静默模式-----------------------------------------------------------------------------25814.4.6 环回模式-----------------------------------------------------------------------------25814.4.7 环回静默模式-----------------------------------------------------------------------25914.5功能描述------------------------------------------------------------------------------------25914.5.1 发送处理-----------------------------------------------------------------------------25914.5.2 时间触发通信模式-----------------------------------------------------------------26114.5.3 接收管理-----------------------------------------------------------------------------26114.5.4 标识符过滤--------------------------------------------------------------------------26214.5.5 报文存储-----------------------------------------------------------------------------26614.5.6 出错管理-----------------------------------------------------------------------------26714.5.7 位时间特性--------------------------------------------------------------------------26814.6中断------------------------------------------------------------------------------------------27114.7寄存器访问保护--------------------------------------------------------------------------27214.8CAN 寄存器描述-------------------------------------------------------------------------27314.8.1 控制和状态寄存器-----------------------------------------------------------------27314.8.2 邮箱寄存器--------------------------------------------------------------------------28214.8.3 CAN过滤器寄存器-----------------------------------------------------------------28814.9bxCAN寄存器列表-----------------------------------------------------------------------291 15I2C接口29515.1介绍------------------------------------------------------------------------------------------29515.2主要特点------------------------------------------------------------------------------------29515.4功能描述------------------------------------------------------------------------------------29815.4.1 I2C从模式----------------------------------------------------------------------------29815.4.2 I2C主模式----------------------------------------------------------------------------30115.4.3 错误条件-----------------------------------------------------------------------------30415.4.4 SDA/SCL线控制--------------------------------------------------------------------30515.4.5 SMBus--------------------------------------------------------------------------------30615.4.6 DMA请求----------------------------------------------------------------------------30915.4.7 包错误校验(PEC)-------------------------------------------------------------------31015.5中断请求------------------------------------------------------------------------------------31115.6I2C调试模式-------------------------------------------------------------------------------31215.7I2C寄存器描述----------------------------------------------------------------------------31215.7.1 控制寄存器1(I2C_CR1)-----------------------------------------------------------31215.7.2 控制寄存器2(I2C_CR2)-----------------------------------------------------------31415.7.3 自身地址寄存器1 (I2C_OAR1)-------------------------------------------------31515.7.4 自身地址寄存器2(I2C_OAR2)--------------------------------------------------31615.7.5 数据寄存器(I2C_DR)--------------------------------------------------------------31615.7.6 状态寄存器1(I2C_SR1)-----------------------------------------------------------31715.7.7 状态寄存器2 (I2C_SR2)----------------------------------------------------------31915.7.8 时钟控制寄存器(I2C_CCR)------------------------------------------------------32015.7.9 TRISE寄存器(I2C_TRISE)--------------------------------------------------------32115.8I2C寄存器地址映象----------------------------------------------------------------------322 16模拟/数字转换(ADC) 32316.1介绍------------------------------------------------------------------------------------------32316.2主要特征------------------------------------------------------------------------------------32316.3引脚描述------------------------------------------------------------------------------------32416.4功能描述------------------------------------------------------------------------------------32516.4.1 ADC开关控制-----------------------------------------------------------------------32516.4.2 ADC时钟-----------------------------------------------------------------------------32516.4.3 通道选择-----------------------------------------------------------------------------32516.4.4 单次转换模式-----------------------------------------------------------------------32616.4.5 连续转换模式-----------------------------------------------------------------------32616.4.6 时序图--------------------------------------------------------------------------------32616.4.7 模拟看门狗--------------------------------------------------------------------------32716.4.8 扫描模式-----------------------------------------------------------------------------32816.4.9 注入通道管理-----------------------------------------------------------------------32816.4.10 间断模式-----------------------------------------------------------------------32916.5校准------------------------------------------------------------------------------------------33016.6数据对齐------------------------------------------------------------------------------------33116.7可编程的通道采样时间-----------------------------------------------------------------33116.8外部触发转换-----------------------------------------------------------------------------33116.9DMA请求-----------------------------------------------------------------------------------332。
stm32f103中文手册
stm32f103中文手册第一章综述1.1 STM32F103系列微控制器概述1.2 STM32F103系列微控制器特性1.3 STM32F103系列微控制器产品线第二章存储器2.1 存储器映射2.2 Flash存储器2.3 系统存储器2.4 备份寄存器2.5 静态随机存取存储器(SRAM)第三章外设3.1 复位和时钟控制(RCC)3.2 独立看门狗(IWDG)3.3 窗口看门狗(WWDG)3.4 嵌套向量中断控制器(NVIC)3.5 系统定时器(SysTick)...第一章综述1.1 STM32F103系列微控制器概述STM32F103系列微控制器是基于ARM® Cortex®-M3内核的高性能、低功耗、增强型单片机。
它们提供了从64KB到512KB Flash存储器和从20KB到64KBSRAM存储器的不同容量选择。
它们还集成了丰富的外设资源,包括USB 、CAN、11个定时器、3个ADC、13个通讯接口等。
STM32F103系列微控制器采用了先进的90nmNVM工艺技术,具有出色的电源效率。
它们支持多种低功耗模式,包括停机模式、待机模式、睡眠模式和停止模式。
它们还支持动态电压调节和动态频率调节,以进一步降低功耗。
STM32F103系列微控制器具有高度灵活性和可扩展性。
它们支持多种封装类型,从36引脚到144引脚不等。
它们还支持多种内部和外部时钟源,包括高速内部振荡器(HSI)、低速内部振荡器(LSI)、高速外部振荡器(HSE)、低速外部振荡器(LSE)和相位锁定环(PLL)。
它们还支持多种外部存储器接口,包括NOR Flash、SRAM、NAND Flash、SDIO等。
1.2 STM32F103系列微控制器特性---特性 ---描述 -------:-----:---------内核 ---ARM® 32位 Cortex®-M3CPU,最高72MHz运行频率,单周期乘法和硬件除法,嵌套向量中断控制器(NVIC)和系统定时器(SysTick) -------存储器 ---64KB到512KB Flash存储器,20KB到64KBSRAM存储器,512字节备份寄存器,可选的2KB系统存储器 -------电源管理 ---1.65V到3.6V电源电压范围,7uA待机模式,36uA停机模式,动态电压调节和动态频率调节 -------外设 ---USB 2.0全速设备接口,CAN2.0B接口,11个通用定时器,3个高级定时器,3个12位ADC,2个DAC,13个通讯接口(3个USART、4个UART、2个I2C、3个SPI、1个I2S),CR C计算单元,96位唯一ID -------调试和编程 ---SWD和JTAG接口,支持串行线调试(SWD)和串行线跟踪(SWO),支持Flash编程和调试 -------封装 ---36引脚到144引脚不同封装类型 ----1.3 STM32F103系列微控制器产品线STM32F103x8/xB:中等容量增强型单片机,具有64KB或128KB Flash存储器和20KBSRAM存储器。
stm32f103中文手册[6]
stm32f103中文手册一、概述stm32f103c8/cb:64KB或128KB闪存,20KBSRAM,48引脚或64引脚LQFP封装。
stm32f103r8/rb:64KB或128KB闪存,20KBSRAM,64引脚LQFP封装。
stm32f103v8/vb:64KB或128KB闪存,20KBSRAM,100引脚LQFP封装。
stm32f103rc/rd/re:256KB或384KB或512KB闪存,48KB或64KB SRAM,64引脚或100引脚LQFP封装。
stm32f103vc/vd/ve:256KB或384KB或512KB闪存,48KB或64KB SRAM,100引脚LQFP封装。
stm32f103zc/zd/ze:256KB或384KB或512KB闪存,48KB或64KB SRAM,144引脚LQFP封装。
stm32f103系列的主要特性如下:72MHz的主频,1.25 DMIPS/MHz的性能。
从2.0V到3.6V的工作电压范围。
从-40°C到+85°C的工作温度范围。
多种低功耗模式,包括停机模式、待机模式、睡眠模式和停止模式。
多达7个定时器,包括3个16位通用定时器、1个16位高级定时器、2个基本定时器和1个看门狗定时器。
多达3个同步串行接口(SPI),支持I2S协议。
多达3个通用异步收发器(USART),支持ISO7816协议、LIN协议、IrDA协议和调制解调器控制。
多达2个通用串行总线(USB),支持USB 2.0全速设备和CAN2.0B协议。
多达2个I2C总线接口,支持400KHz的快速模式和10KHz的低速模式。
多达3个12位模数转换器(ADC),支持1.2us的转换时间和多通道扫描模式。
多达2个12位数模转换器(DAC),支持8位和12位的数据格式和双缓冲区输出模式。
多达80个通用输入输出端口(GPIO),支持多种工作模式和中断功能。
多达15个可屏蔽中断源和一个非屏蔽中断源(NMI)。
stm32f103工作原理
STM32F103工作原理解析引言STM32F103是一款由意法半导体(STMicroelectronics)推出的32位ARM Cortex-M3内核的微控制器。
它是一款功能强大且广泛应用的微控制器,常用于工业自动化、电机控制、嵌入式系统等领域。
本文将详细解释STM32F103的工作原理,包括芯片架构、时钟系统、外设模块和程序执行过程等方面。
芯片架构STM32F103采用了哈佛结构的体系结构,具有较高的运行效率和较低的功耗。
它的主要组成部分包括核心处理器、存储器、外设模块和时钟系统。
核心处理器STM32F103采用了ARM Cortex-M3内核,这是一款32位的RISC处理器。
它具有高性能、低功耗和高代码密度的特点。
Cortex-M3内核包含了ARM Thumb-2指令集,支持从1到4字节的指令,并且具有较好的代码压缩能力。
存储器STM32F103具有多种类型的存储器,包括闪存、SRAM和备份寄存器。
闪存用于存储程序代码和常量数据,具有较大的容量和较快的访问速度。
SRAM用于存储变量和堆栈数据,具有较快的读写速度。
备份寄存器用于存储关键数据,例如时钟设置和唯一设备ID等。
外设模块STM32F103内置了丰富的外设模块,包括通用输入输出口(GPIO)、串行通信接口(USART)、定时器、模拟数字转换器(ADC)等。
这些外设模块可以通过寄存器配置和控制来实现各种功能,例如数据输入输出、通信、计时和信号转换等。
时钟系统时钟系统是STM32F103的重要组成部分,它提供了系统时钟和外设时钟。
STM32F103具有多个时钟源,包括内部RC振荡器、外部晶体振荡器和外部时钟输入。
时钟系统还包括PLL锁相环,可以通过倍频和分频来生成不同频率的系统时钟。
时钟系统时钟系统是STM32F103的核心部分,它为整个芯片提供了时序控制和同步功能。
时钟系统包括系统时钟和外设时钟两部分。
系统时钟系统时钟是STM32F103内部各模块运行所需的时钟信号。
stm32复位和时钟控制
以下模块多个时钟源可选择
ADC模块
PCLK经过2或4分频,专用的14MHz-HSI 如果选择专用14MHz作为ADC时钟,可以配置是否由ADC自动开启/关闭14MHz RC
USART1
PCLK,系统时钟,HSI,LSE
I2C1
HSI,系统时钟
CEC
HSI/244,LSE
TI1_RMP @ TIM14_OR
TIM14
GPIO
TI1
RTCCLK HSE/32 MCO
7
低功耗模式下的时钟表现
睡眠模式
CPU时钟停止 用户可以设置是否也停止片上闪存和SRAM的接口时钟 如果所有连在APB总线上的外设的时钟都被用户关闭,则AHB到APB 桥的时钟也被硬件关闭
LSI
35~40~55 KHz
85 us
PLL
输入时钟频率 输出时钟频率
1~24 MHz 16~48 MHz
4
LSE起振能力动态可调
5
特殊外设时钟供给
片上闪存编程接口,HSI Option byte loader,HSI I2S1,系统时钟 IWWDG,LSI
由软件或硬件开启;一旦开启LSI就不能关闭
1
时钟树框图
OSC32_IN OSC32_OUT ~40kHz LSI RC 8MHz HSI RC /2 4 -32 MHz OSC_OUT OSC_IN /2, 4 [16MHz,48MHz] HSI14 RC ADC HSE Osc /2, 3, ..16 HSI IWWDGCLK CSS PCLK HCLK 32.768KHz LSE Osc HSE /32 RTCCLK /8 SysTick
stm32f103中文手册[12]
stm32f103中文手册1. 概述72 MHz的主频,可达90 DMIPS的性能64 KB至512 KB的闪存,20 KB至64 KB的SRAM7个定时器,包括3个高级定时器和4个通用定时器2个12位模数转换器,每秒1 MSPS2个I2C接口,3个USART接口,2个SPI接口1个USB 2.0全速接口1个CAN 2.0B接口37至80个GPIO引脚,支持中断和唤醒功能3个12位数字摹拟转换器实时时钟,支持日历和闹钟功能4至16 MHz的晶振振荡器,内部8 MHz的RC振荡器,内部40 kHz的RC振荡器7种低功耗模式,包括待机模式、住手模式和睡眠模式单电源3.0 V至3.6 V或者双电源1.8 V至3.6 V工作电压工作温度范围为-40°C至+85°C或者-40°C至+105°C2. 引脚定义stm32f103有多种封装形式,包括LQFP64、LQFP100、LQFP144、BG A100等²。
不同封装形式的引脚数量和罗列方式不同,但引脚功能基本相同。
下表列出了stm32f103的引脚功能和描述:---引脚名称 ---引脚功能 ---引脚描述 -------:------: ---:------: ---:------: -------VSS ---接地 ---连接到电源地 -------VDD ---电源 ---连接到正电源 -------VDDA ---摹拟电源 ---连接到正电源 -------VSSA ---摹拟接地 ---连接到电源地 -------NRST ---复位 ---复位输入,低电平有效 -------BOOT0 ---引导模式选择 ---引导模式选择输入,高电平或者低电平 -------BOOT1 ---引导模式选择 ---引导模式选择输入,高电平或者低电平 -------OSC_IN ---晶振输入 ---连接到外部晶振或者时钟信号的输入端-------OSC_OUT ---晶振输出 ---连接到外部晶振或者时钟信号的输出端 -------PA0~PA15 ---端口A引脚 ---可编程I/O引脚,具有多种功能和特性 -------PB0~PB15 ---端口B引脚 ---可编程I/O引脚,具有多种功能和特性 -------PC0~PC15 ---端口C引脚 ---可编程I/O引脚,具有多种功能和特性 -------PD0~PD15 ---端口D引脚 ---可编程I/O引脚,具有多种功能和特性 -------PE0~PE15 ---端口E引脚 ---可编程I/O引脚,具有多种功能和特性 -------JTAG_TMS ---JTAG测试模式选择 ---JTAG接口的测试模式选择信号 -------JTAG_TCK ---JTAG测试时钟 ---JTAG接口的测试时钟信号 -------JTAG_TDI ---JTAG测试数据输入 ---JTAG接口的测试数据输入信号 -------JTAG_TDO ---JTAG测试数据输出 ---JTAG接口的测试数据输出信号 -------JTAG_TRST ---JTAG测试复位 ---JTAG接口的测试复位信号 ----3. 系统架构stm32f103的系统架构如下图所示³:![stm32f103系统架构](^4^)32位RISC架构,支持Thumb-2指令集3级流水线,支持分支预测和异常处理13个通用寄存器和1个程序计数器1个嵌套向量中断控制器(NVIC),支持多达60个中断源1个系统控制块(SCB),包含系统配置、控制和状态寄存器1个系统定时器(SysTick),提供一个24位递减计数器,可用于操作系统的节拍计时1个调试接入端口(DAP),支持JTAG和SWD两种调试协议闪存:是stm32f103的非易失性存储器,用于存储程序代码和数据。
STM32f103寄存器说明
CRC寄存器(一种算法,用以确认发送过程中是否出错)数据寄存器:CRC_DR可读写,复位值:0xFFFF FFFF;独立数据寄存器:CRC_IDR临时存放任何8位数据;控制寄存器:CRC_CR只零位可用,用于复位CRC,对其写1复位,由硬件清零;PWR电源控制(控制和管理电源)电源控制寄存器:PWR_CR控制选择系统的电源电源控制/状态寄存器:PWR_CSR睡眠或待机模式电源控制BKP备份寄存器(用以控制和管理备份数据)备份数据寄存器x:BKP_DRx (x = 1 … 10) 10个16位数据寄存器用以存储用户数据RTC时钟校准寄存器:BKP_RTCCR控制实时时钟的运行备份控制寄存器:BKP_CR控制选择清除备份数据的类型备份控制/状态寄存器:BKP_CSR对侵入事件的控制RCC寄存器(时钟的选择、复位、分频)时钟控制寄存器(RCC_CR)各时钟状态显示时钟配置寄存器(RCC_CFGR)时钟分频时钟中断寄存器(RCC_CIR)控制就绪中断使能与否APB2外设复位寄存器(RCC_APB2RSTR) APB1外设复位寄存器(RCC_APB1RSTR)复位APB各功能寄存器AHB外设时钟使能寄存器(RCC_AHBENR) AHB时钟使能控制APB2外设时钟使能寄存器(RCC_APB2ENR) APB1外设时钟使能寄存器(RCC_APB1ENR) APB1时钟使能控制备份域控制寄存器(RCC_BDCR)备份域时钟控制控制/状态寄存器(RCC_CSR)复位标志寄存器AHB外设时钟复位寄存器(RCC_AHBRSTR)复位以太网MAC模块时钟配置寄存器2(RCC_CFGR2)时钟选择与分频GPIO寄存器(设置端口的功能)端口配置低寄存器(GPIOx_CRL) (x=A..E)端口配置高寄存器(GPIOx_CRH) (x=A..E)端口输入数据寄存器(GPIOx_IDR) (x=A..E)只读数据,读出IO口的状态端口输出数据寄存器(GPIOx_ODR) (x=A..E)可读可写端口位设置/清除寄存器(GPIOx_BSRR) (x=A..E)端口位清除寄存器(GPIOx_BRR) (x=A..E)将某一端口清零端口配置锁定寄存器(GPIOx_LCKR) (x=A..E)用于保护端口配值AFIO寄存器(将端口重映射到其它端口用以端口的第二功能)事件控制寄存器(AFIO_EVCR)选择时间输出端口与引脚复用重映射和调试I/O配置寄存器(AFIO_MAPR)各寄存器功能引脚重映射选择外部中断配置寄存器1(AFIO_EXTICR1)外部中断配置寄存器2(AFIO_EXTICR2)外部中断配置寄存器3(AFIO_EXTICR3)外部中断配置寄存器4(AFIO_EXTICR4)外部中断引脚重映射选择EXTI 寄存器(外部中断控制器)中断屏蔽寄存器(EXTI_IMR)用于屏蔽或开放某一引脚的中断请求事件屏蔽寄存器(EXTI_EMR)用于屏蔽或开放某一引脚的事件上升沿触发选择寄存器(EXTI_RTSR)禁止或允许某一引脚的上升沿触发下降沿触发选择寄存器(EXTI_FTSR)禁止或允许某一引脚的下降沿触发软件中断事件寄存器(EXTI_SWIER)控制某引脚的软件中断挂起寄存器(EXTI_PR)显示某线的引脚有无触发请求DMA寄存器(脱离cpu的传输模式)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)设置存储器地址ADC寄存器(模数转换器)ADC状态寄存器(ADC_SR)AD转换标志寄存器ADC控制寄存器1(ADC_CR1)ADC控制寄存器2(ADC_CR2)设置AD转换的各种功能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注入序列寄存器(ADC_JSQR)ADC 注入数据寄存器x (ADC_JDRx) (x= 1..4) ADC数据结果寄存器ADC规则数据寄存器(ADC_DR)DAC寄存器(数模转换器)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)TIM1和TIM8寄存器(高级的定时计数寄存器)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)TIMx寄存器(控制定时器)控制寄存器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)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)RTC寄存器(实时时钟)RTC控制寄存器高位(RTC_CRH)RTC控制寄存器低位(RTC_CRL)16.4.3 RTC预分频装载寄存器(RTC_PRLH/RTC_PRLL) 16.4.4 RTC预分频器余数寄存器(RTC_DIVH / RTC_DIVL) RTC计数器寄存器(RTC_CNTH / RTC_CNTL)16.4.6 RTC闹钟寄存器(RTC_ALRH/RTC_ALRL)IWDG寄存器(独立看门狗,用以监督系统硬件的正常运行)键寄存器(IWDG_KR)预分频寄存器(IWDG_PR)重装载寄存器(IWDG_RLR)状态寄存器(IWDG_SR)窗口看门狗(WWDG)寄存器(用以监督软件的正常运行)控制寄存器(WWDG_CR)配置寄存器(WWDG_CFR)状态寄存器(WWDG_SR)FSMC寄存器(可变静态存储控制器)NOR闪存和PSRAM控制器寄存器SRAM/NOR闪存片选控制寄存器1…4 (FSMC_BCR1…4)SRAM/NOR闪存片选时序寄存器1…4 (FSMC_BTR1…4)SRAM/NOR闪存写时序寄存器1…4 (FSMC_BWTR1…4)NAND闪存和PC卡控制器寄存器PC卡/NAND闪存控制寄存器 2..4 (FSMC_PCR2..4)FIFO状态和中断寄存器2..4 (FSMC_SR2..4)通用存储空间时序寄存器 2..4 (FSMC_PMEM2..4)属性存储空间时序寄存器 2..4 (FSMC_PATT2..4)I/O空间时序寄存器4 (FSMC_PIO4)ECC结果寄存器2/3 (FSMC_ECCR2/3)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_DCTRLSDIO数据计数器寄存器(SDIO_DCOUNT) SDIO状态寄存器(SDIO_STA)SDIO清除中断寄存器(SDIO_ICR)SDIO中断屏蔽寄存器(SDIO_MASK)SDIO FIFO计数器寄存器(SDIO_FIFOCNT) SDIO数据FIFO寄存器(SDIO_FIFO)USB寄存器(usb传输控制器)通用寄存器USB控制寄存器(USB_CNTR)USB中断状态寄存器(USB_ISTR)USB帧编号寄存器(USB_FNR)USB设备地址寄存器(USB_DADDR)USB分组缓冲区描述表地址寄存器(USB_BTABLE)端点寄存器USB 端点n寄存器(USB_EPnR), n=[0..7]缓冲区寄存器发送缓冲区地址寄存器n(USB_ADDRn_TX)发送数据字节数寄存器n(USB_COUNTn_TX)接收缓冲区地址寄存器n(USB_ADDRn_RX)接收数据字节数寄存器n(USB_COUNTn_RX)CAN 寄存器(邮箱控制寄存器)CAN控制和状态寄存器CAN主控制寄存器(CAN_MCR)CAN主状态寄存器(CAN_MSR)CAN发送状态寄存器(CAN_TSR)CAN接收FIFO 0寄存器(CAN_RF0R)CAN接收FIFO 1寄存器(CAN_RF1R)CAN中断使能寄存器(CAN_IER)CAN错误状态寄存器(CAN_ESR)CAN位时序寄存器(CAN_BTR)CAN邮箱寄存器发送邮箱标识符寄存器(CAN_TIxR) (x=0..2)发送邮箱数据长度和时间戳寄存器(CAN_TDTxR) (x=0..2)发送邮箱低字节数据寄存器(CAN_TDLxR) (x=0..2)发送邮箱高字节数据寄存器(CAN_TDHxR) (x=0..2)接收FIFO邮箱标识符寄存器(CAN_RIxR) (x=0..1)接收FIFO邮箱数据长度和时间戳寄存器(CAN_RDTxR) (x=0..1)接收FIFO邮箱低字节数据寄存器(CAN_RDLxR) (x=0..1)接收FIFO邮箱高字节数据寄存器(CAN_RDHxR) (x=0..1)CAN过滤器寄存器CAN 过滤器主控寄存器(CAN_FMR)CAN 过滤器模式寄存器(CAN_FM1R)CAN 过滤器位宽寄存器(CAN_FS1R)CAN 过滤器FIFO关联寄存器(CAN_FFA1R)CAN 过滤器激活寄存器(CAN_FA1R)CAN 过滤器组i的寄存器x (CAN_FiRx) (互联产品中i=0..27,其它产品中i=0..13;x=1..2)SPI和I2S寄存器(串行外设接口控制器)SPI控制寄存器1(SPI_CR1)SPI控制寄存器2(SPI_CR2)SPI 状态寄存器(SPI_SR)SPI 数据寄存器(SPI_DR)SPI CRC多项式寄存器(SPI_CRCPR)SPI Rx CRC寄存器(SPI_RXCRCR)SPI Tx CRC寄存器(SPI_TXCRCR)SPI_I2S配置寄存器(SPI_I2S_CFGR)SPI_I2S预分频寄存器(SPI_I2SPR)I2C寄存器(数据传输寄存器)控制寄存器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)USART寄存器(通用同步异步收发器)状态寄存器(USART_SR)数据寄存器(USART_DR)波特比率寄存器(USART_BRR)控制寄存器1(USART_CR1)控制寄存器2(USART_CR2)控制寄存器3(USART_CR3)保护时间和预分频寄存器(USART_GTPR)OTG_FS控制和状态寄存器(数据传输控制器)OTG_FS全局寄存器OTG_FS控制和状态寄存器(OTG_FS_GOTGCTL)OTG_FS中断寄存器(OTG_FS_GOTGINT)OTG_FS AHB配置寄存器(OTG_FS_GAHBCFG)OTG_FS_USB配置寄存器(OTG_FS_GUSBCFG)OTG_FS复位寄存器(OTG_FS_GRSTCTL)OTG_FS控制器中断寄存器(OTG_FS_GINTSTS)OTG_FS中断屏蔽寄存器(OTG_FS_GINTMSK)OTG_FS接收状态调试读/OTG状态读和POP寄存器(OTG_FS_GRXSTSR / OTG_FS_GRXSTSP) OTG_FS接收FIFO长度寄存器(OTG_FS_GRXFSIZ)OTG_FS非周期性TX FIFO长度寄存器(OTG_FS_GNPTXFSIZ)OTG_FS非周期性TX FIFO/请求队列状态寄存器(OTG_FS_GNPTXSTS)OTG_FS通用控制器配置寄存器(OTG_FS_GCCFG)OTG_FS控制器ID寄存器(OTG_FS_CID)OTG_FS主机周期性发送FIFO长度寄存器(OTG_FS_HPTXFSIZ)OTG_FS设备IN端点发送FIFO长度寄存器(OTG_FS_DIEPTXFx)(其中x是FIFO的编号,x=1…4)主机模式下的寄存器OTG_FS主机模式配置寄存器(OTG_FS_HCFG)OTG_FS主机帧间隔寄存器(OTG_FS_HFIR)OTG_FS主机帧号/帧时间剩余寄存器(OTG_FS_HFNUM)OTG_FS主机周期性发送FIFO/请求队列寄存器(OTG_FS_HPTXSTS)OTG_FS主机所有通道中断寄存器(OTG_FS_HAINT)OTG_FS主机所有通道中断屏蔽寄存器(OTG_FS_HAINTMSK)OTG_FS主机端口控制和状态寄存器(OTG_FS_HPRT)OTG_FS主机通道x特性寄存器(OTG_FS_HCCHARx)(此处x代码通道号,x = 0...7)OTG_FS主机通道x中断寄存器(OTG_FS_HCINTx)(其中x代表通道号,x=0...7,)OTG_FS主机通道x中断屏蔽寄存器(OTG_FS_HCINTMSKx)(其中x为通道号,x=0...7)OTG_FS主机通道x传输长度寄存器(OTG_FS_HCTSIZx)(其中x为通道号,x=0...7)设备模式下的寄存器OTG_FS设备配置寄存器(OTG_FS_DCFG)OTG_FS设备控制寄存器(OTG_FS_DCTL)OTG_FS设备状态寄存器(OTG_FS_DSTS)OTG_FS设备IN端点通用中断屏蔽寄存器(OTG_FS_DIEPMSK)OTG_FS设备OUT端点通用中断屏蔽寄存器(OTG_FS_DOEPMSK)OTG_FS设备所有端点中断寄存器(OTG_FS_DAINT)OTG_FS所有端点中断屏蔽寄存器(OTG_FS_DAINTMSK)OTG_FS设备V BUS放电时间寄存器(OTG_FS_DVBUSDIS)OTG_FS设备V BUS脉冲时间寄存器(OTG_FS_DVBUSPULSE)OTG_FS设备IN端点FIFO空中断屏蔽寄存器(OTG_FS_DIEPEMPMSK)OTG_FS设备控制IN端点0控制寄存器(OTG_FS_DIEPCTL0)OTG设备端点x控制寄存器(OTG_FS_DIEPCTLx)(其中x为端点号,x=1…3)OTG_FS设备控制OUT端点0控制寄存器(OTG_FS_DOEPCTL0)OTG_FS设备OUT端点x控制寄存器(OTG_FS_DOEPCTLx)(其中x为端点号,x=1…3)OTG_FS设备端点x中断寄存器(OTG_FS_DIEPINTx)(其中x为端点号,x=0…3)OTG_FS设备端点x中断寄存器(OTG_FS_DOEPINTx)(其中x为端点号,x=0…3)OTG_FS设备IN端点0传输长度寄存器(OTG_FS_DIEPTSIZ0)OTG_FS设备OUT端点0传输长度寄存器(OTG_FS_DOEPTSIZ0)OTG_FS设备端点x传输长度寄存器(OTG_FS_DIEPTSIZx)(其中x为端点号,x=1…3)OTG_FS设备IN端点传输FIFO状态寄存器(OTG-FS_DTXFSTSx)(其中x为端点号,x=0…3) OTG_FS设备端点x传输长度寄存器(OTG_FS_DOEPTSIZx)(其中x为端点号,x=1…3) OTG_FS电源和时钟门控寄存器(OTG_FS_PCGCCTL)以太网寄存器(通信传输控制器)MAC寄存器以太网MAC设置寄存器(ETH_MACCR)以太网MAC帧过滤器寄存器(ETH_MACFFR)以太网MAC Hash列表高寄存器(ETH_MACHTHR)以太网MAC Hash列表低寄存器(ETH_MACHTLR)以太网MAC MII地址寄存器(ETH_MACMIIAR)以太网MAC MII数据寄存器(ETH_MACMIIDR)以太网MAC流控寄存器(ETH_MACFCR)以太网MAC VLAN标签寄存器(ETH_MACVLANTR)以太网MAC远程唤醒帧过滤器寄存器(ETH_MACRWUFFR)以太网MAC PMT控制和状态寄存器(ETH_MACPMTCSR)以太网MAC中断状态寄存器(ETH_MACSR)以太网MAC中断屏蔽寄存器(ETH_MAIMR)以太网MAC地址0高寄存器(ETH_MACA0HR)以太网MAC地址0低寄存器(ETH_MACA0LR)以太网MAC地址1高寄存器(ETH_MACA1HR)以太网MAC地址1低寄存器(ETH_MACA1LR)以太网MAC地址2高寄存器(ETH_MACA2HR)以太网MAC地址2低寄存器(ETH_MACA2LR)以太网MAC地址3高寄存器(ETH_MACA3HR)以太网MAC地址3低寄存器(ETH_MACA3LR)MMC寄存器以太网MMC控制寄存器(ETH_MMCCR)以太网MMC接收中断寄存器(ETH_MMCRIR)以太网MMC发送中断寄存器(ETH_MMCTIR)以太网MMC接收中断屏蔽寄存器(ETH_MMCRIMR)以太网MMC发送中断屏蔽寄存器(ETH_MMCTIMR)以太网MMC1次冲突后发送”好”帧的计数器寄存器(ETH_MMCTGFSCCR)以太网MMC1次以上冲突后发送”好”帧的计数器寄存器(ETH_MMCTGFMSCCR)以太网MMC发送”好”帧的计数器寄存器(ETH_MMCTGFCR)以太网MMC CRC错误接收帧计数器寄存器(ETH_ MMCRFCECR)以太网MMC对齐错误接收帧计数器寄存器(ETH_ MMCRFAECR)以太网MMC接收帧”好”单播帧计数器寄存器(ETH_ MMCRGUFCR)。
stm32f103中文手册[10]
stm32f103中文手册一、概述stm32f103c8/cb:64KB或128KB闪存,20KBSRAM,48引脚或64引脚LQFP封装。
stm32f103r8/rb:64KB或128KB闪存,20KBSRAM,64引脚LQFP封装。
stm32f103v8/vb:64KB或128KB闪存,20KBSRAM,100引脚LQFP封装。
stm32f103rc/rd/re:256KB或384KB或512KB闪存,48KB或64KB SRAM,64引脚或100引脚或144引脚LQFP封装。
stm32f103vc/vd/ve:256KB或384KB或512KB闪存,48KB或64KB SRAM,100引脚或144引脚LQFP封装。
stm32f103zc/zd/ze:256KB或384KB或512KB闪存,48KB或64KB SRAM,144引脚LQFP封装。
stm32f103的主要特性如下:基于ARM Cortex-M3内核,主频可达72MHz。
内置嵌套向量中断控制器(NVIC),支持多达60个中断源和4个优先级。
内置多种存储器资源,包括闪存、SRAM、备份寄存器和选项字节。
内置多种外设资源,包括GPIO、ADC、DAC、定时器、PWM、I2C、S PI、USART、CAN、USB等。
支持多种时钟源和时钟控制模式,包括内部RC振荡器、外部晶振、PLL等。
支持多种低功耗模式和唤醒机制,包括待机模式、停止模式、睡眠模式等。
支持多种调试和编程接口,包括JTAG/SWD、串口引导加载等。
支持多种电源管理功能,包括电压监测、温度传感器、复位控制等。
二、系统架构stm32f103的系统架构如图1所示¹。
其主要组成部分包括:ARM Cortex-M3内核:负责执行指令和处理数据。
NVIC:负责管理中断请求和中断服务程序。
存储器总线:负责连接内核和存储器资源。
AHB总线:负责连接内核和高速外设资源。
APB1总线:负责连接内核和低速外设资源1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
STM32F103的复位及时钟控制模块头文件
在处理器正常工作前,肯定要做一些初始化工作,其中最主要的一个就是初始化各种时钟。
通过对STM32F103的复位及时钟控制(RCC)模块分析之后,自己写了一个RCC的头文件,这样使用起来更方便。
头文件中首先定义了最基本的几个寄存器,然后再对每个寄存器中的域使用结构体做了定义,可以直接使用寄存器中的位来操作。
注意设置系统时钟时要先设置好FLASH的等待周期,不然程序就可能会跑飞。
该测试工程是在以前的GPIO实验的基础上增加系统时钟初始化代码,设置系统时钟为72M。
通过流水灯可以看到,比未配置系统时钟之前(8M)流水灯的速度快了很多。
从这里下载完整的测试工程:
系统时钟初始化的代码如下:
//以下时钟配置为最高性能
void SystemClockInit(void)
{
//设置flash等待周期为2,否则设置为72M系统时钟时就会跑飞
FLASH_ACR=0x32;
pbRCC_CR->HSEON=1; //使能外部高速时钟
while(!(pbRCC_CR->HSERDY)); //等待外部高速时钟稳定
pbRCC_CFGR->MCO=0; //MCO无时钟输出
pbRCC_CFGR->USBPRE=1; //USB时钟1.5分频
pbRCC_CFGR->PLLMUL=9-2; //PLL倍频设置为9倍(外部时钟8M,PLL输出72M)
pbRCC_CFGR->PLLXTPRE=0; //HSE不分频
pbRCC_CFGR->PLLSRC=1; //HSE选作做为PLL时钟源输入
pbRCC_CFGR->ADCPRE=0; //ADC时钟2分频
pbRCC_CFGR->PPRE2=1+6; //APB2设置为1分频
pbRCC_CFGR->PPRE1=2+6; //APB1设置为2分频
pbRCC_CFGR->HPRE=0; //AHB无分频
pbRCC_CR->PLLON=1; //启动PLL
while(!(pbRCC_CR->PLLRDY)); //等待PLL稳定
pbRCC_CFGR->SW=2; //选择PLL输出为时钟源//pbRCC_AHBENR->SRAMEN=1;
//pbRCC_AHBENR->FLITFEN=1;
//IO口第二功能时钟使能
pbRCC_APB2ENR->AFIOEN=1;
//各通用IO口时钟使能
pbRCC_APB2ENR->IOPAEN=1;
pbRCC_APB2ENR->IOPBEN=1;
pbRCC_APB2ENR->IOPCEN=1;
pbRCC_APB2ENR->IOPDEN=1;
pbRCC_APB2ENR->IOPEEN=1;
//ADC时钟使能
pbRCC_APB2ENR->ADC1EN=1;
pbRCC_APB2ENR->ADC2EN=1;
//定时器1时钟使能
//SPI1时钟使能
pbRCC_APB2ENR->SPI1EN=1;
//串口1时钟使能
pbRCC_APB2ENR->USART1EN=1;
//定时器2、3、4时钟使能pbRCC_APB1ENR->TIM2EN=1; pbRCC_APB1ENR->TIM3EN=1; pbRCC_APB1ENR->TIM4EN=1;
//窗口看门狗时钟不使能pbRCC_APB1ENR->WWDGEN=0;
//SPI2时钟使能
pbRCC_APB1ENR->SPI2EN=1;
//串口2、3时钟使能
pbRCC_APB1ENR->USART2EN=1; pbRCC_APB1ENR->USART3EN=1;
//I2C1、2时钟使能
pbRCC_APB1ENR->I2C2EN=1;
//USB时钟使能
pbRCC_APB1ENR->USBEN=1;
//CAN时钟使能
pbRCC_APB1ENR->CANEN=1;
//备份接口时钟使能
pbRCC_APB1ENR->BKPEN=1;
//电源接口时钟使能
pbRCC_APB1ENR->PWREN=1;
//外部低速时钟启动
pbRCC_BDCR->LSEON=1;
pbRCC_BDCR->LSEBYP=0;
pbRCC_BDCR->RTCSEL=1; //选择外部时钟为RTC时钟}
STM32/STM8
意法半导体/ST/STM。