任务驱动法在《单片机原理及应用》教学中的应用
2016-02-26刘岩
刘岩
【摘 要】本文从单片机课程传统教学方法中存在的主要问题入手,结合该课程的特点,采用了任务驱动的教学方法,并将Proteus和Keil51软件仿真引入其中。在提高学生学习单片机兴趣的同时,也培养了学生的创新意识和团队精神,取得良好的教学效果。
【关键词】单片机;任务驱动;Keil51;Proteus
《单片机原理及应用》是机电一体化专业核心专业课之一,发展迅速更新快、应用面广。学好用好单片机,也是提升就业竞争能力的一个重要措施。但是传统的单片机教学,均是先讲单片机的硬件结构之后讲指令及编程,最后再讲一些实例。按照此种教学结构,学生普遍感到难学。而且单片机是一门很注重动手的课程,单片机的指令和程序需要在实践中加以验证和巩固。根据上述问题,我以任务驱动法为主以其他教学方法为辅进行单片机教学,取得了较好的教学效果。
1 任务驱动法教学的前期准备
对于任何一门课程,入门都非常关键,如果让学生一开始就感觉很难,那大多数学生就会望而却步了。如何有效的调动起学生学习的积极性至关重要。因此,我安排了两个任务,首先讲解单片机的应用,得出结论“单片机已渗透进我们生活中的每一个角落”,激发学生学习兴趣。其次让学生了解单片机的基本结构、汇编语言软件使用等。接下来我们通过蜂鸣器的单片机控制这个任务的学习,引导学生学会如何利用单片机完成一个任务。由于该电路简单,学生容易理解,大部分学生都完成了任务,取得了成功,成功的经验为学生建立起了单片机应用的框架。走出了“不知庐山真面貌”的困惑,树立起了“一览众山小”的自信。
2 任务驱动法在单片机教学中应用实例
在学生了解了单片机的基本结构和应用后,就可以采用任务驱动法教学了。它是以完成一个个具体的任务为线索,把教学内容巧妙地隐含在任务之中。教师的教学与学生的学习都是围绕着任务来完成的。任务提出后,学生知道做什么,自然会思考如何做,听课时有的放矢,学习的主动性大大提高。共分为“引入、分析、实施、检查、总结评估”5个步骤。
1)引入:创建与学习主题和实际相关的情景(夜晚置身街头,各式彩灯把我们带入美轮美奂的世界,究竟是什么“魔力”使彩灯变换出多样的显示效果?)使学生带着问题听课。同时通过实验箱演示各种流水灯的效果,激发学生的学习兴趣。
2)分析:首先提出要求“利用单片机P1口控制8位流水灯”,在教师的引导下学生逐步分析如何去完成任务。任务的实质是每经过固定的时间将P1口的状态依次循环左移或右移,任务的重点是时间的控制,这部分功能可由延时程序来完成。之后教师开始讲解硬件电路设计及循环程序设计相关知识点,重点讲解延时子程序的编写及延时时间的确定。任务分析可培养学生的发散性思维,培养学生分析问题及发现问题的能力。
3)实施:由于单片机学时的限制,每个项目都让学生做出实物不太现实,那么在进行完任务分析之后,就可以利用现有的编程软件Keil51及仿真软件Proteus两者相结合进行实验验证。这种方法可充分利用学校计算机房的现有设备,减少了实验设备的硬件维护工作量。把学生分成若干组,每组选一名组长。每名同学都需要在仿真软件中完成硬件电路设计和程序的编写与仿真调试。此时应该充分调动起各组组长及已经完成项目的同学,让他们帮助解决,必要时教师给予提示和鼓励。这样不但可以促进小组成员间的情感交流,还可以促进合作能力的提高。对于学习较好的同学可以引导其探讨更多的彩灯变换效果。对于学习吃力的同学进行单独辅导,力求每名同学都能够完成任务。下面详细说明这两个软件的操作。
(1)硬件电路设计:Proteus是一种电子设计自动化软件,可以仿真常用的MCU和所有的外设。学生在Proteus软件上完成硬件电路设计。打开Proteus软件,绘制如图1所示的8位流水灯的单片机控制硬件电路图。单片机常用的元器件的名称应该让学生记下来,以后的学习中还会用到。(2)控制程序编写:完成硬件电路的设计之后就可以进行控制程序编写,Keil51是一款基于51单片机的软件开发工具,它支持多种语言编程。打开Keil51软件,新建一个工程项目文件,命名为Lsd,并为工程选择目标器件,选择Atmel的AT89C51芯片。接着创建一个源程序文件起名为main2.asm并输入如图1的源程序代码,写完程序后将该源程序文件添加到当前的工程项目文件Lsd中,并为工程项目设置软硬件调试环境,一定要为目标设置选项,点输出选项卡,在产生HEX文件前打勾,并起名为lsdsc,源程序文件经过编译、建立目标文件lsdsc.hex,若程序没有提示错误就可以进入调试环节。(3)程序的仿真与调试:将lsdsc.hex文件加载到Proteus的单片机中并运行,使学生在没有单片机硬件实验箱的情况下也可直观地看到仿真结果,一目了然,增强了教学的生动性和直观性。
4)检查:学生完成任务后,按照任务要求自行检查是否符合要求,并分析故障现象以及解决办法。要鼓励学生勇于提出疑问、大胆猜想与探索。通过完成任务,不仅学到了知识、还提高了学生解决问题的能力以及团结协作等关键能力。
5)总结评估:学生操作演示,教师根据学生的表现以及完成任务的情况,按照(硬件电路设计20%、控制程序编写60%、6S管理20%)给出学生分数,作为学生一个任务的成绩,这部分成绩占期末成绩40%;平时成绩占30%(包括出勤、纪律、作业等);阶段性测验占30%。由此可见,对于学生的考核,既包括了专业知识的考核,也包含了方法能力的考核。这种考核注重实践与理论的结合、结果与过程的结合。最后教师做出总体评价,并总结学生做的过程中出现的成功与不足之处,并在技巧及知识的拓展方面加以总结。这个过程可以开拓学生视野和思路,扩展学生的知识面。
3 任务驱动法下的实训
由于实验课时有限,授课过程无法做出实际的产品。课程实训刚好弥补实验课的不足。我选择了《位流水灯的单片机控制》和《1位数码管显示控制》这两个项目。参照企业工作的程序,把全班分成若干组,几个学生合成一个项目组,共同完成一个课题,从工作任务的提出—硬件电路设计—程序设计及仿真—焊接调试电路板—编译下载烧录程序—运行观察—修改程序等几个环节,要让每名学生都参与其中,使学生真实体验到完成一个单片机项目的全过程。经过两周单片机实训,每组都完成了一个电路板。最后把每组的电路板运行起来并进行照相和录像,使学生对单片机系统有了进一步的认识;培养了学生的实际动手能力、沟通协作能力和创新意识。同时学生做的电路板可以在以后的教学中作为教具使用。
综上所述,任务驱动教学法始终把学生作为学习的主体。以任务作为驱动,让学生通过自己的操作并利用Proteus和Keil51软件,把书上死的理论变成活的应用,提高了学生学习单片机的兴趣和积极性,促进了学生创新意识的培养。因此,在我院单片机教学中实施任务驱动教学法并结合软件仿真等教学方法,能够大大提高教学效果。
【参考文献】
[1]董晓庆.单片机教学应注重培养学生动手能力[J].高校理科研究,2010(14).
[2]刘国光.任务驱动法在单片机教学中的应用[J].黄石理工学院,2005(4).
[3]朱翔.单片机课程教学改革探索[J].读与写杂志,2010(3).
[责任编辑:杨玉洁]