资源预览内容
第1页 / 共56页
第2页 / 共56页
第3页 / 共56页
第4页 / 共56页
第5页 / 共56页
第6页 / 共56页
第7页 / 共56页
第8页 / 共56页
第9页 / 共56页
第10页 / 共56页
亲,该文档总共56页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第三讲 MCU及常见MCU外围电路,盛庆华,2020/6/28,电子系统设计与实践,2,MCU MCU分类,2020/6/28,电子系统设计与实践,3,单片机(Microcontroller),MCU : Microcontroller Unit 微控制器,2020/6/28,电子系统设计与实践,4,MCU结构,CPU,RAM ROM,外设,外设,I/O,外设,外设,I/O,一个典型的计算机系统,2020/6/28,电子系统设计与实践,5,2020/6/28,电子系统设计与实践,6,2020/6/28,电子系统设计与实践,7,2020/6/28,电子系统设计与实践,8,2020/6/28,电子系统设计与实践,9,2020/6/28,电子系统设计与实践,10,在电子设计中使用单片机,2020/6/28,电子系统设计与实践,11,MCU的架构,CISC (复杂指令集架构 ) Complex Instruction Set Computer 早期MCU采用 RISC (精简指令集架构) Reduced Instruction Set Computer 新开发的MCU Core绝大多数为RISC,2020/6/28,电子系统设计与实践,12,MCU选型(按数据总线宽度),4 bits (大量、廉价,电子设计竞赛中未见) 8 bits Intel MCS51系列 80C51/52 很多兼容厂家 Freescale(Motorola) S08、S908 Microchip PIC16C5x/6x/7x/8x、PIC18Cxx Atmel AVR系列 ATmega 瑞萨、三星、现代、NEC 义隆、Holtek、Sunplus 国内:中颖、华荣汇、芯唐(Winbond逻辑IC事业部),2020/6/28,电子系统设计与实践,13,16 bits TI MSP430 Freescale S12 Microchip PIC24Cxxx Maxim MaxQ 瑞萨 Sunplus(凌阳),2020/6/28,电子系统设计与实践,14,32 bits Atmel AT91SAM系列 (ARM7内核) ST STM32 TI(Luminary Micro) 的LM3xxxx系列 NXP(Philips) LPC2xxx系列、LPC17xx系列 Samsung 44B0 (ARM7) Atmel AVR32系列 AT32xxx (AVR32内核) (ARM Cortex内核)Cortex-M3/Cortex-M4,有ST的STM32系列、NXP的LPC13xx系列和TI的LM3S系列,2020/6/28,电子系统设计与实践,15,嵌入式处理器(常见),Samsung S3C2440 (ARM9)S3C6400 (ARM11) Marvell PXA27x 、PXA3xx XScale(基于ARMv5T) Freescale I.MX31系列 (ARM11) Freescale Coolfire (68k) Freescale/IBM PPC (PowerPC) Signma Design (ARM9) AMD Au1200 (MIPS) Atmel AT91SAM926x (ARM9) CirrusLogic EP93xx (ARM9) TI OMAP35xx,2020/6/28,电子系统设计与实践,16,嵌入式处理器(常见),ADI ADSP-BF53x/56x (Blackfin 16bits) TI OMAP2、DM64x、达芬奇 (ARM+TI DSP) Intel Pentium-M C-M 、 Core-Duo (x86) Via C7 (x86) Altera NiosII (NiosII soft core) Xilinx PowerPC(硬核)/MicroBlaze 软核 Magiceyes MMSP2 MP25xx (Dual ARM9) ARM Cortex内核(Cortex-A8/Cortex-A9),2020/6/28,电子系统设计与实践,17,MCS51兼容,80C51兼容/增强 Atmel AT89S51/52、AT89C51RD2 NXP P80C51、LPC76x、LPC900 STC、MegaWin TI MSC12xx ADI ADuC Silicon Labs C8051F Maxim DS80C42x ST、Cypress、SST、新唐(Winbond),2020/6/28,电子系统设计与实践,18,MCU ARM Cortex-M 内核,2020/6/28,电子系统设计与实践,19,ARM体系结构概述,ARM,英文全称为Advanced RISC Machines。 ARM首先是一个公司的名称 。 其次,ARM是对一类微处理器的通称。 宽泛地说,ARM是一种技术的名字,即采用ARM处理器的控制技术。,2020/6/28,电子系统设计与实践,20,ARM微处理器的应用领域,工业控制领域 无线通讯领域 网络应用 智能手机 消费类电子产品 成像和安全产品,2020/6/28,电子系统设计与实践,21,ARM体系结构的特点,体积小、低功耗、低成本、高性能。 支持 Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容8/16 位器件。 大量使用寄存器,指令执行速度更快。 ARM处理器共有37个寄存器,分为若干个组(BANK)。 大多数数据操作都在寄存器中完成。 ARM处理器有7种不同的处理器模式 寻址方式灵活简单,执行效率高。 指令长度固定。,2020/6/28,电子系统设计与实践,22,ARM处理器系列,ARM 微处理器目前种类非常丰富。 不同的ARM系列具有不同的用途,每一个系列的ARM 微处理器都有各自的特点和应用领域。 下面分别进行介绍。,2020/6/28,电子系统设计与实践,23,ARM系列微处理器,ARM7 32bits RISC 采用冯诺依曼结构 ARM9 32bits RISC 采用哈佛结构 ARM10E内核为32位RISC处理器,采用了新的体系结构 ARM1136J-S是第一个执行ARMv6架构指令的处理器 Cortex核,2020/6/28,电子系统设计与实践,24,ARM Cortex发布于2005年,为各种不同性能需求的应用提供了一整套完整的优化解决方案,该系列的技术划分完全针对不同的市场应用和性能需求。目前ARM Cortex定义了三个系列:,ARM Cortex系列,2020/6/28,电子系统设计与实践,25,ARM Cortex系列(续),Cortex-A系列:针对复杂OS和应用程序(如多媒体)的应用处理器。支持ARM、Thumb和Thumb-2指令集,强调高性能与合理的功耗,存储器管理支持虚拟地址。 Cortex-R系列:针对实时系统的嵌入式处理器。支持ARM、Thumb和Thumb-2指令集,强调实时性,存储器管理只支持物理地址。 Cortex核Cortex-M系列:针对价格敏感应用领域的嵌入式处理器,只支持Thumb-2指令集,强调操作的确定性,以及性能、功耗和价格的平衡。,2020/6/28,电子系统设计与实践,26,Cortex-M 系列针对成本和功耗敏感的 MCU 和终端应用,M0,M3,M4 ?,软件重用,从一个 Cortex-M 处理器无缝升级到另一个,2020/6/28,电子系统设计与实践,27,Cortex-M 技术,2020/6/28,电子系统设计与实践,28,Cortex-M0,2020/6/28,电子系统设计与实践,29,Cortex-M3,2020/6/28,电子系统设计与实践,30,Cortex-M4,2020/6/28,电子系统设计与实践,31,ARM Cortex 微控制器软件接口标准 (CMSIS) 是 Cortex-M 处理器系列的与供应商无关的硬件抽象层。 使用 CMSIS,可以为接口外设、实时操作系统和中间件实现一致且简单的软件接口,从而简化软件的重用、缩短新微控制器开发人员的学习过程,并缩短新产品的上市时间。,CMSIS,2020/6/28,电子系统设计与实践,32,NVIC(嵌套矢量中断控制器)是 Cortex-M 处理器不可或缺的部分,它为处理器提供了卓越的中断处理能力。 Cortex-M 处理器使用一个矢量表,其中包含要为特定中断处理程序执行的函数的地址。接受中断时,处理器会从该矢量表中提取地址。,NVIC,2020/6/28,电子系统设计与实践,33,在硬件中完成对中断的响应,Cortex-M 系列处理器的中断响应是从发出中断信号到执行中断服务例程的周期数。它包括: 检测中断 背对背或迟到中断的最佳处理 提取矢量地址 将易损坏的寄存器入栈 跳转到中断处理程序 这些任务在硬件中执行,并且包含在为 Cortex-M 处理器报出的中断响应周期时间中。,2020/6/28,电子系统设计与实践,34,NVIC 中的尾链,Cortex-M 处理器通过在 NVIC 硬件中实现尾链技术简化了活动中断和挂起的中断之间的转换,2020/6/28,电子系统设计与实践,35,NVIC 对迟到的较高优先级中断的响应,如果在为上一个中断执行堆栈推送期间较高优先级的中断迟到,NVIC 会立即提取新的矢量地址来为挂起的中断提供服务,2020/6/28,电子系统设计与实践,36,NVIC 进行的堆栈弹出抢占,如果异常到达,NVIC 将放弃堆栈弹出并立即为新的中断提供服务,2020/6/28,电子系统设计与实践,37,Cortex-M3微处理器,Cortex-M3微处理器采用ARMv7-M 架构 。 Cortex-M3系列微处理器的主要特点如下: Thumb-2 指令集架构(ISA)的子集。 哈佛处理器架构,在加载/存储数据的同时能够执行指令取指。 三级流水线。 32 位单周期乘法。 具备硬件除法。 Thumb 状态和调试状态。 处理模式和线程模式。 ISR 的低延迟进入和退出。 可中断-可继续的LDM/STM,PUSH/POP。 ARMv6类型BE8/LE支持。 ARMv6 非对齐访问。,2020/6/28,电子系统设计与实践,38,工作模式和工作状态,Cortex-M3处理器支持两种工作模式: 线程模式 处理模式 Cortex-M3处理器有两种工作状态: Thumb状态 调试状态,2020/6/28,电子系统设计与实践,39,数据类型,Cortex-M3处理器支持以下数据类型: 32 位字 16 位半字 8 位字节,2020/6/28,电子系统设计与实践,40,STM32如何编译和下载程序,编译工具: ARM MDK (Keil) IAR 下载程序: 见pdf,2020/6/28,电子系统设计与实践,41,JLINK驱动安装与MDK环境搭建,MDK工程建立: 见pdf,2020/6/28,电子系统设计与实践,42,意法半导体- STM STM32 F0 xx系列(M0 48MHZ) STM32 Lxxx系列(M3 32MHZ) STM32 F1xx系列(M3 72MHZ) STM32 F2xx系列(M3 120MHZ) STM32 F4xx系列(M4 168MHZ),Cortex-M核芯片,2020/6/28,电子系统设计与实践,43,德州仪器 TI(收购Liuminary) LM3Sxxxx系列(M3) LM4Fxxxx系列(M4) 恩智浦 - NXP LPC11xx LPC12xx系列(M0) LPC13xx LPC17xx LPC18xx 系列(M3) LPC43xx 系列(M4),Cortex-M核芯片,2020/6/28,电子系统设计与实践,44,飞思卡尔 - Freescale Kinetis L系列(M0+) Kinetis X系列、K系列(M4) 爱特梅尔 - Atmel SAM3S/U/N系列(M3) SAM4S系列(M4) 英飞凌 - In
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号