面向应用型人才的“单片机”课程教学改革

2014-07-04 11:30田会峰
电气电子教学学报 2014年6期
关键词:调试单片机模块

田会峰,周 瑜,赵 丽

(江苏科技大学电气与信息工程学院,江苏张家港215600)

目前,在我国高等工科院校中,已普遍开设了“单片机”及其相关课程。毕业生是否具有单片机开发能力,已成为许多公司招聘电子、测控、自动化和通信等工科专业学生的衡量标准,同时也成为他们寻找理想工作的必备技能之一[1,2]。

“单片机”作为实践性很强的一门专业课程,传统的教学方法已经不能适应培养工程应用型人才的需求。因此,对课程进行改革已迫在眉睫。

1 “单片机”课程教学存在的问题

1)课程设置的问题

一般工科院校在开设“单片机”课程之前,先安排“微机原理与接口技术”课程。以我校电气工程及其自动化专业为例,“微机原理与接口技术”课程为72学时,“单片机”课程为48学时。而我校非电类专业(如机械电子工程专业),没有开设“微机原理与接口技术”课程,因此,这些专业的“单片机原理及应用”课程为72学时。这些课时中实验课时只占理论课时的1/2,甚至更少,实践学时不能满足学生实践能力的培养的需求[3]。

2)教学方法的问题

单片机的传统教学方式是课程理论教学与实践教学分开,课堂教学以理论为主。实践教学一般采用单片机实验箱进行简单的验证性实验[4]。

3)实验设计的问题

目前的单片机实验,学时较少。实验设备一般是实验箱或开发板,而这些都带有源程序。学生做实验时基本不需要自己独立编程,只是简单的用导线把硬件连接起来,然后将源程序下载到单片机内,运行调试后查看结果即可。

2 基于CDIO理念的敏捷开发岛构成

2.1 敏捷开发教学理念

笔者针对“单片机”课时较少的电类专业,提出了基于敏捷开发和CDIO理念相结合的教学方法。

敏捷开发是一种以人为核心,完成迭代和循序渐进的开发方法。在敏捷开发中,一个系统项目被切分成多个子项目,各个子项目都具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可以独立运行的小项目后分别完成[5]。

CDIO工程教育培养大纲将工程毕业生的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力四个层面,大纲要求以综合的培养方式使学生在这四个层面达到预定目标[6]。

2.2 敏捷开发岛的构成

我们将敏捷开发和CDIO理念相结合,引入到“单片机”的教学中。假设每个班级以40人计算,划分成10个“敏捷开发岛”,每个“敏捷开发岛”由4人组成,负责完成一个独立的项目课题。每个敏捷岛的团队4人分别承担项目经理、硬件工程师、软件工程师和技术支持等职务。图1所示的是“敏捷开发岛”的构成。

图1 敏捷开发岛的构成

(1)项目经理岗位适合于不仅动手能力较强,而且组织协调能力也好的学生。主要负责整个团队的管理、协调和正常运作。除此之外,还有负责整个系统的软件仿真,验证系统设计方案的合理性,这个软件仿真主要由Proteus软件完成。

(2)硬件工程师岗位适合对硬件电路设计能力比较强的学生,要用Protel绘图软件设计系统原理图,制作PCB电路板,焊接电子元器件,并调试系统硬件。

(3)软件工程师岗位适合编程能力较强的学生,要使用C语言或汇编语言编写系统程序,并调试系统软件,优化系统功能。

(4)技术支持岗位适合整理文档能力较强的学生。主要负责整个系统的文档资料整理,包括系统的方案论证、元器件选型、硬件设计、软件设计、系统调试以及系统升级等。

2.3 技术文档

项目的技术文档包括:用户说明书、量产技术说明、产品升级说明三个部分。用户说明书是指详细告诉用户如何使用该产品。量产说明书是指小批量生产,是给生产人员使用的。产品升级说明书是指硬件设计原理图和软件设计源程序等。

通过撰写和整理技术文档,使学生提前熟悉企业产品设计和生产流程,并能提前发现自己知识和能力方面的不足,充分利用在校的学习时间,为今后的工作而储备知识和积极实践经验。

3 “单片机”课程敏捷开发

3.1 项目甄选

“单片机”作为一门实践性很强的课程,将敏捷开发引入教学,就要结合科研项目,把所要讲授的各项理论知识和实践技能分解到具有明确应用目标的任务中,让学生在规定时间内完成任务[7]。

因此,“单片机”课程中适用于CDIO的项目要由教师仔细设计和甄选,项目来源于具有实际意义和应用价值的企业项目和教学科研项目。这些项目与生产实践相结合,能够激发学生的学习动力。

3.2 敏捷开发流程

