嵌入式入门基础:概念、硬件、开发软件全讲解
一、什么是嵌入式?
嵌入式系统 = 硬件 + 固件/软件,是嵌入到各类设备内部、专门用于完成特定功能的专用计算机系统。
简单来说:嵌入式设备不是电脑、手机这种可以随意安装软件的通用设备,而是藏在产品内部、专一干活的微型专用小电脑。
嵌入式系统的核心器件是微型控制器(单片机),可以存储程序代码、运行自定义程序,精准完成控制、采集、交互等指定功能。
二、什么是代码?
代码是人类写给单片机、芯片的专属指令,通过标准化的编程语言编写,用来告诉硬件需要执行的具体操作。
芯片无法识别中文和人类语言,只能识别二进制0和1,而代码就是衔接人和硬件的桥梁,我们编写代码,软件将其编译为机器语言,硬件即可精准执行指令。
三、嵌入式学习必备硬件
学习嵌入式必须搭配开发板硬件,代码需要依托硬件才能运行。没有硬件,代码只是纯文字毫无意义;仅有硬件没有代码,硬件也无法实现任何功能。
新手入门首选经典芯片:STM32F103C8T6,配置亲民、资料最全、适配所有入门教程:
- Flash存储空间:64K(存储程序代码)
- RAM运行内存:20K(程序运行缓存)
- 最高主频:72Mhz(运行速度)
- 成本低廉,适合零基础入门练习
经济条件允许,且有一定基础想要深入学习,可以选购进阶开发板。
建议有一定基础,并且有兴趣深入学习再确定入手,以免花费大量金钱而没有足够的回报。
四、嵌入式两大主流开发软件
硬件需要配套开发软件写入、编译、调试代码,目前STM32嵌入式开发主流两款IDE(集成开发环境,集成编辑器、编译器、调试、烧录功能):Keil MDK-ARM、STM32CubeIDE。
1. Keil MDK-ARM(uVision)
由ARM公司出品,是国内高校教学、新手入门、企业老项目最常用的嵌入式开发工具。
✅ 核心优点
- 兼容性极强,支持STM32、51、NRF等绝大多数ARM架构单片机
- 全网教程、例程、问题解决方案资源丰富,新手踩坑少
- 编译器优化成熟,生成程序体积小,ST-Link/J-Link调试稳定
- 工程搭建简单,适配裸机开发、FreeRTOS实时系统项目
❌ 核心缺点
- 商业收费软件,免费Lite版存在32KB代码容量上限,大型工程无法编译
- 编辑器功能老旧,代码自动补全弱,界面简洁复古
- 仅支持Windows系统,不支持Mac、Linux
常规开发流程:
CubeMX图形化配置引脚/时钟/外设 → 生成Keil工程 → 编写C语言业务代码 → 编译调试 → 烧录到开发板
⚠️版本重要注意事项:
Keil 5.37/5.38及以上高版本,不再预装AC5编译器,仅保留AC6编译器。AC6语法校验更严格,会导致大量老教程、老工程编译报错;新手入门建议使用5.36及以下自带AC5的版本,避免兼容问题。
2. STM32CubeIDE
ST意法半导体官方免费开发工具,基于Eclipse+GCC编译器,专为STM32全系芯片量身打造。
✅ 核心优点
- 完全免费无版权、无代码大小限制,个人学习、商业项目均可无偿使用
- 内置CubeMX配置工具,无需单独安装,一键配置硬件参数、生成初始化代码
- 跨平台适配,支持Windows、Linux、MacOS系统
- 编辑器功能强大,代码提示、全局搜索、代码跳转体验优于Keil
❌ 核心缺点
- 仅支持STM32芯片,不兼容其他品牌单片机,通用性差
- 基于Eclipse内核,占用内存高,低配电脑易卡顿、启动慢
- 国内老旧教程多基于Keil,CubeIDE学习资料相对偏少,部分插件存在小bug
常规开发流程:
新建工程 → 内置CubeMX配置芯片引脚、时钟、外设 → 自动生成初始化代码 → 编写业务代码 → 编译调试 → ST-Link一键烧录
五、软件官方下载与安装注意事项
1. Keil MDK 官方下载
官方下载地址:https://www.keil.com/download/product/
进入页面选择 MDK-Arm 版本下载,安装核心注意:全程安装目录无中文、无空格、无特殊符号,否则会出现编译报错、程序异常等未知问题。
普通免费社区版存在代码容量限制,大型工程需要工具激活解锁完整权限;Keil工程目录为虚拟目录,和本地文件夹不完全对应。
2. STM32CubeIDE 官方下载
官方下载地址:https://www.st.com/en/development-tools/stm32cubeide.html
进入官网根据自身电脑系统(Windows/Linux/Mac)选择对应安装包,按需注册账号即可免费下载。
下载解压后,将安装包放置在全英文目录下,正常一键安装即可。CubeIDE为真实文件目录,工程资源和本地文件夹一一对应,管理更直观。
六、新手学习补充建议
- 市面上STM32F103开发板品类繁杂,做工、芯片质量参差不齐,购买时尽量选择正规品牌,避免硬件BUG影响学习。
- 复杂项目、仿真调试需要搭配仿真器,正版仿真器成本较高,新手入门可先用普通烧录工具过渡。
- 日常开发可搭配FlyMCU、AIapp-ISP等辅助工具,兼具程序烧录、串口通信调试功能,适配绝大多数STM32工程。
- 入门学习可获取开发板配套资料,结合网络教程,从基础点灯代码开始,逐步练习编译、烧录、调试全套流程。