一、引言
为主动应对新一轮科技革命与产业变革,支撑服务创新驱动发展、“中国制造2025”等一系列国家战略,教育部积极推进新工科建设,先后形成“复旦共识”、“天大行动”和“北京指南”,旨在形成领跑全球工程教育的中国模式和中国标准,打造世界工程创新中心和人才高地。新工科建设的重点是探索工程教育的新模式,建立全面融入工程环境的课程体系,目标是让全体毕业生在知识、能力和个人素质等方面满足工程创新的要求。
二、嵌入式工程人才应具备的知识和能力
嵌入式工程师的主要工作是嵌入式系统设计和开发,包括硬件系统的建立和相关软件的开发、移植、调试等工作。一般可以分为嵌入式硬件工程师、嵌入式底层驱动工程师和嵌入式应用软件工程师。硬件工程师负责硬件系统的设计、制作和调试,包括外围电路芯片的选择、接口电路的设计、板级的测试(需要自己写程序测试硬件的基本功能)。硬件工程师需要掌握模拟和数字电子技术、计算机原理和接口技术和底层程序设计知识,具备数模混合硬件电路和数字逻辑系统的设计能力以及设计底层程序测试硬件系统的能力。底层驱动工程师负责开发与硬件关系最密切的底层软件和初级的硬件驱动程序,需要具备数字电子技术、计算机原理和接口技术、操作系统原理、数据结构与算法方面的基础知识,要求能看懂嵌入式系统的电路原理图,熟悉处理器的体系架构,熟悉各种通讯协议,能设计和调试底层的驱动程序,能根据需要对操作系统进行移植和裁剪。应用软件工程师负责设计系统的应用软件来实现应用系统的各种功能。嵌入式应用软件工程师需要掌握的知识有C/C++语言、操作系统原理、数据结构与算法。从上面的分析可以看出,嵌入式工程师的知识结构可以用一个三层结构来描述,其中C程序设计和计算机原理是两块重要的支撑构件,电路、电子技术和数学物理基础是这个知识结构的基石,而操作系统、数据结构与算法和嵌入式系统设计是上层建筑。上述分析还表明,实际研发工作对于嵌入式硬件工程师和嵌入式软件工程师的能力需求相差很大,而对于在校的大学生来说,过早地确定硬件或者软件方向是不现实的,也是不合理的。
三、目前嵌入式工程人才培养体系存在的问题
“微机原理与接口技术”是工科学生接触计算机底层硬件的第一门课程。这门课以Intel8086CPU为主线,系统讲述微型计算机系统的基本组成、工作原理、指令系统及汇编语言程序设计、半导体存储器技术、硬件接口技术、总线技术、PC的软件体系以及PC应用系统设计举例。这门课对于帮助学生掌握微型计算机的原理和硬件接口技术,建立微型计算机系统的整体概念具有非常重要的意义,是一门重要的计算机基础课。但是,随着计算机硬件的高速发展和更新换代,这门开设了30年的基础课与实际工程应用之间的距离越拉越大。首先是其内容已经陈旧,陈旧到连实验设备都不容易找到了。为了便于学生入门,这门课采用8086CPU作为模型来讲解。但是现在8086芯片已经停产了,很多学校已经不能给学生提供基于8086的实验设备。有的学校甚至采用FPGA来实现8086CPU,以解决实验的问题。其次是不容易引起学生的兴趣,因为学生无法把课堂所学应用到实际当中去。因此这门基础课逐渐出现了两种形态:一种是继续坚持讲8086架构,把这门课纯粹作为一门计算机理论课来讲,然后在后面的学期里开设重在应用的单片机和嵌入式系统课程;另一种形态是干脆用51系列单片机替代8086CPU,试图用8位单片机的体系架构解释计算机的底层硬件原理。以上两种形态都存在着明显的问题:花一个学期的时间讲那些不能联系实际的理论基础,会让学生对计算机硬件失去兴趣;而51单片机的架构又过于简单,无法透彻地解释32位/64位计算机的结构特点和相关基础理论知识。面对“微机原理与接口技术”这门课程在各个专业教学计划中的尴尬现状,许多专业又先后把“单片机应用技术”、“嵌入式系统”、“DSP系统设计”列入专业选修课,构成一个课程群。但是,这个课程群存在下列问题:
1.“微机原理与接口技术”的作用不明确,教学内容亟待调整和优化;
2.“单片机应用技术”所采用的51体系与后续的“嵌入式系统”之间跨度过大,很多学生要再花很多时间才能掌握实用的嵌入式系统开发技术;
3.课程群里的各门课程之间内容没有经过统一设计,学时利用效率低。
四、以能力需求为基础的嵌入式工程师集成培养方案设计
针对上述实际问题,我们提出一个新的面向能力需求的嵌入式工程师集成培养方案。如图1所示,这个培养方案以“工程设计实践”、“移动机器人工程专题L1、L2、L3、L4”和毕业设计作为嵌入式工程师实践活动的主线和载体。在这个贯穿整个本科阶段的实践过程中,学生通过参与实践项目,接触和运用各种适合项目需要的嵌入式处理器和系统,通过边干边学来培养自己的各种基础能力,尤其是上述第4项能力。这个新的培养方案的特点是在利用现在已经开设的教学和实践课程,加强课程教学之间的呼应。为了做到这一点,应该建立专题实践课程教学和专业课程教学之间的呼应机制和C语言教学与微机原里教学之间的呼应机制。可以采用以下办法:
1.专业课教师参与专题实践课项目的辅导,指导专题实践中学生的选题、方案设计、制作和调试。
2.专业课教学以专题实践课的项目作为典型案例。
3.专业课的教学以专题实践课项目中的某个部分完成的情况作为平时成绩。
4.C语言的教学中采用51单片机上的程序作为例子和作业。
5.工程设计实践和工程专题的项目采用C语言编程的嵌入式系统。
6.计算机程序设计课程改为学习C语言程序设计,而现在的C语言课程改为“单片机C语言”编程,放在微机原理(单片机)的后面开设。
7.在“单片机C语言”课程中加入关于实时操作系统的内容。
五、结语
以能力需求为基础,以工程实践为骨架,用从一年级的移动机器人项目到高年级的工程专题工作室项目构成一个进阶式的工程实践环境。整个嵌入式人才培养课程体系是建构在这个工程实践环境中的。教学实践表明,单片机课程为学生提供了一个很好的入口,学生很快找到了用程序实现预期功能的乐趣,建立了信心。而在单片机课程中加入的接口技术、跨平台应用和最小系统设计,为复杂的嵌入式系统打下了基础。从单片机进阶到ARM的汇编程设计,既有利于理解复杂计算机系统的工作原理,又直接为今后编写底层驱动打下基础,可谓一举两得。此方案实施两年来,学生在嵌入式系统开发方面的能力明显增强,在参加全国比赛中获得良好的成绩。
参考文献:
[1]张俊梅.自动化专业微机类课程群改革研究[J].北京化工大学学报(社会科学版),2015,(2):85-88.
[2]徐晓红.微机接口技术系列课程实践教学改革[J].电气电子教学学报,2015,(2):43-45.
[3]陈立刚,徐晓红.“计算机硬件技术基础”教学内容改革[J].电气电子教学学报,2013,(2):77-79.
作者:王建萍 单位:深圳大学机电与控制工程学院