第6章STM32F10x最小系统_第1页
第6章STM32F10x最小系统_第2页
第6章STM32F10x最小系统_第3页
第6章STM32F10x最小系统_第4页
第6章STM32F10x最小系统_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章STM32F10x最小系统第一页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板第二页,共48页。6.1STM32系列微控制器简介STM32系列是基于ARMCortex‑M核的32位闪存微控制器,集成度高、性能高、实时性、数字信号处理、低功耗、低电压操作的易开发的芯片,适合不同用户的需求。第三页,共48页。片上存储器容量、集成外设、功能模块、封装形式等有所区别。例:STM32F10X系列第四页,共48页。STM32F10x系列产品编号第五页,共48页。第六页,共48页。STM32F103系列芯片CORTEXM3CPU

72MHz6kB-64kBSRAMARMPeripheralBus(max72MHz)2x12-bitADC

16channels/1Msps1/2xI2C0/1xSPI1/2/4xUSART/LIN

Smartcard/IrDa

ModemControl32/49/80*I/OsUpto16Ext.ITsFlashI/F32kB-512kB

FlashMemoryTempSensor1xUSB2.0FS1xbxCAN2.0B6x16-bitPWMSynchronizedACTimer2xWatchdog2/3/5x16-bitTimerExternalMemoryInterface**JTAG/SWDebugXTALoscillators

32KHz+4~16MHzPowerSupply

Reg1.8V

POR/PDR/PVDDMA

3to11*ChannelsNestedvectITCtrl2xSPI/I2S**2xDAC**1xSDIO**ImageSensor**1xUSART/LIN

Smartcard/IrDa

Modem-Ctrl1xSPIBridgeBridge1xSysticTimerARMLiteHi-SpeedBus

Matrix/Arbiter(max72MHz)Int.RCoscillators

32KHz+8MHzPLLClockControlRTC/AWUARMPeripheralBus(max36MHz)20BBackupRegs第七页,共48页。STM32F103功能框图第八页,共48页。第九页,共48页。第十页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板

第十一页,共48页。6.2基于Cortex-M3的最小系统什么是最小系统?

