基于ARM的单片机应用及实践课件第三章讲述_第1页
基于ARM的单片机应用及实践课件第三章讲述_第2页
基于ARM的单片机应用及实践课件第三章讲述_第3页
基于ARM的单片机应用及实践课件第三章讲述_第4页
基于ARM的单片机应用及实践课件第三章讲述_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

第三章

STM32最小系统的设计3.1

STM32F10x系列产品简介片上存储器容量、集成外设、功能模块、封装形式等有所区别。STM32F103系列芯片CORTEXM3CPU72

MHz6kB-64kB

SRAMARM

Peripheral

Bus(max

72MHz)2x

12-bit

ADC

16

channels

/

1Msps1/2x

I2C0/1x

SPI1/2/4x

USART/LINSmartcard

/

IrDaModem

Control32/49/80*

I/OsUp

to

16

Ext.

ITsFlash

I/F32kB-512kBFlash

MemoryTemp

Sensor1x

USB

2.0FS1x

bxCAN

2.0B6x

16-bit

PWMSynchronized

ACTimer2x

Watchdog2/3/5x

16-bit

TimerExternal

MemoryInterface**Power

SupplyReg

1.8VPOR/PDR/PVDDMA3

to

11*

Channels2x

SPI/I2S**2x

DAC**1x

SDIO**Image

Sensor**1x

SPI1x

USART/LINSmartcard/IrDaModem-CtrlBridgeBridgeJTAG/SW

DebugNested

vect

IT

CtrAlRM

Lite

Hi-Speed

Bus1x

Systic

TimMeartrix

/

Arbiter

(max

72MHz)XTAL

oscillators32KHz

+

4~16MHzInt.

RC

oscillators32KHz

+

8MHzPLLRTC

/

AWUClock

ControlARM

Peripheral

Bus(max

36MHz)20B

Backup

Regs基于Cortex-M3的最小系统什么是最小系统?在尽可能减少上层应用的情况下,能够使系统运行的最小化模块配置。“最小系统”称“嵌入式核心控制模块”更贴切一些。最小系统的组成:①电源、②时钟、③复位电路、④存储系统、⑤调试系统。Cortex-M3MPUFlashSRAMTimerResetJTAGUARTPower基于Cortex-M3的最小系统

时钟模块——通常经ARM内部锁相环进行相应的倍频,以提供系统各模块运行所需的时钟频率输入复位模块——实现对系统的复位电源系统:调试系统:JTAG模块——实现对程序代码的下载和调试UART模块——实现对调试信息的终端显示存储系统:

Flash存储模块——存放启动代码、操作系统和用户应用程序代码

SDRAM模块——为系统运行提供动态存储空间,是系统代码运行的主要区域基于Cortex-M3

的STM32F10x

最小系统电源及控制、复位电路Cortex-M3主要指标:0.19W/MHz,1.25DMIPS/MHz;若达到5DMIPS的性能:Cortex-M3工作频率只需4MHz,功耗0.76W;51单片机,工作频率需60MHz,功耗30W;STM32F103处理器系统频率为72MHz,处理器性能可达到90DMIPS,此时Cortex-M3功耗约14W左右。在性能和功耗上达到了很高的水平!VDDA/VSSA独立电源/地

2.0至3.6V:为ADC、复位、RC振荡器和PLL的模拟部分供电。使用ADC时,VDD不得小于2.4V。VREF

+的电压范围2.4V-VDDA,VREF

-引脚若有必须连接到VSSA。VDD:主电源/工作电压

VSS:地2.0至3.6V:通过内置调压器提供1.8V的电源,供内核使用、3.3V供I/O管脚。VBAT:后备电池供电电源及控制、复位电路STM32内部集成了上电复位POR(Power

On

Reset)/掉电复位PDR

(Power

Down

Reset)电路,该电路始终处于工作状态,保证系统在供电超过2V时工作;当VDD低于设定的阀值(VPOR/VPDR)时,置器件于复位状态,而不必使用外部复位电路。约2.5ms电源及控制、复位电路在VDD电压由低向高上升越过规定的阀值VPOR之前,保持芯片复位,当越过这个阀值后tRSTTEMPO秒(待电源可靠供电),才开始取复位向量,并执行指令。在VDD电压由高向低下降越过规定的阀值VPDR后,将在芯片内部产生复位可编程电压监测器PVD可编程电压监测器PVD(Programmable

Voltage

Detector),监视VDD供电并与阀值VPVD比较,当VDD低于或高于阀值VPVD时将根据外部中断第16线的上升/下降边沿触发设置,产生PVD中断。中断处理程序可以发出警告信息或将微控制器转入安全模式,但需要通过程序开启PVD。电源控制/状态寄存器(PWR_CSR)中的PVOD标志位用来表明VDD是否低于或高于阀值VPVD

。可通过查询控制/状态寄存器RCC_CSR中的复位标志来识别复位源。系统复位系统复位将清除时钟控制器CSR中的复位标志和备用域寄存器之外的所有寄存器。下列事件都将引起复位:NRST:外部异步复位引脚看门狗计时器计时终止(WWDG复位)独立看门狗计数终止(IWDG复位)软件复位(SW复位)低功耗管理复位。三种低功耗模式休(睡)眠模式:只有CPU停止工作,所有外设继续运行,在中断/事件发生时唤醒CPU。调压器1.8V区供电工作。停止(机)模式:允许以最小的功耗来保持SRAM和寄存器的内容。1.8V区域的时钟都停止其他部分工作,PLL,HSI和HSE的RC振荡器被禁能。当外部中断源(16个外部中断线之一)、PVD输出、RTC闹钟、或者USB唤醒信号,退出停止模式。三种低功耗模式待机模式:追求最少的功耗,内部调压器被关闭,这样1.8V区域断电。除了备份寄存器和待机电路,SRAM和寄存器的内容也会丢失。RTC,IWDG和相关的时钟源不会停止。当外部复位(NRST引脚)、IWDG复位、WKUP引脚出现上升沿或者RTC闹钟时间到时,退出待机模式。STM32的时钟系统STM32芯片为了实现低功耗,设计了一个功能完善但却非常复杂的时钟系统。一个步骤,就是开启外设时钟。下图说明了STM32的时钟走向,从图的左边开始,从时钟源一步步分配到外设时钟。高速时钟是提供给芯片主体的主时钟,低速时钟只是提供给芯片中的RTC(实时时钟)及独立看门狗使用。内部时钟是在芯片内部RC振荡器产生的,起振较快,芯片刚上电的时候使用内部高速时钟。外部时钟信号是由外部的晶振输入的,精度和稳定性好,上电之后通过软件配置再转用外部时钟信号。STM32的时钟系统STM32的4个时钟源:高速外部时钟(HSE):外部晶振时钟源,晶振频率4~16MHz,一般用8MHz的晶振。高速内部时钟(HSI):内部RC振荡器产生,频率为8MHz,但不稳定。低速外部时钟(LSE):外部晶振作时钟源,主要提供给实时时钟模块,一般采用32.768KHz。低速内部时钟(LSI):内部RC振荡器产生,也主要提供给实时时钟模块,频率大约为40KHz。STM32的时钟系统以最常用的高速外部时钟为例:①从左端的OSC_OUT和OSC_IN开始,这两个引脚分别接到外部晶振8MHz;②遇到第一个分频器PLLXTPRE,没二分频,继续8MHz;③遇到选择外部HSE还是内部HSI时钟开关PLLSRC,选HSE;④遇到可倍频的锁相环PLL,倍频因子PLLMUL选为9倍,则得到72MHz的PLLCLK时钟;

温馨提示

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

评论

0/150

提交评论