外观
什么是祼机开发
祼机开发的概念
祼机开发是一种在没有操作系统支持的情况下,直接对硬件进行编程的嵌入式开发方式。其核心特点包括高实时性、低资源占用和直接硬件控制。这种方式的特点表现为:
- 没有任务调度器
- 没有线程、进程概念
- 所有功能和流程都由开发者自己管理
这种方式的典型逻辑结构框图如下所示:
裸机开发示例:点灯 + 接收串口数据
下面是一个典型的裸机代码片段。该代码的功能为:根据按键,来控制LED灯的亮灭。
#include "../base.h"
int main(void) {
hardware_init();
while (1) {
if (key_pressed()) {
led_set(LED0, 1);
} else {
led_set(LED0, 0);
}
}
}
对于祼机开发而言,所有的逻辑都在 while(1) 或for(;😉)主循环中轮询处理。这种开发方式的优点有:简单、直观、资源占用小,比较适合简单功能的项目,但一旦系统复杂,就会遇到瓶颈和挑战。