华清远见嵌入式Linux课程.docx
- 文档编号:25535534
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:24
- 大小:641.65KB
华清远见嵌入式Linux课程.docx
《华清远见嵌入式Linux课程.docx》由会员分享,可在线阅读,更多相关《华清远见嵌入式Linux课程.docx(24页珍藏版)》请在冰豆网上搜索。
华清远见嵌入式Linux课程
课程名称:
嵌入式学院—嵌入式LINUX工程师就业培训班
上课时间为:
上午9:
00—12:
00下午13:
30—17:
30(每天7小时正式上课时间)晚自习18:
00—21:
00
第一阶段:
嵌入式Linux软件工程师
▪职场定位:
LinuxDevelopmentEngineerforSoftwareEngineering
▪本期目标:
嵌入式系统是现在最热门的计算机应用领域之一,嵌入式C语言在其中起着至关重要的作用。
一个精通C语言程序设计的程序员,可以很容易地进入Linux、WinCE、Vxworks等嵌入式操作系统下的软件开发工作。
本阶段学习目标是掌握C语言基本知识、C编程语法基础和Linux操作系统的使用,并熟练掌握嵌入式Linux的开发环境,为将来的编程工作打基础。
序号
课程名称
课程内容
掌握要求
1
Linux操作系统使用
本课程从零起点,讲解Linux操作系统的概念和安装方法,详细介绍Linux下的基本命令、管理配置和编辑器,包括VI编辑器,GCC编译器,GDB调试器和Make项目管理工具等知识。
精通
2
嵌入式LinuxC语言高级编程
C语言是嵌入式领域最重要也是最主要的编程语言,本课程将在学员C语言基础知识之上,通过大量编程实例重点讲解C语言的高级编程知识,包括函数与程序结构、指针、数组、常用算法、库函数的使用等知识,另外,本节还重点讲解数据结构的基础内容,包括链表、队列、栈、树、哈希表、图等内容。
精通
3
C++面向对象编程
C++是Linux应用开发主要语言之一,本节重点让学员掌握面向对象编程的基本思想,以及C++语言的基础内容,为后面的课程做好铺垫。
掌握
4
嵌入式Linux项目开发流程
本课程主要让学员从宏观了解嵌入式Linux开发环境搭建和项目开发流程,让学员建立起整体架构的概念,包括嵌入式产品需求分析和选型、硬件平台、移植、启动代码、驱动开发、系统部署等整个过程。
掌握
第二阶段:
嵌入式Linux系统工程师
▪职场定位:
LinuxDevelopmentEngineerforEmbeddedSystems
▪证书:
微软嵌入式工程师认证证书(认证费500元),红帽公司《Linux应用开发工程师证书》(认证费500元)
▪本期目标:
参加本期培训的学员应该掌握嵌入式C语言编程技巧。
嵌入式Linux应用开发和系统开发是嵌入式Linux中最重要的一部分,也是企业人才需求最广的一部分。
本期学习的主要目标是精通嵌入式Linux下的程序设计,熟悉嵌入式Linux开发流程,强化学员对Linux应用开发的理解和编码调试的能力,同时掌握bootloader和kernel的移植技能,了解ARM体系结构和编程,具备ARM硬件接口的基础知识,并了解Linux内核开发相关内容,初步掌握Linux下的驱动程序开发方法。
另外,本期课程还会让学员了解另外一个比较重要的嵌入式操作系统:
WindowsCE,使学员在掌握嵌入式Linux的同时,也了解WindowsCE的开发方法,拓展学员的知识面,丰富学员的知识结构。
最后通过几个典型的企业全真案例,进一步巩固本期课程内容,使学员真正学以致用。
序号
课程名称
课程内容
掌握要求
5
嵌入式Linux高级应用编程
嵌入式Linux应用开发是嵌入式Linux中最重要的一部分,也是就业面最广的方向。
本课程的主要目标是精通嵌入式Linux下的程序设计,精通嵌入式Linux开发环境,强化学员对Linux应用开发的理解和编码调试的能力,包括系统编程、文件I/O、多进程和多线程、网络编程、GUI图形界面编程、数据库。
精通
6
ARM处理器编程
ARM是嵌入式领域最主要的CPU处理器,了解ARM处理器的基础知识将为后面课程的底层开发打好坚实基础,本课程内容包括ARM处理器体系结构、编程环境、指令集、寻址方式、调试、汇编和混合编程等方面的内容,为后面移植课程的学习打好基础。
学完此课程学员可获得ARM公司全球统一授权培训证书。
掌握
7
ARM硬件接口开发
本课程重点介绍ARM的常用接口开发及硬件电路设计基础(包括IO、串口、看门狗、实时时钟、SPI、IIC、扫描键盘、FLASH操作等),为以后的设备驱动的学习打好基础。
了解
8
嵌入式Linux系统开发
系统开发是嵌入式Linux底层开发必备的基本技能,本课程将教会学员在硬件电路板做好的情况下,如何从零开始搭建嵌入式Linux运行环境,内容包括内核裁减、内核移植、交叉编译、内核调试、启动程序Bootloader编写、根文件系统制作和集成部署Linux系统等整个流程。
精通
9
嵌入式Linux内核开发
本课程是驱动开发的基础课程,深入内核细节,了解Linux相关运行机理,为后面的驱动开发打好理论基础,内容包括内核源码结构、内存管理、进程管理、中断管理、系统调用、内核同步、时钟和定时器管理、信号、调度、进程间通信、文件系统和I/O设备管理等方面的内容。
了解
10
嵌入式Linux驱动开发基础
介绍嵌入式Linux驱动开发相关概念及开发流程,了解驱动涉及到的关键技术点,并重点学习字符设备驱动开发,包括串口、I/O、看门狗、实时时钟、SPI、IIC、扫描键盘、A/D转换、定时器等接口的驱动开发,为第三期课程深入学习驱动高级开发打好基础。
掌握
11
WinCE操作系统开发基础
WindowsCE是目前另外一个最主流的嵌入式操作系统,嵌入式学院利用自身在WindowsCE系统方面的教学优势,使学员了解WindowsCE应用开发和系统开发的特点,并对比Linux操作系统,让学员了解目前主流嵌入式OS的异同点,增进对嵌入式OS开发的理解,拓展学员知识面,增加就业渠道。
学完此课程学员可获得Microsoft公司全球统一授权培训证书。
了解
12
综合案例的实战训练
在第二阶段课程中,为了帮助学员充分有效地掌握核心知识点在企业中的具体应用,并开始逐步按照企业需求、流程和规范进行实战训练,在嵌入式Linux应用开发、系统内核开发的课程讲授过程中全部采用项目驱动的方式,将来自合作企业的全真案例贯穿于课程中,实现的功能包括:
基于本机多进程的聊天工具、基于QT的即时通讯系统、基于ARM的温控系统、汽车防盗系统及基于QT的多媒体播放器等。
通过这种方式带领学员分析企业岗位的真实技术需求,进行案例演练,从而快速掌握相关的技能和开发技巧。
精通
第三阶段:
嵌入式Linux驱动工程师
▪职场定位:
EmbeddedLinuxDriverDevelopmentEngineer
▪证书:
嵌入式学院《嵌入式Linux工程师职业资格证书》(认证费800元),ARM公司全球统一认证证书(认证费500元),Atmel公司全球统一《Atmel嵌入式工程师认证证书》(认证费500元),工业和信息化部《国家信息技术应用技能嵌入式Linux工程师认证证书》(认证费500元)
▪本期目标:
参加本期培训的学员应该掌握嵌入式Linux应用开发和系统开发能力。
本期学习的主要目标是掌握嵌入式产品开发从需求分析到详细设计整个过程的开发内容,深入掌握Linux驱动程序开发技巧,能够熟练的移植或编写设备驱动。
同时,本期课程还重点讲解嵌入式Linux在3G领域的典型应用--3G手机Android操作系统,全面了解Android系统的开发过程和行业前景,在专业讲师的带领下,实战体验Android应用程序的开发及系统移植。
最后,本期将重点花一个月时间,让学员从零开始完整完成一个真实项目的设计,使学员在巩固所学内容的同时,迅速积累项目设计经验,达到并超过企业用人需求,另外,通过实际项目案例,可以发现学员知识薄弱环节进行重点加强。
目前嵌入式学院提供的真实项目包括:
远程视频监控系统、商用POS机、汽车导航GPS、个人娱乐系统PMP,每期学员可完整完成其中一个项目。
序号
课程名称
课程内容
掌握要求
13
嵌入式Linux驱动高级开发
驱动开发是嵌入式Linux开发难度最高的内容,也是目前嵌入式行业最紧缺的人才之一。
有了前面课程知识的铺垫,本课程将重点讲解嵌入式Linux下常用接口驱动的编写方法,内容包括:
1、flash驱动:
掌握在linux环境下驱动常见flash存储器(norflash、nandflash);
2、块设备驱动:
掌握块设备驱动的原理、学会ramdisk的编写;
3、网卡驱动:
掌握网卡设备的编写原理、能够熟练移植各种网卡驱动。
在对网卡硬件寄存器熟悉的基础上,有能力为其编写出完善的网卡驱动;
4、液晶驱动:
掌握frambuffer驱动的原理。
有能力在有控制器的嵌入式平台上参考液晶手册实现各种常见液晶驱动;
5、sd卡驱动:
掌握sdio接口操作,熟悉sd卡驱动驱动的原理;
6、usb设备驱动:
了解usb主机设备驱动的结构及编程方式。
精通
14
嵌入式Linux在3G领域的典型应用--3G手机Android操作系统
介绍嵌入式Linux在3G领域的典型应用Android系统,了解Android系统如何由嵌入式Linux衍生出来的,以及Android系统和嵌入式Linux系统差异化,了解Android系统的体系结构、开发特点以及关键技术点,并重点学习ARM对Android系统的支持现状,掌握ARM平台上的Android相关开发工具和解决方案,重点讲解Android系统在ARM平台上的移植过程,介绍Android系统底层驱动开发和嵌入式Linux驱动开发的差异化,最后介绍ARM+Andriod平台组合的行业应用前景,使学员全面了解Android系统的开发过程及发展前景。
了解
15
Android应用程序开发
主要针对目前嵌入式设备上另外一个主流的应用程序开发平台Android,包括Android体系结构和原理,Android应用程序开发工具的使用,在成功移植Android的平台上开发和部署应用程序,进而验证嵌入式Linux系统移植后的稳定性等。
以帮助学员进一步拓展和补充嵌入式应用开发的相关内容。
了解
16
嵌入式Linux项目实践
本课程将通过一个真实完整的项目案例,让学员了解真实项目的开发流程,让学员知道如何将所学知识应用到项目开发中。
本课程将模拟真实项目的管理过程,培养学员项目团队协同开发能力,项目文档编写能力和新知识的学习能力,为下一步就业做好知识上和心理上的充分准备。
目前学员在嵌入式学院可完成的真实项目包括:
远程视频监控系统、商用POS机、汽车导航GPS、个人娱乐系统PMP、3G智能机器人,学员可在嵌入式学院学习期间独立完成其中一个项目。
掌握
嵌入式学院学员实践项目案例介绍
——项目案例1:
基于GPRS的远程安防监控系统
1.项目背景
随着现代电力电子技术和微电子技术的迅猛发展,自动化,智能化程度的不断的提高,家居安防技术正在不断发展。
传统的家居安防系统已经越来越不能满足现代人的需求。
消费者希望自己可以实时“看见”现场的情况,并且可以远程控制现场的一些自动化设备来处理紧急情况。
这个项目的方案主要是利用internet、GPRS,3G、WIFI等技术实现远程监控通信,此系统不但具有易维护性、可扩展性和安全性等这些嵌入式基本特点,而且充分融合了嵌入式和通信技术。
使得本系统的功能扩展性非常好,方案具有一定领先性,可以稍做定制就可以应用于很多其它场合。
对我们掌握嵌入式LINUX传统技术和比较新的3G技术和为毕业后找工作都应该有帮助。
2.项目功能介绍
远程安防监控项目功能介绍,此系统分为服务端和客户端2个部分,其中服务端由ARM作为主控,操作系统采用嵌入式LINUX实现,它通过实时采集红外、温度、烟雾探头以及USB摄像头的的数据,通过互联网将数据发送到客户端进行显示和告警,客户端由PC,传统手机和比较新的3G手机相互比较独立的几个部分组成。
监控项目功能示例图
3.技术点
1)uboot移植
2)内核移植及网卡驱动
3)Nandflash驱动坏块管理
4)Usb协议,USBHOST驱动移植及分析
5)Sd卡驱动和自动卸挂载
6)Adc温度传感器驱动以及应用控制
7)UsbCamera驱动以及云台控制
8)人体感应器以及烟雾探测器驱动以及应用控制编程
9)USBWifi驱动及配置
10)GPRS收发短信及应用功能封装
11)Server端的主体实现及各个功能模块划分和综合
12)Android客户端的实现
13)其它技术点
通过上面可作为技术点的实现,可实现的功能如下:
1)监控机可以通过摄像头采集现场图像;
2)监控机可以通过传感器采集现场火警等数据;
3)监控机可以通过红外传感器探测是否有人进入现场(或家中,可用做防盗);
4)监控机可以在异常情况下给用户发送短信报警;
5)监控机可以储存特殊情况下的数据和照片;
6)用户可以通过网络登陆监控机的主页(有权限验证);
7)用户可以在主页上观察到监控机通过摄像头采集到的现场图像;
8)监控机可以将特殊情况下的数据和照片存在SD卡中,要实现卡的动态插拔检测和挂载;
9)用户除了可以在主页上观察到监控机通过摄像头采集到的现场图像外,用户还可以在主页上屏蔽或开启温度、闯入、USB摄像头监控功能;
10)添加日志功能,结合SQLITE,在网页中或者WINDOWS上PC机软件中能够查看和操作日志;
11)监控机本身可扩展本地显示控制功能。
通过添加邮件发送功能。
收集报警信息,并让系统自动通过短信和邮件的方式通知事先设置好的管理员,当异常发生时通过网络发送抓拍的图片到指定邮箱;
12)USBCARERA云台功能支持,用户可以在网页上对摄像头的亮度进行控制;添加巡航功能,让用过在网页中能够定制和实时控制USBCAMERA镜头的转动,实现巡航功能;在异常发生的时候,镜头可以快速对着用户预先定义的区域进行抓拍;
13)监控机可以通过GPRS接入INTERNET,WIFI接入局域网,加上ethernet提供多中接入网络的方式,根据具体的网络接入情况智能选取网络进行数据发送;
14)开发android手机程序,实现在手机里面实现查看日志,抓图,或者视频浏览功能;
15)支持彩信的方式报警(选做);
16)画面变化侦测(选做);
17)完善WINDOWS客户端,支持图像的视频流格式进行AVI,MP4或H.264的压缩和存储,检索(选做);
18)上面没有列出的,以后可能再加入进去的功能。
嵌入式学院学员实践项目案例介绍
——项目案例2:
车载导航系统
1.项目背景
现在,随着GPS技术、多媒体应用、LCD显示技术的日趋成熟,汽车导航、防盗系统在高端汽车中已经是现实,而在普通汽车中实现,也是指日可待了。
车载导航系统中包含了很多前卫、实用的技术,如:
GPS应用技术、GPRS应用技术、GUI开发技术、多媒体功能应用技术、传感器技术、嵌入式操作系统应用开发技术、系统构建技术、驱动编写技术、数据库技术等等。
学员通过项目的完成,对于巩固理论知识、拓展实用的项目经验都有很大的帮助。
2.系统功能说明
定位功能:
GPS通过接收卫星信号,可以准确地定出其所在的位置,位置误差小于10米。
利用GPS,在地图上实时显示车辆当前位置;
地图导航功能:
输入目标地点后,自动在地图上显示出行车路线;重假如用户因为不小心错过路口,没有走车载GPS导航系统推荐的最佳线路,新为用户设计一条回到主航线路线,或是为用户设计一条从新位置到终点的最佳线路;
语音导航功能:
输入目标地点后,车辆只要遇到前方路口或者转弯,车载GPS语音系统提示用户转向等语音提示;
防盗功能:
通过发送gprs短信,可以返回车辆当前位置;
娱乐功能:
播放U盘、SD卡中的MP3、MP4文件;
智能导航功能:
在短时间失去GPS信号时,可根据车内的加速度传感器、结合行车速度计算出行车情况;
增加兴趣点功能:
由于我国大部分城市都处于建设阶段,随时随地都有可能冒出新的建筑物,由此,电子地图的更新也成为众多消费者关心的问题。
因此遇到一些电子地图上没有的目标点,只要你感兴趣或者认为有必要,可将该点或者新路线增加到地图上。
3、硬件需求
名称
说明
CPU
S3C2410,2440
FLASH
2Mnorflash+64MNandFlash
SDRAM
64M
USB
1个USBHost接口,1.1标准
网口
10M
串口
2个3线串口
SD卡接口
SD卡容量1G
I/O
8路I/O
LCD
3.5寸240*320TFT屏
触摸屏
4线电阻式触摸屏
GPRS模块
3线串口接线
GPS模块
3线串口接线
加速度传感器
输出电压范围0-3V
U盘
容量1~4G
SD卡
容量1~4G
4、软件需求
名称
说明
操作系统
Linux-2.6.26
开发工具
GNU工具
启动代码
u-boot1.3.4
驱动程序
所有硬件驱动
文件系统
根文件系统采用cramfs,用户文件系统采用yaffs2
GUI
QT
地图
嵌入式学院学员实践项目案例介绍
——项目案例3:
3G智能机器人
1.项目背景
随着物联网技术、3G通讯技术、多媒体技术、机电控制技术的日趋成熟,基于相关技术的产品也备受消费者的欢迎。
目前嵌入式用人市场上紧缺相关人才。
家用智能机器人项目正是在此背景下设立的。
3G智能机器人项目中包含了的技术有:
● 传感器技术
● RFID射频识别技术
● Wifi通讯技术
● Android手机开发技术
● 音、视频采集、处理技术
● 多媒体传输技术
● Linux驱动编程技术
● 电源管理技术
● 电机控制技术
● Linux网络开发技术
● Linux其它应用编程技术
● ARM11开发技术
由于项目涉及的技术较新,覆盖技术面广,且难度大,所以项目目前正在不断的完善过程中。
学员在较短的时间内,无法涉及或掌握项目的所有技术。
所以针对这个项目的特点,学校计划设置成为学校内部的开源项目。
学员在毕业以后仍然可以加入到项目的开发中,且可以获得到项目的最新成果。
2.项目结构图
3、系统功能简述
用户可以在其android手机上安装项目开发的andorid程序,实现远程控制智能机器人。
机器人利用其丰富的传感器实时检测周围的环境参数,并在遇到紧急情况时主动通知用户。
机器人和手机间可以实现视频、语音等多媒体通讯。
用户可以通过手机控制机器人运动,也可以通过机器人控制家中的其它智能设备。
4、部分实物照片
实验设备
国内独家同时提供Samsung和Atmel嵌入式开发平台
ARM公司Realview仿真器
IARJ-Link/J-TraceARM仿真器
夏普液晶触摸屏
三星S3C2410AARM9开发板
三星S3C2440AARM9开发板
AtmelEB-SAM9G45(带屏)的开发板
AtmelEB-SAM9G45(带屏)的开发板
三星S3C6410 ARM11开发板
基于三星S3C6410 ARM11的实验设备
附华清远见自主研发的Cortex-A8实验平台(FS_S5PC100)介绍
FS_S5PC100采用底板与核心板结构设计。
核心板采用8层板+盲埋孔+阻抗控制+沉金工艺,稳定可靠。
核心板的资源有:
s5pc100处理器、256MBDDR2内存、128MBNandFlash(可扩展为1GMB)、2MNorFlash。
FS_S5PC100拥有丰富的硬件接口,包括:
VGA接口、LCD接口、TVout接口、Camera输入接口、3路串口、1路红外收发、SD卡接口、SPI、100M网口、USB2.0-OTG接口、4路USBHost接口、音频输入输出接口、按键、SPI的E2PROM(用于SPI实验)、I2C的温度传感器(用于I2C实验)、蜂鸣器(用于PWM实验)、变阻器(用于A/D实验)、HDMI、蓝牙、wifi等。
华清远见自主研发的最新Cortex-A8实验平台:
FS_S5PC100
附华清远见自主研发的Cortex-A8实验平台(FS_S5PC100)硬件配置清单:
FS-S5PC100核心板硬件配置:
● SamsungS5PC100处理器,ARMCortex-A8内核,最高主频为800MHz;
● 256MBytesDDR2内存,采用两片SamsungK4X1G163芯片,运行速率166MHz;
● 256MBytesNandFlash,采用SamsungK9F2G08芯片,可定制128M到2G容量;
● 采用MAX811T复位芯片,控制系统复位操作;
● 分离式电源设计,独立电源芯片提供核心板各路电源;
● 2.00mm间距双排插针连接器与底板相连;
FS-S5PC100底板硬件配置:
● 四位拨码开关,用来配置系统启动方式;
● 三路UART接口(两路5线串口,一路3线串口);
● 四路USBHOST,支持USB1.1协议,使用USBA型接口;
● 一路USBOTG,支持USB2.0协议,使用mini-USBAB型接口;
● 一个标准20pin2.54mm间距JTAG接口;
● 六个用户按键,功能上、下、左、右、确定和返回(用户也可自定义其功能);
● 一个复位按键,连接MAX811T复位芯片;
● 四个用户LED指示灯;
● 两个高速SD/MMC接口,其中一个可支持8位模式。
可以实现SDMemory功能和SDIO功能;作为SDMemory最大可以支持32GB容量;作为SDIO,可以连接WIFI、DTV等模块;
● 一路摄像头接口,支持ITU-RBT601/656八位模式;
● 自带4.3寸TFT真彩液晶屏和触摸屏,采用0.5mm间距FPC接口;
● 一个50针LCD、触摸屏插针接口,方便连接其他型号LCD;
● 一个VGA视频输出接口,采用SDA7123芯片,最大支持1024*768分辨率;
● 一个TVOUT视频输出接口;
● 一个AC97音频接口,包括一路音频输出和一路麦克风输入,采用W
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 远见 嵌入式 Linux 课程