冯兴乐, 张海鸥, 孙朝云, 屈八一
(长安大学 信息工程学院, 陕西 西安 710064)
单片机又称单片微控制器,是将CPU、RAM、ROM、定时计数器和多种I/O端口集成在单芯片上的计算机,也是一种将硬件和软件相结合的小型计算机,由于具有体积小、成本低、性能高的特点,广泛应用于工业控制、智能仪器等领域[1~2]。近年来,许多高校竞相开设“单片机应用技术”课程,以适应社会对相关人才的迫切需求。但是该课程实践性强,对教师的工程素质和学校的实验条件要求高。鉴于各学校的教学方法和教学质量参差不齐,为此,本文依托我校的电子信息工程专业综合改革试点,围绕该课程实践教学,开展并研究了基于“基于校企合作纵横管理”的一体化教学方法,并因此获得了省级教学成果奖,在此,为了分享我们的教改经验,撰文供广大教学工作者参考和借鉴。
通常,“单片机应用技术”课程的教学分为理论讲授和实践练习两部分。理论教学重点讲述硬件组成、指令、汇编、接口等知识,各校差别不大。实践教学分为单功能验证和综合开发实验,各校的实践教学方法和管理流程存在较大差异。在调研各校教学情况的基础上,将存在的普遍问题归纳如下:
理论教学内容老化,大多选用10年前出版的教材,主要介绍单片机的存储结构,指令集等知识,对单片机的开发环境和项目开发流程介绍较少,讲授的C51系列和当前主流的430单片机有一定的差距[3]。过分依赖幻灯片,将多媒体教学理解为单一的幻灯片,对照幻灯片讲解程序代码,学生的参与感较差。
实践教学方面,普遍缺乏开展实践教学的硬件条件,例如:实验室和实验器材不足;加之,学校缺乏对从事实践教学的教师工作量的客观评价体系,教师不愿投入精力做实验。
实验环节是单片机课程中非常重要的一环,但是传统教学中,大多都在实验箱上完成,实验内容为单一的验证性或训练性实验,这些实验电路固定,学生只需连几根线、编写简单的程序就可实现功能,不利于培养学生综合应用知识的创新能力[4]。
实验顺序没有遵循学生的认知规律,致使学生完成了实验内容,依然不了解单片机开发项目的完整过程和方法,不具备综合设计与分析的能力。没有按照一定的知识梯度,循序渐进地设置系列性实验,首先安排启蒙性的实验,再由易到难,安排一些验证性实验,当学生对实验操作有相当的感性认识之后,再引入综合性实验,然后再组织参加科技创新竞赛类活动。
目前很多高校在招聘教师时,要求35岁以下,博士学历以上,这就导致符合条件的教师,基本没有在企业和科研院所工作的经历,对工程项目不熟悉,缺少工程师思维方式[5~7]。另外,学校的考核体系里重视论文发表,而工程实践类的课程很难有理论和技术创新,教师缺乏提高自身工程实践能力和科研开发能力的内在动力。另外,缺乏企业工程师和校内教师岗位的流通渠道,难以建设“双师型”师资队伍[8]。
基于校企合作纵横管理的单片机教学改革是我们解决上述问题的基本思路,这条思路体现如下:
我院依托专业综合改革和工程硕士培养机制的特殊政策,加强校企合作。打破人才引进的年龄和学历限制,建立校内教师和校外工程师轮岗制度,建立开放式的“柔性”人才引进常态机制,不求所有,但求所用,建立全方位、多渠道、立体式的师资培训模式。
一方面,企业工程师通过学校的系统学习,或攻读相应的学位,提升理论层次,使之能适应高校的理论教学,甚至流动到高校中,成为短期或正式教师。聘请研究所、企业中的高级工程师作为兼职教师或工程硕士校外导师,这些经验丰富的工程师了解企业需求,知道技术如何落地,能将企业的生产、经营、管理及技术改进等方面的最新情况传递给学生,扩大学术视野,缩短学生毕业到企业后的适应期。
另一方面,拓宽中青年教师到企业兼职的渠道,通过共建企业实习实训基地、专题实验室、博士后工作站等方式,加强校企合作的广度和深度,针对企业需求,结合信息技术改造传统产业的二次创业需求,为企业开设旨在提高产品信息化、智能化水平的短期研讨班、讲习班;让青年教师在企业中有用武之地。
在校企合作的教学过程中,我校教师以理论授课为主,实践引导为辅。企业工程师以指导综合实验和科技竞赛为主。将学生所学的理论知识和实际紧密结合起来,学以致用。
将教学实验、课程设计、毕业设计深度整合,教学内容按照学生认知的特点,遵循由易到难,层层递进,先局部后整体,先感性后理性的原则,让学生循序渐近地提升自己的动手能力。下面以我院电子信息专业综合改革为例,介绍教学计划的优化思路。
电子信息专业的课程分为电子类、计算机类和信息处理类。将单片机的实践教学作为贯穿电子类和计算机类课程的主线,能够达到由点到面、融会贯通、事半功倍的效果。优化后的教学计划如图1所示。
基于“项目驱动法”的单片机教学分为三个阶段。
第一阶段包括第1和第2学期。通过专业导论,为学生引入诸如LED循环显示、驱动蜂鸣器演奏音乐、驱动LCD液晶显示屏等项目简介,让学生对单片机的基本功能有一个感性的认识,同时对计算机编程环境有初步的认识,从而激发学习热情。这点对学生后期的学习态度和学习效果非常重要。
图1 教学计划进度
第二阶段包括第3到第5学期。重点以单片机的设计理念为主线,以模拟电子和数字电子的课程实验为基础,在掌握经典电路的基础上,设计单片机外围的数据采集,信号调理,显示电路等。进一步夯实单片机编程和电路设计的基础。此阶段的控制和处理的核心电路基本不变,作为输入的传感器可以灵活变化。另外通过生产实习,学生掌握电路板设计、电装调试方面的基本技能。
第三阶段包括第6到第8学期。重点以开发企业课题和参与科技竞赛为主。这些综合创新性题目,从企业中来,又为企业服务。通过学生参与企业的实际课题,了解企业研发项目的完整过程,体会学以致用的乐趣,培养团队精神,为毕业后走向社会打下良好的基础。参与科技竞赛则是前期学习成果的一次检验,对培养学生的创新能力大有裨益,而获奖证书也将增加学生就业的竞争力。
针对电子信息类专业学生在不同阶段的学习特点,分配不同性质的任务。如表1所示:
表1 大学生学习特点以及任务分配表
针对高校学生流动性强的特点,必须建立分工明确的团队管理制度,以及规范有序的文档管理制度,才能发挥人才培养过程中“传帮带”的优势,将实践教学常态化、制度化。重点关注以下方面:
(1)团队分工明确。指导教师宏观把握小组的选题和学习进度。高年级同学负责技术攻关和文档整理,为低年级同学答疑解惑,提供技术支持。低年级同学负责项目中的具体工作。在任务分工方面,根据个人学习情况和研究兴趣,分配硬件设计,软件编程,仿真测试和文档整理等工作。
(2)根据企业项目和科技竞赛的时间要求,建立项目节点管理体系,坚持每周例会,通报各小组的进展情况。
(3)和谐的团队文化。前期通过高年级同学的宣传和实物展示,让新生有较好的体验效果,减轻同学们的畏难情绪和思想顾虑,树立自信,建立QQ、微信等项目交流群。同时组织小组技能比赛,相互学习,共同进步。
本节以两个实际案例为例,介绍基于校企合作的“课题(纵)+专业(横)”管理模式和工作流程。
单片机教学系统组织管理模式的示意图如图2所示。其中项目A为油箱液位检测系统,项目B为PM2.5监测系统。
图2 管理模式框图
1)“横向”组建相同专业后备人才库
来自相同专业领域但能力水平允许存在差异的学生,由企业工程师牵头,组建专业小组后备人才库,对于单片机类的课题,主要分为硬件、软件、文档管理三大类。在低年级的学生中,按照第2节介绍的程序,当具有一定兴趣或基础后,即可申请加入后备人才库中相应的硬件、软件、文档类专业小组,即使暂时没有课题,该小组成员也要定期进行技术交流,开展单元型验证实验、研讨以往的科技竞赛内容等,通过实战演习,提升自己的能力。一旦有课题,这些人员即可组建课题小组,投入战斗。
2)“纵向”组建课题小组
一旦有企业课题或科技竞赛,即可组建新的课题小组。采用导师团队、组长、成员三级责任制,导师团队包括校内指导教师和校外工程师,负责选题,确定任务分解的边界,解答疑难问题和督促进度等;组长由研究生和高年级本科生担任,负责具体任务分配,召集小组例会,讲解程序代码等;成员负责具体电路设计和调试,软件代码的编写和测试,文档的书写和整理等。一旦本课题结束,这些成员又要回到专业小组后备人才库,等待下一次课题的到来。
下面从纵向角度,详细介绍项目A:油箱液位检测系统课题组的组织管理流程。工作流程如图3所示。
图3工作流程图
该课题通过超声波传感器实时监测槽车运输过程中油箱液位变化,其拓扑结构包括下位机(超声波传感器)、中间机(430单片机控制板)、上位机(PC显示终端)。下位机采集液位信息,中间机负责信息处理,用户可设定报警区间和声光警报形式。上位机负责显示液位值,后台数据管理等。
从功能角度看,包含系统初始化,串口通讯,液晶显示,定时器,按键五个函数模块。系统上电之后,主程序首先调用初始化模块设置各I/O口。通讯模块通过串口接收传感器采集的数据,然后在液晶显示模块显示液位值。定时器模块负责定时中断,控制蜂鸣器和发光二极管报警。按键模块实现人机交互,设置报警门限值。
工作流程如下:
(1)任务分工:组长负责课题进度,需求分析和概要设计,划分软件与硬件架构的边界,组织成员进行方案设计和论证,制作PPT汇报文档和对外宣传汇报等。
(2)方案设计实施:方案设计包括硬件和软件两部分,从硬件角度看,包括单片机、传感器及外围电路;从软件角度看,包括主程序、初始化模块、串口通信模块、显示模块、独立按键模块和定时器模块六部分。尽管在专业小组中将人员分为硬件电路和软件编程两类,但由于单片机是用软件来驱动底层硬件的系统,硬件和软件之间的边界并不清晰,尤其是在电路调试和软件测试阶段,很难确定是软件问题还是硬件问题,需要软硬件人员的充分交流与协作。这也有助于提高学生的软硬件综合素质。
(3)文档整理:由于学校人才培养的流动性,保证存档文件的规范性和可读性是固化教学改革成效的重要因素。本课题的文档整理工作包括①撰写产品说明书;②硬件工作原理,原理图和PCB图;③软件开发环境;④源程序代码;⑤整理技术文档;⑥视频录像资料。文档整理流程如图4所示:
图4文档整理流程图
在所有的文档中,软件代码的可读性尤为重要,应有翔实规范的代码注释和说明文档。图5给出了层次化的程序结构图。
图5 程序结构图
最后,视频录像可以弥补文档中不便于文字叙述的内容,以口语化方式对每个模块的技术实现文档加以说明。此外,还要录制Readme 文件,让后来者对整个文档资料有一个宏观的认识,同时也能得到一些入门秘籍。可邀请屏幕录像专家用软件完成上述工作。
经过4年的专业综合改革实践,学生收获颇丰,显现出很强的就业竞争力。心得体会如下:
尽管各课题组是独立的,但分工不分家。纵向上,要知道任务上下游的关系和接口;横向上,注意和其它课题组相同角色成员(友军)的交流,并对该领域的共同关注的问题进行技术研讨。
千斤重担人人挑,个个头上有指标。作为一个团队合作,必须要求所有成员在规定时间内完成分配的任务,不能因为少数人的拖沓和退出,影响整体进度。
在运行初期,在人员分组和方案设计等方面,学生存在一定的盲目性,需要教师作为组织者加以引导,但在理顺学生自治的管理体系后,教师主要负责提供场地、设备和材料等硬件条件,营造一个自由民主、宽容和谐的学习氛围。只有实现学生自我管理,才能实现可持续发展。