目录

嵌入式开发概述

嵌入式开发概述

目录

一、什么是嵌入式开发

  1. 传统的开发模式(单片机开发):软件——>硬件,软硬件耦合度高;

    嵌入式开发:软件 <——>操作系统<——>硬件。

    操作系统是嵌入式开发的核心,也是它与传统开发的主要区别。

  2. 在嵌入式开发中,前者的软件是应用软件;操作系统本质上也是一个软件,为系统软件。

  3. 应用软件只需调用操作系统提供的函数即可,而在系统软件中,是需要去实现相应的函数。

  4. 嵌入式开发就是在已有的硬件上移植操作系统。

二、嵌入式开发的优缺点

  1. 嵌入式开发的优点:

    (1)解决了传统开发中软硬件耦合度的问题,提高了代码的可移植性。

    (2)提供了很多开源的工具和库,提高了开发效率。

    (3)可以实现多线程、多进程、网络操作,是软件更加智能。

  2. 嵌入式开发的缺点 :成本高

    解决方案:细分市场,把操作系统做到专有性。

三、嵌入式操作系统的组成和分类

  1. 操作系统的组成

    【软件子系统】

    应用程序

    操作系统(协议栈)

    ————————————————————————

    【硬件子系统】

    外围设备:存储器、输入和输出接口

    处理器

  2. 嵌入式操作系统分类

    按收费模式:商用型、免费型

    按实时性:硬实时、软实时、无实时

    (实时性:在规定时间内完成规定的动作,在有需要的时候就可以完成)

四、嵌入式开发的学习路线

应用层开发

1、嵌入式Linux安装及使用(命令)

2、嵌入式Linux开发工具(gcc、gdb、make、git、shell、cmake)

3、嵌入式c语言开发

4、嵌入式Linux c开发(文件io\多任务、网络、数据库)

5、嵌入式c++开发(嵌入式服务器、中间件)

6、嵌入式GUI开发(QT)

(额外+人工智能)

底层开发

7、嵌入式硬件基础(51、STM32)

8、嵌入式硬件开发(crotex-A)

9、嵌入式系统移植(BSP:u-boot)

10、嵌入式Linux内核开发(内存管理)

11、嵌入式底层驱动开发

12、嵌入式操作系统开发

(额外+fpga+lc设计)