认识MCU

文章目录

走进MCU

  • MCU即微控制单元,是英文Micro Controller Unit的缩写,又称单片机(Single Chip Microcomputer),是将CPU、存储、外围功能都整合在单一芯片上具有控制功能的芯片级计算机
  • 特点:作为高度集成的微型计算机控制系统,单片机具有系统结构简单、可靠性高、处理功能强、低电压和低功耗、环境适应能力强等特点,已广泛应用于汽车电子、工业控制、仪器仪表、家电等领域

MCU经典架构

中央处理器(CPU)

  • CPU是单片机的大脑
  • 一般由算术逻辑单元(ALU)和控制单元(CU)组成
  • CPU读取、解码和执行指令以执行算术、逻辑和数据传输操作。

存储单元

  • 任何计算系统都需要两种类型的存储器:程序存储器数据存储器
  • 程序存储器,顾名思义包含程序,即要由CPU执行的指令,特点是断电数据不丢失另一方面,数据存储器需要在执行指令时存储临时数据,特点是存取速度快,但断电数据会丢失
  • 通常,程序存储器是闪存(FLASH)或只读存储器(ROM),数据存储器是随机存取存储器(RAM)

通用输入/输出端口(GPIO)

  • 单片机与外部世界的接口由输入/输出端口(I/O端口)提供
  • 开关、键盘等输入设备以二进制数据的形式从用户向CPU提供信息。CPU在接收到来自输入设备的数据后,执行适当的指令并通过LED、显示器、打印机等输出设备做出响应

定时器/计数器

  • 单片机的重要组件之一是定时器和计数器。提供时间延迟和计数外部事件的操作
  • 此外,定时器和计数器可以提供函数生成、脉宽调制、时钟控制等

串口等外设接口

  • 单片机与外部交互数据的接口,主要有串口、SPI口、I2C、CAN、USB、并型数据接口等形式,其中以串口最为常见
  • 每种接口形式的特点不同,通信的复杂程度、数据传输的速度和效率都有所不同

总线

  • 单片机的另一个重要组件------系统总线,是一组连接线,将CPU与其他外围设备(如内存、I/O 端口和其他支持组件)连接起来,完成数据的交互

MCU的工作原理

指令

  • MCU的工作原理是逐条执行预存指令的过程,不同类型的单片机有不同的指令系统
  • 为了让一个单片功能自动完成某项具体任务,必须将所要解决的问题编成一系列的指令,并且这些指令必须是由一个单独的函数来识别和执行的,一系列指令的集合就变成了程序
  • 程序需要预先储存在存储器中,在执行过程中,被CPU从存储器中读取、译码并执行

程序计数器PC

  • 由于程序是按顺序执行的,因此程序中的指令也是一条条地存储,MCU在执行程序时要将这些指令逐个提取并执行,CPU有赖于程序计数器PC来指向程序中每一条指令的存储单元,并一一执行该项指令,PC中的内容自动增加,增加量由这个指令长度决定,每一条都指向下一条指令的起始地址,保证指令顺序执行

外设寄存器

  • 单片机的CPU可以通过指令访问存储器的所有空间,这种访问,根据存储器类型的不同可以只读或者读写
  • 大部分单片机将外设映射的寄存器的也看作是特殊的存储器,与存储区一样分配了相应的地址空间,使用和访问存储器相同的指令,来访问外设寄存器
  • 例如单片机的某组GPIO接口输出映射的寄存器是GPIOC_ODR,地址是0x40020814,如果GPIOC的13端口PC13负责控制LED2(D2)的亮、灭,如果PC13输出高电平,D2熄灭,输出低电平,D2点亮。那么使用汇编指令STR 0x00000000 [0x40020814],意思是向地址 0x40020814 ,写入0,这样PC13会输出0(低电平),从而点亮D2,相应的如果使用指令STR 0x00010000 [0x40020814],则会向地址0x4002 0814写入0x00010000。为"1"的那一位,对应的是PC13的输出,所以,PC13会输出1(高电平),从而熄灭D2

内核架构

  • 内核架构是影响MCU性能的一个关键要素,优秀的运算单元需要更先进的内核架构
  • 几十年前,各大MCU厂商均采用各自的内核,如英特尔采用8051(后被授权给多家半导体公司使用),瑞萨采用RX内核,飞思卡尔(被恩智浦收购)采用PowerPC,MicroChip采用PIC,Atmel(与MicroChip合并)采用AVR,后来。随着ARM公司推出Cortex-M架构并开展了独特的开创IP授权的模式,以其软件代码的共享和高兼容性、高密度指令集等特点,现已逐步占据主导地位

MCU的不同分类模式

两种经典的CPU架构

  • 冯•诺依曼结构
  • 哈佛结构
两种结构的特点
  • 冯•诺依曼结构:
    • 程序存储器和数据存储器为同一个存储器
    • 指令和数据宽度相同
    • 是通用微型计算机的常用的存储结构
  • 哈佛结构:
    • 程序存储器和数据存储器分开
    • 指令和数据宽度不同
    • 执行效率较高
属于冯•诺伊曼结构的MCU
  • Intel公司的8086及其系列处理器
  • ARM公司的ARM7
  • MIPS公司的MIPS处理器等
属于哈佛结构的MCU
  • Microchip公司的PIC系列芯片
  • 摩托罗拉公司的MC68系列
  • Atmel公司的AVR系列
  • ARM公司的ARM9、ARM10和ARM11,Cortex M系列
  • 8051

两种经典的指令集

  • 精简指令集
  • 复杂指令集
  • 复杂指令集(CISC):包含处理复杂操作的特定指令,指令长度不固定,执行需要多个周期
  • 精简指令集(RISC):指令简单而有效,格式和长度通常是固定的,大多数指令在一个周期内可以执行完毕
  • 属于精简指令集的MCU:
    • ARM
    • RISC-V
  • 数据复杂指令集的MCU:
    • 8086
相关推荐
wsoz1 天前
MCU中部署TinyMaix
单片机·mcu·神经网络·嵌入式·tinymaix
香水5只用六神1 天前
【RTOS快速入门】07_同步互斥与通信概述
单片机·嵌入式硬件·学习·操作系统·freertos·rtos·嵌入式软件
爱倒腾的老唐1 天前
01、STM32-嵌入式系统
stm32·嵌入式硬件
码农三叔1 天前
(6-4-02)IMU融合与机体状态估计:综合实战:腿式机器人的IMU关节融合与状态估计(2)
人工智能·嵌入式硬件·机器人·人机交互·人形机器人
qq_397562311 天前
RV1106的安装使用 + linux的编程运行
单片机·嵌入式硬件
良许Linux1 天前
ASIC的设计和制造
单片机·嵌入式硬件·fpga开发·程序员·嵌入式·制造
雨洛lhw1 天前
DMA技术
嵌入式硬件·dma
旭日初扬1 天前
N32H762IIL时钟树
单片机·嵌入式硬件
良许Linux1 天前
汽车电子技术和汽车网络
网络·单片机·嵌入式硬件·汽车·嵌入式·制造
forAllforMe1 天前
STM32 中断分组解析 说明,以及优先级
stm32·单片机·嵌入式硬件