郭震 AI公众号:郭震AI

5 嵌入式系统硬件之常用微控制器

发布日期:

最近更新:

分类: 嵌入式系统

预计阅读: 3 分钟

阅读次数: 0

预计阅读3 分钟
结构重点5 个
图文要点6 张
正文规模1.3k 字

整理说明

这篇内容怎么整理

郭震 · 2026-06-04

独立整理围绕 5 个结构重点拆成环境、步骤、验证点和常见误区,尽量让读者能照着复现。
图文对照保留 6 张和配置、流程、判断结果有关的图片,方便快速定位正文重点。
持续校对工具、模型和命令变化较快,后续优先修正入口、参数和风险提醒。

阅读路线

先按这条路线读

先抓住主线,再回到代码、配置和图文细节,读起来会更稳。

图文要点

先看本文图文节点

按图先建立主线,再跳回正文核对步骤、配置和判断标准。

嵌入式系统硬件之常用微控制器结构图查看大图
嵌入式系统硬件之常用微控制器结构图

嵌入式系统学习要把硬件限制、软件任务、外设接口和运行稳定性一起看。阅读时可以按「常用微控制器类型 -> 微控制器的选择 -> 实际应用案例 -> 智能家居控制系统」建立结构,再回到正文里的代码、案例或指标做验证。

嵌入式系统硬件之常用微控制器核对图查看大图
嵌入式系统硬件之常用微控制器核对图

读完后,用一个真实小任务复查:输入是什么,处理环节在哪里,输出是否可验收;失败时先查「常用微控制器类型」,再查「微控制器的选择」。

在嵌入式系统中,微控制器(Microcontroller, MCU)是核心组件之一,它负责控制和执行特定的任务。继上一篇关于微控制器概述的内容后,本篇将深入探讨常用的微控制器及其特性、应用场景,以及在嵌入式开发中的具体案例。

常用微控制器类型

微控制器种类繁多,以下是一些常见的微控制器类型及其特点:

常用微控制器选择判断卡查看大图
常用微控制器选择判断卡

选择常用微控制器时,先看主频、内存、接口数量、功耗、开发生态、价格和后续维护。

  1. 8051 系列微控制器

    • 经典的8位微控制器架构,适用于低功耗和低成本的应用。
    • 应用场景:简单的控制系统、家用电器、工业控制。
    // 控制LED的简单示例代码
    #include <REGX51.H>
    
    void delay(unsigned int time) {
        while (time--);
    }
    
    void main() {
        while (1) {
            P1 = 0xFF; // 开启LED
            delay(1000);
            P1 = 0x00; // 关闭LED
            delay(1000);
        }
    }
    
  2. PIC 微控制器

    • 由Microchip公司开发,分为8位、16位和32位系列,适合各种应用需求。
    • 应用场景:智能家居设备、汽车电子和工业自动化。
    #include <xc.h>
    
    void main(void) {
        TRISB = 0; // 设置端口B为输出
        while (1) {
            PORTB = 0xFF; // 开启LED
            __delay_ms(500);
            PORTB = 0x00; // 关闭LED
            __delay_ms(500);
        }
    }
    
  3. AVR 微控制器

  • 由Atmel(现为Microchip的一部分)开发,广泛应用于Arduino平台,易于编程和开发。
  • 应用场景:教育项目、快速原型开发。
#include <avr/io.h>
#include <util/delay.h>

