单片机教学探讨

时间:2022-07-04 02:42:23

单片机教学探讨

摘 要: 本文从激发学生课程兴趣和动力,两类编程语言教学方式效果对比,项目化教学在教学中的运用及理念联系实际四个方面介绍在中职学校如何进行单片机课程教学,从而提高课程教学效率。

关键词: 单机机 C语言 项目化教学

我是一名从事电子专业教学的中职教师,中职学校学生学习水平低,学习主动性差,如何将一些专业性比较强的课程教给学生对老师来说是一个巨大挑战,所幸我从事教育教学工作多年,在这十多年里累积了一些非常宝贵的经验,现针对学生认为比较难学的单片机课程进行教育探索。为什么挑单片机讲呢?这里简单说明一下,主要因为单片机是一门既要懂硬件又要懂软件的课程,对学生来说,如果能把单片机真正搞懂,就算半个电子工程师了。

古语常说:“师傅引进门,修行靠个人。”我觉得这句话非常有道理,作为一名合格的老师,并不在于你教会学生多少知识,而在于当你开启每一门新课程时,能让学生有个良好的入门,让学生懂得自己在学习什么,激发学生潜在的学习动力,这样学生有激情有动力学习,才能学会并掌握一门功课。倘若老师我行我素地满堂灌,而台下学生没有兴趣听,没有兴趣学,讲再多的知识也没有用,学生听过之后就忘记,课后不练习实践操作,一点效果也没有。因此,每次讲新功课时,总想办法让学生联系实际,让他们知道自己要学习的专业课到底有什么用,涉及哪些应用领域激发学生对新课程的好奇心。针对单片机课程教学,第一节课我一般会布置一份课后实践作业,让学生寻找“身边的电子产品”,学生可以用手机拍下看到的一切电子产品,并登录个人账号,上传到我制作的“魔灯”课程网站上,我会将学生的作品整合后,在第二节课时,对学生做一个引导入门介绍。学生拍来的作品五花八门:有ATM机、交通灯、液晶电视机、数码音响、遥控器、空调、智能玩具、洗衣机、电饭锅、电灯、电脑、手机、IC卡等,他们能想到的、能见到的都给拍了上传过来,在这么多材料里,我必须进行一定筛选,选出一些跟单片机比较紧密相关的,并且接下来课程传授会牵涉相关知识点的一些电子产品,如交通灯、空调、洗衣机这几个比较基础的。我会试着引导学生,挑选其中一样电器让学生思考:“整个电子产品到底是怎样构成的?”“它是通过什么样的方式工作呢?”从而慢慢引导学生了解单片机的控制作用。接下来,我会将学生的所有作品都快速播放给他们看,这么做的目的在于对他们进一步强调本课程的重要性,单从他们上交的作业就可以看出现今社会智能化东西越来越多,意味着日常生活中使用的单片机越多,所以学习单片机非常有前途,学好了不怕找不到工作。

引起学生的学习兴趣与重视以后,接下来就是防止学生“半途而废”,在教学过程中这是最难的一关,时刻保持住学生的学习热情和学习动力,也就是所谓的“恒心、毅力”,我常常跟学生开玩笑说,你们要时刻“一心一意”地跟我走。在讲课过程中,我常常斟酌自己的语言,尽量用通俗的表达方式讲解,碰到一些比较基础的电子知识,只要学生有疑问,就花时间整理知识点,确保学生可以理解掌握,因为我始终坚信“万丈高楼平地起”,如果没有良好的基础,则学习路程走不远。为了让学生更有兴趣学习,我还挖空心思学习电子画图,尽可能以图例形式形象表达一些知识要点。

学校的课程还是传统的51系列单片机教学,毕竟它是目前市场上用得最多的单片机之一,而且其指令通俗易懂,I/O(输入输出口)的控制简单。

一开始,我会简单介绍单片机的工作条件及硬件组成,接着教学生用单片机学习套件试着点亮一只发光二极管,当学生发现原来自己只要写几条指令就可以让灯亮时,心里是无比兴奋的,这时进一步让学生依次点亮八只发光二极管,在学生慢慢入门以后让他们学习编程,让发光管以流水灯的方式点亮,到此算是一个很好的入门操作。其实这还只是入门,要登上大殿,路程还很遥远,学习单机片最头痛的就是硬件部分,硬件难就难在没有头绪,学习硬件技术找到一个合适的入手点最重要。为了解决这个问题,教研组经过讨论和设计,在开设单片机课程之前,都先开设数电与模电设计课程,让学生学习简单的数字电路设计和模拟电路设计,制作一些简单的电路板,为后续单片机课程打好基础。

再来是编程语言的选择,我们纠结了很久,到底用哪一种语言好,是汇编呢?还是C语言?一开始,我们先从汇编语言程序设计入手,虽然汇编对中专学生来说很难,但是坚持半年下来后会发现,采用汇编教学后,学生对MCS51的内部硬件构成比较清楚,但是弊端就是全班真正掌握的学生比例很低。后来我们采用C语言教学,因为C语言有很好的结构性与模块化,更符合人们的思考习惯。对比两种语言的教学效果,采用C语言效果远好于汇编。毕竟汇编在编程时往往要考虑细节问题,而这对中专生来说有点难,往往是一个小细节问题会让你搞半天,而结构化的C往往只需要考虑算法无需过多考虑细节问题,同时可读性好,调试时间大大减少。所以学生都比较喜欢C,后来的教学过程中,我们一直采用C语言教学,除非个别聪明的学生希望学习汇编,我们会以兴趣小组的方式开展。

在教学过程中我采用项目化教学,这是一种比较实用的单片机教学方法,直接教学生怎样使用C语言开发单片机,采用模块化教学生,让学生在较短时间内掌握IO口、定时器、中断的操作,通过一个一个模块的学习,让学生慢慢了解芯片内部的硬件构成细节。这种教学方式的优点体现在:学生刚开始学习时,不需要花很长时间学习单片机内部硬件构成结构之类很枯燥的东西,只要明白C语言的变量与单片机的IO口等模块里的寄存器、一个函数与对应的单片机的一项功能、顺序语句与单片机的顺序输出、条件语句与单片机的输入输出间条件关系、循环语句与单片机的反复型输出是怎样映射的就可以完成很多范例项目的开发,保持住学习兴趣。

当学生学习进入一个阶段以后,就可以进行比较深入的实验,让学生在实践中领悟理论,用理论指导实践。学习单片机,只有让学生真正实际动手做点东西,才能真正弄明白自己到底学习什么。我会设计一些比较简单的项目,让学生分组抽签,每个小组做一个小项目,让学生在设计过程中加深印象。不管怎么样,单片机学习过程应该是一个循序渐进、不断学习、不断积累的过程,需要师生双方配合,才能掌握。在教学过程中,我对单片机应用这个领域始终充满热情,希望与行业里的各位老师多多交流,不断学习,不断成长。

参考文献:

[1]李广弟,等.单片机基础[M].北京航空航天出版社,2001.

[2]王东峰,等.单片机C语言应用100例[M].电子工业出版社,2009.

[3]张毅刚,等.MCS-51单片机应用设计.哈工大出版社,2004,第2版.

[4]霍孟友,等.单片机原理与应用.机械工业出版社,2004.1.

上一篇:实践思维的软件工程教学方法浅析 下一篇:基于CDIO理念的工程估价课程教学模式研究