纯干货|最经典的STM32-M3概述!

2017年08月04日 16:02    发布者:ludi
首先,在学习Cortex-M3时,我们必须要知道必要的缩略语。整理如下:AMBA:先进单片机总线架构   ADK:AMBA设计套件AHB:先进高性能总线    AHB-AP:AHB访问端口APB:先进外设总线    ARM ARM:ARM架构参考手册ASIC:行业领域专用集成电路    ATB :先进跟踪总线BE8:字节不变式大端模式    CPI:每条指令的周期数DAP:调试访问端口    DSP:数字信号处理(器)DWT:数据观察点及跟踪    ETM:嵌入式跟踪宏单元FPB:闪存地址重载及断点  FSR:fault状态寄存器HTM:Core Sight AHB跟踪宏单元ICE:在线仿真器    IDE:集成开发环境IRQ:中断请求(通常是外中断请求)ISA:指令系统架构   ISR:中断服务例程ITM:仪器化跟踪宏单元      JTAG:连接点测试行动组(一个关于测试和调试接口的标准)LR:连接寄存器LSB:最低有效位MSB:最高有效位LSU:加载存储单元MCU:微控制器单元MPU:存储器保护单元MMU:存储器管理单元MSP:主堆栈指针NMI:不可屏蔽中断NVIC:嵌套向量中断控制器PC:程序计数器PPB:私有外设总线 同时,还要如下规定:数值1. 4''hC , 0x123  都表示16进制数 。2. #3表示数字3 (e.g., IRQ #3  就是指3号中断) 。3. #immed_12表示一个12位的立即数 。4.  寄存器位。通常是表示一个位段的数值,例如 bit 表示位序号从15往下数到12,这一段的数值。 寄存器访问类型 1.  R  表示只读 2.  W表示只写 3.  RW  表示可读可写(前3条好像地球人都知道) 4.  R/Wc  表示可读,但是写访问将使之清 0 Cortex-M3芯片简介1、芯片的基本结构如下图:file:///C:\Users\郭晓娟\AppData\Local\Temp\ksohtml\wps69FC.tmp.png 2、关于ARMv7的知识--了解在这个版本中,内核架构首次从单一款式变成3种款式:款式A:设计用于高性能的“开放应用平台”——越来越接近电脑了 款式R:用于高端的嵌入式系统,尤其是那些带有实时要求的——又要快又要实时。 款式M:用于深度嵌入的,单片机风格的系统中介绍A:用于高性能的“开放应用平台”,应用在那些需要运行复杂应用程序的处理器。支持大型嵌入式操作系统R:用于高端的嵌入式系统,要求实时性的M:用于深度嵌入的、单片机风格的系统中3、Cortex-M3处理器的舞台高性能+高代码密度+小硅片面积,使得CM3大面积地成为理想的处理平台,主要应用在以下领域:(1)低成本单片机(2)汽车电子(3)数据通信(4)工业控制(5)消费类电子产品4、Cortex-M3概览(1)简介     Cortex-M3是一个 32位处理器内核。内部的数据路径是 32位的,寄存器是 32位的,存储器接口也是 32 位的。CM3 采用了哈佛结构,拥有独立的指令总线和数据总线,可以让取指与数据访问并行不悖。这样一来数据访问不再占用指令总线,从而提升了性能。为实现这个特性, CM3内部含有好几条总线接口,每条都为自己的应用场合优化过,并且它们可以并行工作。但是另一方面,指令总线和数据总线共享同一个存储器空间(一个统一的存储器系统)。     比较复杂的应用可能需要更多的存储系统功能,为此CM3提供一个可选的MPU,而且在需要的情况下也可以使用外部的 cache。另外在CM3中,Both小端模式和大端模式都是支持的。