int main(void) {
    DDRB = 0xFF; // 设置端口B为输出
    while (1) {
        PORTB = 0xFF; // 开启LED
        _delay_ms(500);
        PORTB = 0x00; // 关闭LED
        _delay_ms(500);
    }
}
  • ARM Cortex-M 微控制器

    • 采用ARM架构,具有更高的性能和低功耗特性,适用于要求较高的嵌入式应用。
    • 应用场景:物联网设备、医疗设备、工业控制系统。
    #include "stm32f4xx.h"
    
    void delay(uint32_t time) {
        for (uint32_t i = 0; i < time; i++);
    }
    
    int main(void) {
        RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; // 使能GPIOA时钟
        GPIOA->MODER |= (1 << 10); // 设置PA5为输出
        while (1) {
            GPIOA->ODR ^= (1 << 5); // 切换PA5的状态
            delay(1000000);
        }
    }
    
  • 微控制器的选择

    选择适合的微控制器需要考虑以下几个因素:

    嵌入系统阅读地图卡查看大图
    嵌入系统阅读地图卡

    读《嵌入式系统硬件之常用微控制器》时,可以先看配图里的任务、概念、练习和判断点,再回到正文补细节。这样更容易判断这篇内容能放到哪个真实场景里。

    • 处理能力:根据项目需求选择合适的位数(8位、16位、32位)。
    • 内存:RAM和Flash的容量要足够,满足程序运行和数据存储。
    • 外设接口:根据应用选择具有适当接口(如GPIO、PWM、ADC等)的微控制器。
    • 功耗:对于电池供电的设备,选择低功耗微控制器至关重要。

    实际应用案例

    智能家居控制系统

    假设我们要构建一个简单的智能家居控制系统,通过Wi-Fi连接微控制器,让用户能够远程控制家中灯光。这里我们可以选择基于ESP8266的微控制器。例如,使用Arduino IDE编写控制代码:

    #include <ESP8266WiFi.h>
    
    const char* ssid = "your_SSID";  // 用户的Wi-Fi SSID
    const char* password = "your_PASSWORD"; // 用户的Wi-Fi密码
    
    WiFiServer server(80);
    
    void setup() {
        Serial.begin(115200);
        WiFi.begin(ssid, password);
        while (WiFi.status() != WL_CONNECTED) {
            delay(1000);
            Serial.println("Connecting to WiFi...");
        }
        server.begin();
        Serial.println("WiFi connected.");
    }
    
    void loop() {
        WiFiClient client = server.available();  
        if (client) {
            String request = client.readStringUntil('\r');
            Serial.println(request);
            client.flush();
    
            // 控制灯光
            if (request.indexOf("/lamp/on") != -1) {
                digitalWrite(LED_BUILTIN, LOW); // 开灯
            }
            if (request.indexOf("/lamp/off") != -1) {
                digitalWrite(LED_BUILTIN, HIGH); // 关灯
            }
          
            // 返回响应
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println();
            client.println("<html><body><h1>灯光控制</h1>");
            client.println("<a href=\"/lamp/on\">开启灯光</a><br>");
            client.println("<a href=\"/lamp/off\">关闭灯光</a><br>");
            client.println("</body></html>");
            client.stop();
        }
    }
    

    在这个案例中,用户通过网页点击链接,可以控制灯光的开关。

    嵌入式系统硬件之常用微控制器应用复盘卡查看大图
    嵌入式系统硬件之常用微控制器应用复盘卡

    复习《嵌入式系统硬件之常用微控制器》时,建议把关键概念、操作步骤和可见结果放在同一页里回看。

    嵌入式系统硬件之常用微控制器应用检查卡查看大图
    嵌入式系统硬件之常用微控制器应用检查卡

    练习《嵌入式系统硬件之常用微控制器》时,建议把输入条件、处理动作和可见结果写在一起,方便下次复查。

    总结

    微控制器在嵌入式系统中扮演着至关重要的角色。通过合理选择微控制器及其编程,可以构建丰富多彩的应用场景。在下一篇教程中,我们将探讨嵌入式系统硬件的外部设备接口,包括如何与传感器和致动器进行通信,以提升嵌入式系统的功能与交互性。

    继续阅读

    从这篇继续找到相关教程

    AI 教程总索引

    常见问题

    读前先确认这三点

    嵌入式系统硬件之常用微控制器适合谁读?

    这是 嵌入式系统入门 系列第 5 / 18 篇,适合正在学习嵌入式系统入门,并且需要把概念落到操作步骤或判断标准里的读者。

    读这篇嵌入式系统入门教程要多久?

    按中文技术文章阅读速度估算,通读大约 3 分钟;如果要跟着复现,建议把命令、配置和结果检查分开做。

    这篇文章里的图文节点怎么用?

    正文里有 6 个图文节点,可以先用它们抓住流程、配置和判断点,再回到对应段落细读。

    分享文章

    转发到常用平台

    微信/朋友圈可先复制链接

    相关教程

    AI 教程总索引

    继续阅读

    继续找到相关 AI 教程

    返回栏目

    Reader Messages

    读者留言

    有问题、补充资料或实测结果,可以直接留下。这里不需要登录。

    最多 800 字

    为了防刷,每条留言会做长度、链接数量和提交频率限制。

    0/800

    留言列表

    0
    正在加载留言...