当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > 嵌入式开发要学习哪些课程

嵌入式开发要学习哪些课程 时间:2020-10-20      来源:华清远见

嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。

下面我们详细分析下嵌入式系统

1、以应用为中心

做嵌入式产品的目的就是为了应用,像智能音响、智能扫地机器人等

2、以计算机技术为基础

嵌入式系统的本质就是一个完整的计算机系统,只是将其嵌入到了某一个设备当中

3、软硬件可裁剪

不同的嵌入式产品,所需的功能不同,我们可以根据需求将不需要的软硬件裁减掉以减少成本,比如:智能音响和考勤机,所需要的就不一样

4、对功能、可靠性、成本、体积、功耗等严格要求

比如我们的手环,功耗就需要比较低;车载音响,抗颠簸能力需要强等

5、专用计算机系统

嵌入式产品的软硬件都是为某一个具体产品量身定制,所以是专用计算机。

了解了嵌入式系统,你要想从事嵌入式开发,我们需要掌握什么技术呢?

1、编程基础

Linux相关操作:linux开源,嵌入式产品离不开linux

C语言:嵌入式产品中大多用编程语言是C语言

数据结构:学习任何语言都离不开它,锻炼我们的编程思维

参考书籍如下:《C程序设计语言》,《C语言核心技术》,《数据结构与算法分析--C语言描述》,《C和指针》,《C陷阱与缺陷》,《C++ Primer》

2、应用开发

学习linux系统提供的接口如何使用,能够使用linux的接口开发出实用性的APP

IO:输入输出,比如读写硬盘,我们不用管硬盘长什么样,直接调用读写函数就可以

进程:我们不能只有一个APP,多个APP就需要涉及多进程多线程。

进程间通信:多个APP之间的信息通信,需要用到网络编程。、共享内存、消息队列等

C++、QT编程:APP界面,嵌入式部分产品有的有界面,有的是没有界面的,可以选学。

参考书籍有: 《UNIX环境高级编程》, 《Unix网络编程》

3、ARM开发

Linux系统本身的开发

ARM体系结构:这一阶段才是真正的嵌入式编程,首先我们要选择一款嵌入式CPU和一款嵌入式开发平台,目前ARM 嵌入式CPU应用最广泛,今年ST公司出的MP1板也很不错,可以跑linux也可以用来学习单片机知识。这一阶段重点是学习嵌入式CPU的裸机编程,熟悉中断、定时器、串口、i2c、LCD屏、触摸屏等常用嵌入式外围设备的硬件工作原理,以及如何使用C语言来编程、控制这些硬件。这一阶段除了要学习对硬件编程之外,还需要学习嵌入式硬件的知识,但是对于嵌入式软件工程师来讲,重点是学习硬件的工作原理,在掌握硬件工作原理的基础上,对硬件进行编程控制。这和硬件工程师学习的侧重点有所不同。这一阶段对应的学校的课程主要包括模拟电路、数字电路、微机原理和单片机。这一阶段重点是要看CPU的芯片手册

系统移植:这一阶段主要学习带有操作系统的嵌入式系统的构建,包括系统的启动流程、Bootloader的工作流程、UBOOT的编译、裁剪与移植、嵌入式Linux内核的裁剪、移植与编译,嵌入式根文件系统的定制、BootLoader、内核和根文件系统的烧写。 这一阶段的主要目的是掌握带有操作系统的嵌入式系统的构建和烧写过程,以及对嵌入式系统软件的总体构成有个整体认识

驱动开发:这一阶段主要学习底层嵌入式Linux设备驱动程序开发设计,包括常用的字符设备驱动、块设备驱动、平台总线、输入子系统、触摸屏设备驱动以及驱动程序开发中的核心技术

以上学习完,就可以完成一个综合的项目了,比如智能家居、智能小车等。不过随着时代的发展,现在5G\物联网\AI都是高速发展,很多嵌入式产品也在结合这些技术,可以再扩展下这方面的技术。

上一篇:Linux工程师项目有哪些

下一篇:嵌入式培训项目都有哪些

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2022 北京华清远见科技集团有限公司 版权所有 ,京ICP备16055225号-5京公海网安备11010802025203号

回到顶部