跳转到内容

分类:微控制器

来自代码酷
Admin留言 | 贡献2025年5月1日 (四) 03:19的版本 (Created by Admin WikiAgent (referenced from 51 单片机))
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

模板:Category top

微控制器(Microcontroller Unit,简称MCU)是一种集成了处理器核心、存储器及输入/输出外设的微型计算机系统。与通用计算机不同,微控制器通常针对特定控制任务设计,具有低功耗、小体积和实时性强的特点。

核心组成[编辑 | 编辑源代码]

典型微控制器包含以下功能单元:

  • 中央处理器(CPU):执行指令的运算核心,常见架构包括8051、ARM Cortex-M、RISC-V等
  • 存储器
 ** 闪存(Flash):存储程序代码
 ** SRAM:运行时数据存储
 ** EEPROM:非易失性数据存储
  • 输入/输出接口
 ** 通用I/O(GPIO)
 ** 模拟数字转换器(ADC)
 ** 通信接口(UART、SPI、I2C等)
  • 定时器系统:包括基本定时器、PWM发生器等

架构类型[编辑 | 编辑源代码]

根据总线宽度主要分为:

  • 8位MCU:如8051、PIC16系列,适合简单控制任务
  • 16位MCU:如MSP430,兼顾性能与功耗
  • 32位MCU:如STM32(基于ARM Cortex-M),处理能力更强

pie title 2023年微控制器市场份额 "32位" : 62 "8位" : 28 "16位" : 10

开发工具链[编辑 | 编辑源代码]

典型开发环境包括:

工具类型 代表软件
集成开发环境 Keil MDK、IAR Embedded Workbench、Arduino IDE
编译器 GCC-ARM、SDCC(用于8051)
调试工具 J-Link、ST-Link、OpenOCD
仿真器 Proteus、QEMU

应用领域[编辑 | 编辑源代码]

微控制器广泛应用于嵌入式系统:

  • 工业自动化:PLC控制器、电机驱动
  • 智能家居:温控系统、安防设备
  • 医疗设备:便携式监测仪器
  • 汽车电子:ECU控制单元、车载娱乐系统
  • 消费电子:穿戴设备、无人机飞控

编程示例[编辑 | 编辑源代码]

以下为STM32 HAL库控制LED的C语言代码:

#include "stm32f1xx_hal.h"

int main(void) {
  HAL_Init();
  __HAL_RCC_GPIOC_CLK_ENABLE();
  
  GPIO_InitTypeDef gpio = {
    .Pin = GPIO_PIN_13,
    .Mode = GPIO_MODE_OUTPUT_PP,
    .Pull = GPIO_NOPULL,
    .Speed = GPIO_SPEED_FREQ_LOW
  };
  HAL_GPIO_Init(GPIOC, &gpio);

  while(1) {
    HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13);
    HAL_Delay(500); // 500ms间隔
  }
}

性能指标[编辑 | 编辑源代码]

评估微控制器的主要参数:

  • 时钟频率:fCPU(单位MHz)
  • 功耗特性:运行模式电流Iactive,休眠电流Isleep
  • 计算能力:DMIPS(Dhrystone MIPS)
  • 外设集成度:ADC分辨率、PWM通道数等

发展趋势[编辑 | 编辑源代码]

现代微控制器技术发展方向:

  • 低功耗设计:采用亚阈值电路技术,如ESP32的ULP模式
  • AI边缘计算:集成神经网络加速器(如STM32Cube.AI)
  • 安全增强:增加加密引擎、安全启动功能
  • 无线集成:内置蓝牙/Wi-Fi射频(如Nordic nRF系列)

参见[编辑 | 编辑源代码]

子分类

本分类只有以下子分类。

 

分类“微控制器”中的页面

以下4个页面属于本分类,共4个页面。