(1)布置课题—教师布置10个项目课题,并讲解每个项目所要完成的工作和所需的专业知识,以及如何学习这些专业知识去独立完成项目。

(2)学生分组—学生根据自己的专长组建“敏捷开发岛”。

(3)课题分析—教师根据每个“敏捷开发岛”选择的课题情况,对课题进行详细分析。

(4)系统分解—每个“敏捷开发岛”由项目经理负责讨论项目系统设计方案,并将系统分解成若干个模块,成员分工完成每个模块,并将讨论结果与教师交流。教师根据讨论结果后提出修改建议。

(5)模块设计—每个“敏捷开发岛”的成员根据自己的任务设计子模块,边做边学。设计完成后,交给教师检查。

(6)知识讲解—教师针对学生模块设计中遇到的问题进行统一讲解,并帮助学生解决设计过程中遇到的困难和问题。

(7)验收模块—教师检查学生完成的子模块。学生完成任务时可以继续设计其它子模块;若设计不正确或存在缺陷,让学生重新设计完成任务。

(8)系统调试—每个项目组将各子模块组合起来调试,项目经理根据自己完成的软件仿真结果与项目实物调试结果对照,是否一致。

(9)课题验收—教师对每个单片机项目进行逐一验收,并让每个项目组成员回答教师的问题。教师根据每个学生的答辩情况和项目实际的成果,给出每个学生的课程成绩。

(10)课程总结—学生总结学习知识和完成项目中的经验和不足之处;教师也根据各个项目的整体完成情况,对此次单片机课程教学进行总结。

通过敏捷开发项目对学生的锻炼,将传统以教师为中心改为以学生为中心的教学方式。这种方式不但能提高学生的积极性,还能锻炼其综合能力。经过几门课的训练,学生更加积极地参加校内第二课堂的大学生科技创新计划和国家、省级的学科竞赛,均取得了优异的成绩。

3.3 敏捷开发流程与企业真实情况对比

为了更好地验证敏捷开发流程的有效性和实用性,我们特意咨询了相关企业,了解他们在产品设计开发过程中的具体流程,通过将两者进行对比来说明敏捷开发训练的重要性。

表1显示了两者的对比情况。

表1 非敏捷开发与企业情况对比

表中所示的10个环节中,有7个一致,2个基本一致,1个不一致。但是敏捷开发的第8个环节的“系统调试”与企业情况中第6环节的“系统测试”是一致的。敏捷开发中多了一个“知识讲解”,而企业情况中多了一个“系统整改”。由此可见,基于敏捷开发的教学,与企业实际项目开发是基本一致的,符合实际项目开发流程。这对学生就业和实践能力提升都有很大的帮助。

4 结语

本文提出了一种基于敏捷开发与CDIO理念相结合的教学方法,该方法对教师和学生都提出了更高的要求。对于教师,要有丰富的单片机系统设计经验,包括硬件设计、软件设计和软件仿真等,要能及时解决学生遇到的问题。对于学生而言,采取任务驱动“单片机”课程学习的方式,不仅增强了学习能力,还锻炼了团队合作精神和独立解决问题的能力,而这些往往是学生毕业后最需具备的能力。使“单片机”课程实践环节摈弃了课内实验或课程设计的传统模式。客服了教学内容单一、工程背景不强和综合训练程度不够的问题。

用本文提出的方法进行单片机课程教学改革与实践,起到了预期的效果。这对其他实践性较强的课程,比如PLC、DSP或嵌入式系统等都具有较好的参考价值。

[1]张宏伟,阎有运,王新.单片机实践教学改革的探索与实践[J].上海:实验室研究与探索,2009,28(4):206-208.

[2]陈亮.单片机课程的教学改革[J].上海:实验室研究与探索,2008,27(9):121-123.

[3]唐炜.基于“项目驱动”的单片机类课程实践教学改革[J].上海:实验室研究与探索,2010,29(5):130-132.

[4]张迎辉.任务驱动项目教学法在“单片机应用技术”教学中的运用[J].广州:教育探索,2013,(6):264-265.

[5]闫帅,许朋翔.基于瀑布模型与敏捷开发相结合的项目管理方法探讨[J].北京:电子技术与软件工程,2013,(18):67.

[6]崔贯勋,王勇,王柯柯,等.基于CDIO的物联网工程专业实践教学体系的研究与实践[J].北京:实验技术与管,2013,30(5):111-114.

[7]胡敬朋,王聪.单片机项目教学研究及实践[J].南京:电气与电子教学学报,2009,31(5):82-84.

猜你喜欢
调试单片机模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
基于航拍无人机的设计与调试
FOCAS功能在机床调试中的开发与应用
无线通信中频线路窄带临界调试法及其应用
调压柜的调试与试运行探讨