STM32与Cortex-M3简介.ppt
武汉力源2007年七月,ST Cortex-M3 培训,什么是STM32?,新的基于ARM内核的32位MCU系列内核为ARM公司为要求高性能、低成本、低功 耗的嵌入式应用专门设计的Cortex-M3内核标准的ARM架构超前的体系结构高性能低电压低功耗创新的内核以及外设简单易用/自由/低风险,管脚,软件和外设全线兼容FLASH32KB,64KB,128KBRAM6KB,10KB,20KB封装LQFP-48/LQFP-64/LQFP-100/BGA-100电压范围2.0到3.6VI/O电压容限为5V,STM32系列介绍,STM32系列介绍,72 MHz CORTEX-M3 CPUWide offer 32KB-512KB Flash 6Kb-64KB RAM,Flash Size(bytes),256 K,512K,100 pins LQFP(14x14)/BGA,32 K,64 K,64 pins LQFP(10 x10),48 pins LQFP(7x7),144 pins LQFP(20 x20)/BGA,0 K,未来发展方向,CORTEX M3,STM32Samples NOWProd Oct 07,STM32 prod Q2/08Samples Dec 07Prod Q2/08,STM32F10 x的两条产品线,STM32F101“基本型”系列,STM32F103“增强型”系列,在32位的FLASH MCU中性能最强整体信号处理方面胜过DSP解决方案出众的控制和连通性 非常适合低电压/低功耗的应用场合,16位处理器的价格却拥有32位的性能STM32系列中的入门级产品非常适合低电压/低功耗的应用场合,STM32F10 x的两条产品线,Both lines have up to:,5 x USART,2 x SPI,2 x I2C,RTC,11+DMA,2xWDG,5 x 16-bit TIMERS,80%GPIO ratio,12b ADC(1s)Temp sensor,36MHz CPU,Up to 48KB SRAM,Up to 512KB FLASH,Up to 64KB SRAM,CAN,USB,ACtimer,EMI*,2x12b ADC(1s)Tempsensor,DAC*,72MHz CPU,Int 8 MHz RCInt 32 kHz RC,POR/PDR/PVD brown out,“基本型”系列,“增强型”系列,EMI*,DAC*,I2S*,*只有在Flash大于256KB(包含)的芯片上才包括DAC,EMI(144 pins),I2S,SDIO,SDIO*,STM32F103“增强型”系列,2V-3.6V 供电电压5V I/Os 电压容限出色的时钟安全模式带有唤醒功能的低功耗模式内部RC嵌入的RESET-40/+85C(工业级),*仅限144脚的封装,*只有在Flash大于256KB(包含)的芯片上才包括DAC,EMI(144 pins),I2S,SDIO,图象传感器,STM32F101“基本型”系列,2V-3.6V 供电电压5V I/Os 电压容限出色的时钟安全模式带有唤醒功能的低功耗模式内部RC嵌入的RESET-40/+85C(工业级),*只有在Flash大于256KB(包含)的芯片上才包括DAC,EMI(144 pins),I2S,SDIO,图象传感器,6 KB RAM*,6 KB RAM*,STM32F103“增强型”系列,Flash Size(bytes),128 K,256 K,512 K,100 pins LQFP/BGA,STM32F103Rx20 KB RAM,STM32F103Rx20 KB RAM,STM32F103Cx20 KB RAM,32 K,64 K,STM32F103Rx64 KB RAM,STM32F103Vx20 KB RAM,STM32F103Vx64 KB RAM,STM32F103Vx20 KB RAM,STM32F103Vx64 KB RAM,3xUSART3x16-bit timer2xSPI,2XI2CUSB,CAN,PWM2xADC,64 pins LQFP,48 pinsLQFP,2xUSART2x16-bit timer1xSPI,1xI2CUSB,CAN,PWM2xADC,5xUSART5x16-bit timer2xSPI,2XI2CUSB,CAN,PWM2xADC,2xDAC,I2SEMI(144 pins only),STM32F103Rx64 KB RAM,144 pins LQFP/BGA,STM32F103Zx64 KB RAM,STM32F103Zx64 KB RAM,STM32R103Zx64 KB RAM,STM32F103Cx10 KB RAM,STM32F103Rx10 KB RAM,*32kB devices exist w/o the CAN and USB,with 6kB of RAM,0 K,Samples April 07Production Oct 07,Samples Dec 07Production Q2 08,STM32F101“基本型”系列,Flash Size(bytes),128 K,256 K,512 K,100 pins LQFP,STM32F101Rx10 KB RAM,STM32F101Rx16 KB RAM,STM32F101Cx10 KB RAM,32 K,64 K,STM32F101Rx32 KB RAM,STM32F101Vx16 KB RAM,STM32F101Vx32 KB RAM,STM32F101Vx10 KB RAM,STM32F101Vx48 KB RAM,3xUSART3x16-bit timer2xSPI,2XI2C,64 pins LQFP,48 pins LQFP,2xUSART2x16-bit timer1xSPI,1xI2C,5xUSART5x16-bit timer2xSPI,2XI2C,2xDAC,EMI(144 pins only),144 pins LQFP,STM32F101Zx32 KB RAM,STM32F101Zx48 KB RAM,STM32F101Cx6 KB RAM,STM32F101Rx6 KB RAM,Samples April 07Production Oct 07,Samples Dec 07Production Q2 08,STM32 通用平台,STM32 概念标准的 ARMTM Cortex-M3 内核高性能外设提供两个完整的产品系列开发工具以及软件支持,各系列产品全面兼容,Family,Tools,Periphs,Core,优点 可升级的体系结构 适用你所有的应用 给用户相同的“外观和感受”统一的软件和开发投入,Cortex-M3 处理器,集成了内核和高级系统外设的分级处理器 Cortex-M3 内核哈佛体系结构拥有分支预测功能的三级流水线 Thumb-2 指令集和传统的 Thumb指令集带有 硬件除法和 单信号周期乘法的ALUCortex-M3 处理器Cortex-M3 内核可配置的中断控制器 总线矩阵先进的调试组件 可选择的 MPU&ETM,Cortex-M3 处理器概述,哈佛结构指令总线和数据总线分离,允许并行地取指和数据存储1.25DMIPS/MHz,0.19mW/MHzThumb-2指令集拥有32位的性能和16位的代码密度单周期乘法和硬件除法Cortex-M3核内部集成了嵌入式高速中断控制器:低中断响应时间,最低可达6个CPU周期(内部中断)从低功耗模式被唤醒也只需6个CPU 周期相比于ARM7TDMI,Cortex-M3内核要快35%且减少了45%的代码,Cortex-M3 处理器概述,三级流水线-取指,解码和执行单信号周期乘法硬件除法-UDIV&SDIV-指令执行需要2到12周期,取决与被除数与除数-两者越相近指令完成越快-指令可以被中断(丢弃/重启),Cortex-M3 处理器概述,Cortex-M3 VS ARM7:主要参数比较,Cortex-M3 附加的特性简化了跟踪调试接口的管脚,从9脚减少到 2 或 3脚硬件中断处理不需要汇编代码综合的原子位操作改进了数据存储 扩展的数据观测点&Flash 保护技术嵌入式的睡眠控制和掉电模式可选择的小型的存储器保护单元(MPU)和 嵌入式跟踪宏单元(ETM),出色的功耗表现,高性能并不等于高功耗,STM32提出3种主要的能耗方案:Run模式:高动态功效Standby模式:极低的功耗能够工作在由电池直接供电的低电压状态下在Run模式下,以最高的72MHz速度全速在FLASH中运行,STM32的功耗也只有36mA(0.5mA/MHz)。在Standby模式典型功耗值更是低到2uA。Battery能够提供2.0到3.6V的电源电压,出色的功耗表现,STM32拥有三种不同的低功耗模式和一个通用的超频方案使用户可以相对于性能优化功耗。STM32内部嵌入了一个实时时钟(RTC),它可以由一个32KHz的石英晶振或内部RC提供。实时时钟拥有自己独立的供电部分,可以由一个专门的纽扣电池或主电源相互交替供电。它的典型功耗值在3.3V时为1.5uA。且带有20B的数据备份区。从低功耗模式启动的启动时间典型值比从Stop模式启动的启动时间短10us,而从Standby模式重启时间典型值为40us。,可以在的低电压运行Run模式运行在FLASH中功效为0.5mA/MHz从Stop启动10us从Standby启动为40us复位电路始终有效,出色的功耗表现,STM32F10 x:Low power,内置式的管理单元减少了对外部器件的需求:上电复位,低电压检测,掉电检测,带有独立时钟的看门狗计时器一个主晶振驱动整个系统,高集成度,廉价的4-6MHz晶振驱动CPU,USB和所有外设嵌入式PLL生成各种频率可选择的为RTC提供的32KHz晶振嵌入式的8MHz RC可以被用作主时钟出厂前校正附加的可以为RTC或看门狗提供时钟的低频RC 在LQFP100封装芯片的基础系统上只需要7个外部无源器件,先进、创新的外设,STM32采用双APB(先进外设总线)结构,每条总线都是高速APB总线(最高可到CPU的频率)。外设通过连接到这种总线结构提高了外设的速度。,标准的 ARMTM 体系结构-成熟的体系,便于开发世界范围内有广泛的第三方支持-大量的开发工具以供选择(Keil,IAR,Raisonance,Hitex)许多工程师培训项目使用从ST获得的免费的固件库,广泛的工具和固件库支持,最大减少你的设计时间,USB接口开发包,完整的有文档的源文件,全部经过测试的C源代码,与大多数ARM的IDE工具兼容支持所有USB传输模式:控制传输(通用器件管理任务),HID Mouse/操纵杆适用的中断转传输,大容量存储器适用的批量转输,Voice Speaker/micro适用的同步传输。DFU(通过USB固件升级),虚拟串行通信端口(CDC类,仿真的 RS232),Free from ST web,订货信息,开发工具,STM3210B-EVAL,STM32 评估板,STM3210B-SK/KEIL,Keil 启动套件,STM3210B-PREMIER,STM32 演示板,编号,说明,支持SRM32的开发环境IDE,STM32F10XXX 编程仿真器,使用说明:STM3210B-EVAL 评估板在出厂时已经在内部的FLASH中装载了范例和DFU,范例需要的所有文件都装载在SPI FLASH中。每次复位(上电,外部复位等)范例都将运行。要运行DFU,KEY按键在复位是必须保持按下。如果STM3210B-EVAL评估板在出厂时没有编程,示例程序被擦除或SPI FLASH内容被修改,DFU可以用来载入那些文件。这些范例文件,USB库和别的固件可以从ST的网站上下载:.,STM3210B-EVAL简介,STM3210B-EVAL功能框图,电源管理:评估板可以用外部的+5V电源或USB连接器供电,所有别的电压都可以通过板上的电压转换器提供。时钟:STM3210B-EVAL评估板上有两个时钟源为嵌入式RTC提供时钟的32KHz晶振为STM32F10 xxx芯片提供时钟的8MHz晶振复位控制:复位可以通过硬件和软件生成复位键:按下时RESET有效JTAG复位,STM3210B-EVAL特性(一),STM3210B-EVAL特性(二),JTAG调试接口 软件调试可以通过标准的ARM JTAG连接器进行:连接到标准的ARM主接口的20-pin IDC接口串行线调试接口串行线调试口(SWD-DP)提供一个两脚(时钟+数据)的接口与AHP-AP口相连。显示设备LCD:STM3210B-EVAL评估板上有一个彩色LCD模块,它连接到SPI2外设接口。LED:板上有4个通用LED。,STM3210B-EVAL特性(三),接口RS232:STM3210B-EVAL评估板提供两个板上RS-232串口。CAN:STM3210B-EVAL评估板支持CAN2.0A/CAN2.0B-适应基于一个3.3V的CAN收发器的CAN总线通讯。支持高速模式和倾斜控制模式,而且能通过设定一个特定的跳线被选定。USB:STM3210B-EVAL评估板由于嵌入了USB外设,可以支持全速USB2.0通讯。电机控制STM3210B-EVAL评估板支持电机控制感应器,它经由一个34脚的接口发送所有必须的控制信号到电机驱动板,并接收从电机驱动板的反馈信号。IrDASTM3210B-EVAL评估板支持IrDA通信。接口通过USART3。,其他外设操纵杆:带有选择按键的四向操纵杆。按键:板上提供下列按键KEY:用户按键TAMPER:用户按键 WAKEUP:用来将处理器从低功耗模式唤醒的按键10位模数转换器(ADC)可变电阻:ADC通道3连接到一个板上的可变电阻,可变电阻提供0-3.3V的电压范围。音频STM3210B-EVAL评估板支持录音(WAV格式)和回放功能。存储器STM3210B-EVAL评估板有两个不同的存储器:一个64Mbit的SPI FLASH存储器和一个64Mbytes的MSD,它们都连接到SPI1上。温度感应器STM3210B-EVAL评估板包括一个I2C温感,它连接到I2C外设接口。,STM3210B-EVAL特性(四),5 reasonsto chooseCortex-M3,Performance,OptimizedMemory,PowerfulDebugging,Real time,PowerManagement,THANK YOU,