在尽可能减少上层应用的情况下,能够使系统运行的最小化模块配置。“最小系统”称“嵌入式核心控制模块”更贴切一些。最小系统的组成:①电源、②时钟、③复位电路、④存储系统、⑤调试系统。Cortex-M3MPUFlashSRAMTimerResetJTAGUARTPower第十二页,共48页。基于Cortex-M3的最小系统时钟模块——通常经ARM内部锁相环进行相应的倍频,以提供系统各模块运行所需的时钟频率输入复位模块——实现对系统的复位电源系统:调试系统:JTAG/SW模块——实现对程序代码的下载和调试UART模块——实现对调试信息的终端显示存储系统:Flash存储模块——存放启动代码、操作系统和用户应用程序代码SDRAM模块——为系统运行提供动态存储空间,是系统代码运行的主要区域第十三页,共48页。基于Cortex-M3的STM32F10x最小系统第十四页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板第十五页,共48页。6.3存储器与总线架构1、总线架构STM32的各外围模块与Cortex-M3内核,通过各类总线连接在一起,形成一个有机的整体。Cortex-M3的ICode、DCode、System总线和DMA总线四个驱动单元,与闪存存储器接口、SRAM和AHB2APB桥三个被动单元,通过总线矩阵联接在一起。总线矩阵采取轮换算法仲裁、协调内核System总线和DMA主控总线之间的访问。AHB外设通过总线矩阵与系统总线相连,允许DMA访问。两个AHB/APB桥在AHB和2个APB总线间提供同步连接。APB1操作速度限于36MHz,APB2操作于全速72MHz。第十六页,共48页。2、存储器映像STM32F1xxCortex-M3有32根地址线,所以它的寻址空间大小为2^32bit=4GB程序存储器、数据存储器、外设寄存器、输入输出端口被组织在同一4GB线性地址空间内。把地址从0x40000000至0x5FFFFFFF(512MB)的地址分配给片上外设。第十七页,共48页。外设存储器映像STM32F103外设寄存器组起始地址第十八页,共48页。外设存储器映像STM32F103寄存器组起始地址第十九页,共48页。嵌入式闪存Flash存储器映像*STM32F10xxxFlash高密度闪存模块的组织擦写次数:1000次第二十页,共48页。4、STM32F10X的三种启动模式通过BOOT[1:0]引脚选择不同启动模式,实现实例:第二十一页,共48页。STM32F10X的三种启动模式通过选择管脚设置BOOT配置,内置Flash、系统存储区、内置SRAM会分别被映射到地址0x00(启动存储区);CPU从的0x0000_0004地址的值给PC,开始执行代码。从系统存储器启动:厂家在如EPROM内置了Bootloader代码,用户可以从USART1或USART2接口接收数据和命令,对内置的FLASH进行重新编程。ISP模式,在线编程。从SRAM启动:在应用程序的初始化部分,通过NVIC异常表和偏移寄存器,重新定位VectorTable。第二十二页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板第二十三页,共48页。6.4电源控制Cortex-M3主要指标:0.19W/MHz,1.25DMIPS/MHz;若达到5DMIPS(MillionInstructionsexecutedPerSecond,每秒百万条指令)的性能:Cortex-M3工作频率只需4MHz,功耗0.76W;51单片机,工作频率需60MHz,功耗30W;STM32F103处理器系统频率为72MHz,处理器性能可达到90DMIPS,此时Cortex-M3功耗约14W左右。在性能和功耗上达到了很高的水平!第二十四页,共48页。1、电源供电方案VDDA/VSSA独立电源/地2.0--3.6V,为ADC、复位、RC振荡器和PLL供电。若用ADC,VDDA>2.4V;VREF+电压:2.4V~VDDA,VREF-引脚连到VSSA。VDD/VSS主电源/地2.0~3.6V:通过内置调压器提供1.8V供内核用,3.3V供I/O管脚用。VBAT:后备电池1.8~3.6V第二十五页,共48页。2、电源管理器STM32内部集成了上电复位POR(PowerOnReset)/掉电复位PDR(PowerDownReset)电路,系统在供电超过2V时工作;内嵌可编程电压探测器PVD检测VDD,当低于设定阀值VPOR/VPDR时,会产生复位中断,而不使用外部复位电路。。约2.5ms上电复位和掉电复位波形图PVD(ProgrammableVoltageDetector)。在VDD电压由低向高上升越过规定的阀值VPOR之前,保持芯片复位,当越过这个阀值后tRSTTEMPO秒(待电源可靠供电),才开始取复位向量,并执行指令。在VDD电压由高向低下降越过规定的阀值VPDR后,将在芯片内部产生PVD中断,进行复位。第二十六页,共48页。3、三种低功耗模式休眠模式Sleepmode:只有CPU停止工作,调压器1.8V区供电工作,所有外设继续运行,在中断/事件发生时唤醒CPU。停止模式Stopmode:调压器以低功耗模式提供1.8V来保持SRAM和寄存器的内容。但1.8V区域的外设时钟都停止,PLL、HSI和HSE的RC振荡器被禁能。当外部中断源(16个外部中断线之一)、PVD输出、RTC闹钟、或者USB唤醒信号,退出停止模式。第二十七页,共48页。三种低功耗模式待机模式Standbymode:追求最少的功耗,内部调压器被关闭,这样1.8V区域断电。SRAM和寄存器的内容也会丢失。只有备份寄存器和待机电路工作。RTC,IWDG和相关的时钟源不会停止。当外部复位(NRST引脚)、IWDG复位、WKUP引脚出现上升沿或者RTC闹钟时间到时,退出待机模式。第二十八页,共48页。4、电源控制寄存器组PWR偏移地址:0x00h;复位值:0x00000000;位31:9,保留。始终读为0。位8,DBP,取消后备区域的写保护,0禁止/1允许;位7:5,PLS[2:0]:PVD电平选择,000:2.2V,001:2.3V,010:2.4V,…位4,PVDE,电源电压监测器使能,0禁止/1允许;位3,CSBF,置1清除SBF待机位;位2,CWUF,置1,2个系统时钟后清除WUF唤醒位;位1,PDDS,掉电深睡眠下,0停止模式/1待机模式;位0,LPDS,PDDS=0停止模式时,0调压器开/1调压器关;电源控制寄存器PWR_CR第二十九页,共48页。电源控制寄存器组PWR偏移地址:0x04h;复位值:0x00000000;位8,EWUP使能WKUP管脚,0禁止/1待机模式唤醒;位2,PVD输出,0表明VDD高于阀值VPVD/1低于;位1,SBF待机标志,0非待机模式/1待机模式;位0,WUF唤醒标志,0没有发生唤醒事件/1在WKUP管脚上发生唤醒事件或出现RTC闹钟事件。PWR寄存器映像和复位值:电源控制/状态寄存器PWR_CSR第三十页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板第三十一页,共48页。6.5复位STM32F支持三种复位形式:系统复位电源复位备份区域复位。第三十二页,共48页。1、系统复位系统复位将清除时钟控制状态寄存器RCC_CSR中的复位标志和备用域寄存器之外的所有寄存器。复位事件:NRST管脚上的低电平窗口看门狗计时器计时终止(WWDG复位)独立看门狗计数终止(IWDG复位)软件复位(SW复位)低功耗管理复位。第三十三页,共48页。2、电源复位当以下事件中之一发生时,产生电源复位:上电/掉电复位(POR/PDR复位)从待机模式中返回约2.5ms上电复位和掉电复位波形图第三十四页,共48页。3、备份域复位当以下事件中之一发生时,产生备份区域复位。软件复位,备份区域复位可由设置备份区域控制寄存器RCC_BDCR中的BDRST位产生。在VDD和VBAT两者掉电的前提下,VDD或VBAT上电将引发备份区域复位。第三十五页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板第三十六页,共48页。6.6STM32时钟系统时钟系统是CPU的脉搏,就像人的心跳一样。STM32芯片为了实现低功耗,设计了一个功能完善但却非常复杂的时钟系统。编程一个重要步骤,就是设置、开启外设时钟。内部时钟是在芯片内部RC振荡器产生的,起振较快,芯片刚上电的时候使用内部高速时钟。外部时钟是由外部的晶振输入的,精度和稳定性好,上电之后通过软件配置再转用外部时钟信号。高速时钟是提供给芯片主体的主时钟,低速时钟只是提供给芯片中的RTC(实时时钟)及独立看门狗使用。第三十七页,共48页。STM32时钟系统STM32的4个时钟源:HSI高速内部时钟:内部RC振荡器为时钟源,频率为8MHz,但不稳定。内Interior外ExteriorHSE高速外部时钟:外部晶振(4~16MHz),一般用8MHz。LSE低速外部时钟:外部晶振,一般32.768KHz,主要提供给实时时钟RTC模块,还可选HSE的128分频。LSI低速内部时钟:内部RC振荡器产生,40kHz,供独立看门狗IWDG使用,也可选为实时时钟RTC的时钟源。下图说明了STM32的时钟走向,从图的左边开始,从时钟源一步步分配到外设时钟。第三十八页,共48页。1、HIS高速内部时钟,经PLLSRC开关,给PLL锁相环倍频,或直接送SW开关。2、HSE高速外部时钟外接晶振8MHz,经PLLXTPRE、PLLSRC开关送PLL锁相环倍频,或直接送SW。3、PLL倍频锁相环,如倍频因子PLLMUL选为9倍,则得72MHz的PLLCLK时钟;4、HSI、HSE、PLL经开关SW选择之后就是系统时钟SYSCLK了;5、经AHB、APB1、APB2分频器得到各内核与外设的时钟源:HCLK、PCLK1、PCLK2等时钟;SWPLLXTPREPLLSRC第三十九页,共48页。STM32时钟系统PLL锁相环倍频输出:时钟源的频率可能偏低,通过PLL电路可提高系统所需要的时钟频率,并且更稳定。PLL时钟输入源可选择为HSI/2、HSE或HSE/2。倍频可选择为2~16倍,STM32F1xx的输出频率最大72MHz。系统时钟SYSCLK经AHB分频器的HCLK时钟给AHB总线、内核、内存、DMA、系统定时器时钟等使用。APB1分频器:PCLK1,36MHz,供低速外设:电源接口、备份接口、CAN、USB、I2C1、I2C2、UART2、UART3、SPI2、窗口看门狗、Timer2、Timer3、Timer4APB2分频器:PCLK2,72MHz,供高速外设:UART1、SPI1、Timer1、ADC1、ADC2、GPIO口(PA~PE)等。第四十页,共48页。第6章STM32F10x最小系统6.1STM32F10x系列微控制器简介6.2基于Cortex-M3的最小系统6.3存储器与总线架构6.4电源控制6.5复位6.6STM32的时钟系统6.7仿真器与开发板第四十一页,共48页。6.7仿真器与开发板Cortex™-M3核集成了SWJ-DP(serialwireandJTAG)调试模块,支持两种调试接口:JTAG调试接口(JTAG-DP)为AHP-AP模块5针标准JTAG接口。串行调试接口(SW-DP)为AHP-AP模块2针(时钟+数据)接口。第四十二页,共48页。SWJ-DP接口在SWJ-DP接口中,SW-DP接口的2个引脚和JTAG接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论