一、课程背景 对于嵌入式开发工程师来说,在技术上需要逾越三道关卡,分别是"硬件"开发、操作系统开发和应用软件开发,三者缺一不可(如果缺一环,在工作中的技术发展会受限)。逾越三个堡垒的佳途径是通过平台级的应用软件开发,锻造良好的应用软件编程思维;在这个软件编程思维和一定的编程经验基础上,能够更好得看透操作系统,理解操作系统的各个子系统工作原理和构成要素;从而在具备了一定"硬件"开发基础后,能够在开发板或者公司设计的板子上从容得搭建起满足成本、性能或其他要求的嵌入式系统,并在这个嵌入式系统上完成设备应用的软件开发。 二、培养目标 1、通过本课程的系统学习,可以使学员由浅入深地对嵌入式系统学习,能够独立胜任嵌入式应用开发、系统开发和驱动开发等多方面工作 2、培养具备物联网时代开发技术的综合性人才 3、培养能够适应未来“后PC时代”嵌入式设备开发的专业人才 4、培养物联网后备人才 三、就业方向 1、C软件开发工程师 2、C++软件开发工程师 3、嵌入式应用软件开发工程师 4、嵌入式系统驱动开发工程师 5、Android系统开发工程师 6、I0S软件开发工程师 四、培养对象 (1)本科以上学历,理工类相关专业 (计算机、电子工程、软件工程、无线电、自动化、自动控制、通信工程、应用物理、应用数学、仪器仪表、检测/测控技术、机械电子、汽车电子等专业者优先) (2)年龄在22-35周岁以内 有志于从事嵌入式行业开发者 (3)上课周期:6个月共计500个课时 五、课程说明 (1) 基础阶段:与高校的课程进行衔接,并为学员打下扎实得语言基础;另外需要熟悉我们后期开发系统的环境即WIND0W和Linux操作系统 (2) 平台系统软件:以软件应用项目为主导,在项目中熟练掌握以GUI、数据库、网络通讯等上位机的主流开发技术,建立起良好的编程思维和项目模块化思想,熟悉了基于操作系统以上的开发技术,积累一定的项目开发经验和文档能力 (3) 嵌入式设备:以ARM裸机开发为起点,让学员掌握基于芯片级的开发技术,理解计算机系统一步一步如何从底层被搭建起来。从以ARM汇编指令编写Tiny6410片内初始化启动代码开始,“点亮”或驱动起Tiny6410板上的主要外设,如:LCD、T0UCH、UART等,在外设驱动的基础构建起自定义简易操作系统平台或应用承载平台的骨干框架(中断、定时器->任务调度;NandFlash->文件系统;LCD/T0UCH->软键盘和自定义GUI;UART->数据网络传输),在此应用承载平台或简易操作系统上,开发出一款典型应用。学员能够在学习硬件工作原理的基础上,深刻理解了操作系统的作用、其各模块分工以及如何与硬件配合完成操作系统的各项管理功能,并如何为应用提供支撑。由于目前开发模式的需要,嵌入式应用承载平台基本上是移植完成的,因此,在理解自定义平台上的理论知识上,让学员能够自行移植uboot/Linux2.6等等主流的嵌入式平台,并在此平台上开发出另外一款主流应用,让学员深刻理解了系统移植的概念、上位机与下位机如何协同工作、并能够进一步巩固主流嵌入式Linux的各类应用开发技术。在移植完主流嵌入式Linux系统平台基础上,学员具备继续移植目前炙手可热的Android系统能力 |