嵌入式基本开发流程梳理总结

本文回顾了嵌入式开发的演变,从十年前的概念热炒到现今物联网与智能硬件的推动,介绍了嵌入式系统的基本定义及特性。由于功能受限,嵌入式系统通常为专用系统,不具备在线编译能力,因此需要借助交叉编译技术,在宿主机上编译适用于目标平台的程序。此外,计划分享一系列嵌入式开发文章,涵盖基础知识、开发工具和技术,并将深入分析一款RTOS内核。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

嵌入式开发早在10年之前笔者就读本科时,就炒得火热的概念,当时说嵌入式开发将是得到大力发展的行业。一直到最近又有物联网IoT,智能硬件的发展,嵌入式开发再次被推向风口浪尖。下面我们就简单说一下究竟什么是嵌入式开发。

嵌入式开发,一般是指针对某个特定嵌入式系统的开发,嵌入式系统广义上可以认为是功能受限的计算机系统。由于是功能受限的计算机系统,所以一般都是专用的系统,而不像我们平时用的个人电脑(PC)那样是通用计算机,而且由于功能的受限,嵌入式系统一般不支持在线编译功能:即可以在自己平台上编译、运行自己平台上的程序,换句话说有在该平台(HW --> OS --> Compiler)上可以运行的编译器。嵌入式平台开发板各种各样,下图是一个常见的例子。

常见嵌入式开发板

既然不能在嵌入式系统上实现在线编译,那怎么实现针对嵌入式系统功能的编译与调试呢?答案就是在嵌入式开发领域家喻户晓的交叉编译。交叉编译实际是指在一个计算机平台上(Host),编译适用于另一个平台上(Target)运行的程序。Host主机一般就是我们常用的PC机,Target就是各种各样的嵌入式系统,不同的嵌入式系统一般需要不同的交叉编译器,像笔者目前常用的arm-none-eabi-gcc就是针对arm平台的交叉编译器。交叉编译的流程一般如下图:

 

交叉编译、调试、运行流程框图

本文计划是写一系列的嵌入式开发文章,会从基础的嵌入式概念到具体的嵌入式开发工具技术,最终并计划将笔者之前私下开发的一款RTOS内核(目前仅为学习目的而编写)分析给读者,使读者了解如何从零开发一个麻雀虽小五脏俱全的RTOS,感兴趣的读者可以关注一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值