张磊 庄丽阳
【摘要】针对单片机知识抽象难懂,学生提不起兴趣的现状,以激发学生学习兴趣為切入点,提出多项有利于调动学生学习积极性、使单片机知识深入浅出的教学改革方法;同时结合大学生创新实践、学科竞赛需要应用单片机知识的情况,提出利用实践成果促进教学的教法以及挖掘人才、鼓励学生参与实践的指导方法,学生反映良好,也推动了创新实践与竞赛出成效,使单片机教学与学生创新实践达到了互动双赢。
【关键词】单片机 教学改革 创新实践
【基金项目】受南通大学教学研究课题(2012B025)的资助。
【中图分类号】G642 【文献标识码】A 【文章编号】2095-3089(2014)09-0238-02
1.引言
大学生在面对象“高等数学”这种较难的基础课程时,可以沿袭中学课程的学习方法,不需要动手实践,也可以应对。因为当前大学生不缺应试与做习题的能力。然而面对《单片机原理及应用》这样需要通过实践才能理解其中抽象、繁杂概念的课程时,原来应付基础课程的方法失效,许多学生遇到了前所未有的困惑与不适应。对机械专业的学生来说,“单片机”这样带有计算机科学特点的知识使他们尤为不适应,造成学习效果不佳,学习兴趣提不起来。“数据指针”、“状态标志位”、“工作寄存器”、“中断”等等这些闻所未闻的概念是什么,有什么作用,为什么会有这些东西,计算机运行怎么需要那么多的抽象概念。这些对于计算机运行原理还是未知数的学生来说确实是困难的。因为不少初学者会想当然认为计算机运行与操作看起来是那么友善与简单,而接触到原理的时候,却会遇到那么多晦涩难懂的概念,这种理想与现实的巨大落差,导致兴趣骤然下降,如果不加以改善,课程教学难以取得理想的效果。因此从激发学生学习兴趣入手,探讨提高单片机课程学习效果的方法意义重大。
另一方面,各大学都设置相应的实验课、创新实践课,每年也有各类创新训练项目,以及机械创新设计、机器人或挑战杯等大学生学科竞赛。这些实践项目往往是机电相结合,是单片机知识应用的重要平台,也是检验大学生是否将所学的知识应用到创新实践,检验课程学习效果的重要试验田。因此研究将单片机学习与创新实践相结合互动双赢的方法有着积极的实用价值。
本文应此背景提出,从激发学生学习兴趣入手,既提高课堂学习效果,又鼓励大学生投身实践与比赛,使课程知识应用于实践,促进了单片机学习与创新实践的互动双赢。
2.改革教学方法,提高学生学习兴趣
传统的单片机课程教学注重理论,授课一般按“结构”、“指令”、“编程”、“接口扩展”等过程进行,这种方式固然需要,然而如果仅仅是理论的灌输,则显得枯燥无味,学生难以提起兴趣。另一方面,当前许多单片机教程也是按照上述思路介绍,语言文字都是呆板的专业术语。有时,有些专业词可能都未解释就被用来又解释另一生疏专业词的功用。比如刚出现“程序状态字寄存器”,就用“进位”和“溢出”来说明程序状态字寄存器就是存储这些状态特征。那么“进位”、“溢出”又是什么意思,代表什么现象,并未进行说明,而这样的现象在单片机教材中几乎遍地都是。这些造成了初学者的困惑,也是学生普遍反映这门课抽象的重要原因。
因此对于单片机中普遍出现的抽象名词,应该改进教学方法,用容易理解的方式进行传授。本文提出并实施了以下几种改进的教学方法。
2.1 多采用比喻手法,化抽象为形象
对一些单片机术语可采用比喻的方式进行传授,引导学生与生活中的类似现象联系起来,化抽象为形象。
比如为了让学生理解什么是“存储器”,什么是“寄存器”,两者有什么区别。可将“存储器”比喻成是图书馆,可存储较多的书。但是图书馆离我们有些远,对于使用非常频繁的书,放在图书馆就不方便了,就必须放在我们的身边,比如宿舍。CPU的“寄存器”就类似宿舍,存的书不多,但存取方便。CPU在运算时,也是类似道理,需要迅速处理大量临时数据,寄存器可使CPU就地取信息,提高了运行速度。这种形象的比喻,方便了学生理解寄存器与存储器的概念区别。我们发现这种形象的教学方法增强了教学趣味性,提高了学生学习兴趣,学生反映良好。
2.2 合理解释概念,让学生认识规律
对一些单片机术语可采用合理的解释让学生认识到计算机科学知识点的基本特点与规律。
比如程序状态字寄存器中的“进位”标志位。学生刚开始是不能理解这是什么,为什么需要它,而我们发现大多教材并没有给出一个浅显易懂的解释。其实在开始讲单片机时就应该告诉学生,计算机就是在模拟人类的许多行为。但人类一个很不经意的行为,计算机是不会自动执行的,这就是计算机科学的基本特点。比如,在这个“进位”标志位的概念上,要告诉学生,两个八位数相加,完全可能高于八位,产生进位,人相加时会自然地记住“进位”这个事。而一个八位的单片机只能存八位结果信息,并不会自动存储这个现象,需要某个存储单元来记录两数相加是否发生了进位,因此当初设计单片机或计算机的人就使用程序状态寄存器的一个“位”来存储了这个现象。
类似这样的现象在单片机或计算机中十分普遍。比如“堆栈”就像生活中的杯子可放东西,但人们生活中将杯中的东西拿走是可以看到杯底的,而对计算机来说,这个现象不会自动发生,需要人为通过软件使指针指向栈底,这就是堆栈指针的一个重要作用。
通过这样的解释让学生开始初步适应计算机只是个机器,许多动作需要我们指定它完成。有了类似的解释,并且在以后不断强化,学生就不会对新的类似现象感到陌生,而是提前知道了有关规律,有利于消除恐惧感,调动学生学习兴趣。
2.3 强调与实验相结合,增强教学趣味性
单片机是一门实践性很强的课程,十分有必要采取实验演示或让学生动手实践,让学生真正感受单片机的功用与趣味。
教学中,我们根据当前多媒体教学作为主要模式的特点,有时采用单片机的虚拟动画演示,让学生清晰看到投影画面显示的模拟效果,提高了课堂教学的趣味性。在课堂教学中,发现仅凭陈述或模拟演示单片机是如何运行仍然比较抽象,如果能实际立即运行给学生看,则会显著改善教学效果。对于比较简单的情况,学生一般能够现场理解有关程序,这类实验也不占用课堂教学太多时间,因此我们有时直接将实验箱带到课堂让学生现场观察单片机的运行效果,增强了教学的直观性与趣味性。最典型的有发光二极管轮流点亮等简单实验,可使学生立刻体会并验证单片机端口怎样传送电平信息,怎样通过软件实现移位,从而生成前述的效果。
对于较复杂的程序,课堂上进行详细讲解,比较枯燥,让学生当场理解并不现实,即便课堂上进行实验,也未必能让学生将知识消化得透。我们认为对于这样的复杂程序与实验,适合采用课堂讲解大体思路与关键点,要求学生课后花充足的时间理解消化,然后在实验课上进行验证。时间允许,则可在课堂上再次解释其中的关键点,使学生巩固知识点。这种讲课与实验相结合的“学到做,做到学”模式,可有效解决学生对复杂知识的理解,消除学生对复杂知识的恐惧。在理解知识的基础上,生动的实验效果,可大大增强学生对单片机深入学习的信心与兴趣。
2.4 利用创新实践与比赛激发学生学习兴趣
当前大多院校都重视学生的课外创新实践,鼓励学生参加大学生学科竞赛,其中单片机是机电类学生常用的控制平台,单片机的应用可以说就在大学生的生活周围。因此,将大学生创新实践的实例、大学生学科竞赛的作品作为成功案例向学生介绍,可起到激发学生学习兴趣的效果。笔者从事指导大学生创新实践与学科竞赛多年,基本上都有单片机的应用。在课堂上笔者将自己指导的2012年获全国奖的楼道清洁机器人与机器章鱼作品有关演示录像、以及参赛者的创作过程给学生介绍与展示。同学们对其中作品的巧妙以及控制得自然感到特别神奇。不少好奇的同学摩拳擦掌,充满着对单片机学习的渴望,不仅想学好这门课,也想在课余时间应用单片机知识制作自己设计的作品,锻炼自己,努力把课本知识与创新实践相结合。
大学生创新实践或比赛作品往往需要较复杂的单片机系统,对于课堂上大多还未接触过单片机的同学来说,不适合直接将复杂的单片机平台或程序讲授给学生,需要化复杂为简单。因此,我们在教学中,进行了很大的简化。比如作品中机器人遇障碍避让,控制实际使用的是STM32平台,该平台拥达百个中断,用户输入输出口达几十,甚至上百,这样的复杂系统对于毫无单片机概念的同学是难以适应与理解的,但基本的道理仍然是某输入端口接受到电平信号变化,触发单片机转入中断服务,中断服务程序就是一个控制电机不同旋转速度与方向的子程序,从而使轮子差动旋转,实现机器人转身的动作。针对课堂教的是51单片机及汇编语言,我们就采用简单光敏电阻接受遮挡,通过中断输入口产生中断信号,使51单片机原本控制的电机旋转暂停或反转来简单模拟实现,以此联系到复杂的机器人控制,使学生理解机器人控制实现的基本过程与原理。该方式有利于解开单片机的运行奥秘,消除学生对单片机学习的恐惧。
3.鼓励大学生积极将知识应用于实践
当前许多大专院校为鼓励大学生动手实践,积极创新,设立各种实践创新训练项目,教育部以及有关协会组织各类学科竞赛,培养促进大学生的实践创新能力。这些实践项目与竞赛是课堂所学知识应用的重要试验田,不仅考验着大学生的实际应用能力,也是对教师专业课程教学效果、引导大学生应用知识效果的检验。
3.1充分挖掘人才,向高级应用转型
仅凭课堂上学习的知识不足应对作品的机电控制实现,需要培养学生在课堂知识的基础上进一步学习更复杂的单片机知识,更重要的是将知识应用于作品的实现中。而教师不可能为所有学生提供实践项目的相关指导。为此,我们通过教学积极发现人才,吸收了若干有兴趣有能力的同学,充分挖掘他们的潜能,利用课余时间向他传授STM32等高级平台的应用,主要鼓励他们在课堂单片机知识的基础上自学高级平台单片机的知识,掌握其中软件的特点,不断锻炼自己,为复杂的单片机平台在实践与参赛作品的成功应用做好知识的储备。
笔者实际就从教学的班级中选拔了五到位同学参加了两个小组的作品控制实现,分别参加了2012年、2013年的大学生课外学术作品竞赛与国家级、省级大学生创新训练项目;2014年又在单片机教学所在班级选拔了若干位同学参加机械创新设计大赛,并提前让有关同学自学STM32等32位的单片机平台,让他们早早做好准备,及时使他们向高级应用转型,这样为创新实践作品的成形,比赛的顺利进行铺平了道路。
3.2 安排阶梯性训练,迎接实践与比赛的挑战
选拔学生向高级应用转型是使大学生参加创新实践与学科竞赛的基本要求。那么如何转型,帮助他们尽快适应作品制作的要求,是最终使单片机知识在实践中成功应用的保证。
为了迎接实践创新项目与大学生学科竞赛,给学生安排了阶梯性训练,从简单练习,到复杂实验,使他们既快速又扎实地学好学深单片机知识。例如,我们提前让他们走进本学院的实验室,重点进行更迫切需要的传感器中断响应、定时器、继电器、电机控制等51单片机实验。然后在我们自己购置的若干STM32单片机开发实验平台上,让他们及早掌握ARM指令的基本特点。由于有了51单片机的基础,学生学起来已经不很费劲,特别是STM32支持C语言编程,提供了大量的库函数,有些方面甚至比51单片机掌握起来更容易,而又能胜任多传感器复杂控制的要求。这些为迎接实践项目与比赛的挑战做好了准备。
在2012年、2013年多次训练大学生参加创新实践项目,笔者指导的团队获立国家级、省级4项。还经常鼓励并安排学生参加实践创新性的学科竞赛,其中“升降伸缩式楼道清洁机器人”作品在全国机械创新设计大赛获一等奖,其它作品也获得了全国机械创新设计大赛二等奖、南通市首届大学生课外学术作品一等奖、优秀奖等奖项。这些创新项目与参赛作品几乎都是机电相结合,都依靠单片机控制实现,充分证明了我们倡导的单片机教学与应用方法的成功之处。
4.结束语
单片机教学历年来是各高校老师教学的难点,学生普遍感到知识抽象难懂,而另一方面单片機知识又是大学生创新实践迫切需要的知识点。为此,我们以激发学生兴趣为切入点,提出多项有利于调动学生学习积极性的教学改革方法,又将大学生创新实践、学科竞赛与课堂单片机教学相结合,提高课堂教学效果,同学们反映良好,同时也促进了大学生创新实践、学科竞赛取得显著成效。这些证实了我们教学改进方法的有效性,希骥对今后单片机教学方法的发展带来积极的参考价值。
参考文献:
[1]林契, 刘子坚. 大学生电子设计竞赛对单片机教学改革的促进.科技咨询导报, 2007: 28: 228
[2]邓文娟, 朱兆优, 王嵩. 探索单片机教学改革提高学生工程实践能力. 东华理工大学学报(社会科学版), 2010, 29(4): 383-386
[3]吴允平. 单片机教学改革与学生工程素质和创新意识的培养. 福建师范大学学报(自然科学版), 2004, 20(1): 111-113