让嵌入式“嵌入”你的生活
一、什么是嵌入式系统
嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
二、生活中嵌入式
1)应用领域
2)嵌入式系统实例-智能手机系统
3)嵌入式系统实例-3G 手机移动视频监控系统
4)嵌入式系统实例-银行ATM 视频监控系统
随着“互联网时代”向“物联网时代”的过渡,作为物联网的“中枢神经”——嵌入式系统的持续发展更是成为决定物联网是否能够有效实施的关键环节,而目前嵌入式方向软件研发人才的匮乏却俨然成为物联网发展的一大瓶颈。造成这种情况的原因
一方面是由于目前我国高校的计算机教育普遍以应用软件为主,很少涉及嵌入式软件的课程,因此企业很难招聘到马上可以投入嵌入式软件开发的实战型人才;
另外一方面是因为嵌入式领域门槛相对较高,知识要求比较全面,而且需要一定的实验环境和有经验的人进行指导。
三、如何学好嵌入式
要想学好嵌入式,首先要解决两个问题:学什么?怎么学?
软硬件系统架构
1、学什么
1)知识结构
熟悉C/C++语言,有VC 开发能力
有汇编语言基础
能阅读基本硬件原理图
嵌入式处理器与裸机程序开发
Linux 系统管理
Linux 应用程序开发
Linux 驱动程序开发
Linux 内核开发与系统移植
2)处理器
ARM 处理器工作模式
ARM 系统寄存器
ARM 寻址方式
ARM 汇编指令集
ARM 环境C 语言编程
ARM 中断与异常
ADS 集成开发环境
裸机程序开发(串口、LCD 、时钟、LED 、按键„„)
3)系统管理
. Linux定制安装
Linux命令详解
samba 、nfs 、tftp 、wireshark 使用
Shell编程
4)应用程序开发
GCC 、GDB 、Makefile
文件、时间编程
多进程、多线程程序设计
进程间通讯
网络编程
QT 图形化应用程序开发
Android 图形化应用程序开发
7)内核开发
Linux 内核配置与裁剪
Linux 内核模块开发
根文件系统制作
进程子系统
内存子系统
Proc 文件系统
系统调用
内核定时器
内核异常分析
8)驱动程序开发
字符设备驱动程序
总线、设备、驱动模型
硬件访问技术
中断处理
Input 设备驱动
Platform 驱动程序
PCI 、USB 驱动程序
网卡驱动程序
摸屏驱动程序
2、怎么学
这么多的知识,该怎么学啊?做好3点:a) 学习顺序;b) 学习资料;c) 实践。
1)学习顺序
嵌入式处理器与裸机程序开发
Linux 系统管理
Linux 应用程序开发
Linux 内核开发基础
嵌入式Linux 环境搭建
Linux 驱动程序开发
深入学习Linux 内核
2)学习资料
“老师,请给我推荐几本学习嵌入式Linux 的好书”现实情况:嵌入式Linux 的书籍多而杂,但好书并不多,大家要学好嵌入式Linux ,需要的也并不多,10本足矣。这10本书分为两类:
a. 业界优秀理论教材
b. 中软内部实验教材
理论教材:
实验教材:
《中软课程1-嵌入式体验入门班实验手册》
《中软课程2-嵌入式LINUX 应用开发班实验手册》
《中软课程3- ARM系统基础班实验手册》
《中软课程4- ARM系统深入班实验手册》
《中软课程5-嵌入式LINUX 内核驱动基础班实验手册》
《中软课程6-嵌入式LINUX 驱动开发深入班实验手册》
《中软课程7-嵌入式LINUX 系统移植专题班实验手册》
《中软课程8-嵌入式LINUX 高级项目班项目手册》
《中软课程9- Android系统开发精品班实验手册》
《中软课程10- Android高级项目班实验手册》
3) 实践
光看不做是学不好嵌入式的!!!
保证每个知识点都有实验可做,且必须做!!!
(具体必修实验安排参考相关培训班实验手册)
硬件资源
a. 学习嵌入式可不可以不要开发板?
不可以
b. 可以使用哪些开发板来配合中软课程?
中软课程分为6410版本和2440版本,2440开发板或6410开发板均可配合中软课程学习
c. 除了开发板还需要一些什么硬件?
如果你的电脑没有串口和并口,还需要分别准备USB 转串口线和Jlink 。
作者:中软卓越南京ETC