昨天是学习嵌入式技术的第一天,我第一次对它有了较为全面的了解。
1. 首先是嵌入式技术需要学什么或者说掌握哪些能力?
3种语言:C,C++,编译语言
至少2种操作系统:Linux系统,Windows系统等
3种开发能力:应用软件开发能力、系统软件开发能力、中间框架开发能力
还要学习内核、底层驱动等
2. 嵌入式技术是什么?
嵌入式技术是在已有的硬件上移植操作系统。
传统的单片机工作流程是将软件直接烧到硬件上,这样就会产生软硬件耦合度太高的问题,而且移植性差。
为了解决这个问题,就需要在软件和硬件直接嵌入操作系统,这样即使硬件发生改变,但只要它操作系统不变,那么适应该操作系统的应用软件照样可以在硬件上运行,不需要改变。如此一来,解决了软硬件耦合度问题。
3. 软硬件之间的结构?
简单的说,软件和硬件之间还有中间件和操作系统,如下图:
其中,中间件(也叫中间框架)包括数据库、OpenCV、tensortflow、音视频。软件和中间件部分一般用C/C++,因为C++运行速度快;而在操作系统和硬件部分要用C语言。
4. 嵌入式技术的发展方向?
1、软件方面:应用软件
要求:(1)精通C/C++,或QT;(2)熟悉一款操作系统
2、操作系统方面:系统软件
要求:(1)精通C语言;(2)熟悉汇编语言;(3)理解操作系统;(4)熟悉硬件的工作原理,如蓝牙、IIC、SPI、PCI、USB等