以提高实践能力为导向的单片机实验教学改进

2018-02-09 13:06姜绍君何英昊
中国现代教育装备 2018年19期
关键词:数码管实验课单片机

姜绍君 何英昊

大连理工大学城市学院 辽宁大连 116600

单片机实验是一门综合模电、数电、C语言、单片机原理等的实践课程[1],也是锻炼动手实践能力重要的途径[2],更是培养大学生就业非常重要的技能之一。简单的单片机实验还远远满足不了用人单位的要求[3]。单片机实验在培养学生实践能力方面具有极其重要的意义。为了提高大学生单片机的实践能力,本文主要研究了如何解决理论与实践联系、如何设计和调试实践项目等问题。

1 单片机实验教学的意义及现状分析

在单片机原理的教学中,理论教学48学时,实验教学24个学时,理论教学学时是实验教学学时的二倍。教师和学生往往有一种惯性思维,认为实验教学只是理论教学的验证,导致很多教师和学生产生重理论、轻实验的想法[4,5]。单片机原理是一门理论和实践紧密联系的课程,只有通过各种各样的实验内容才能深入理解单片机外部引脚的作用、内部各个模块工作原理、C语言程序控制流程。单片机原理也是在工程实践中被广泛应用的课程,通过单片机实验可以锻炼学生利用单片机解决实际工程问题。但是,通过用人单位和毕业学生的反馈,发现单片机实验教学方面还有一些问题亟须改进[4]。

1.1 教学方法简单

通常,在实验课前,教师要求学生预习实验内容。在实验课上,教师按照实验指导书的内容进行授课。首先,从实验的电路原理图开始讲解,介绍每个电子元件的作用、各个部分的功能。然后,在硬件电路的基础上,分析实验程序代码,讲解每一条语句的作用以及对应的特殊功能寄存器的功能。最后,学生按照实验指导书的步骤,在实验箱上进行简单的连线[4],在计算机上使用软件开发环境编写程序,下载和调试程序。

在这种简单的教学方法中,学生关注实验的结果是否能够做出来,现象是否正确,忽略对硬件电路原理和程序流程的理解,很难做到对知识的灵活运用,达不到实验教学的目的[4]。

1.2 理论和实践脱节

在实验课上,有些学生能够认识电路原理图的元件符号,对电子元器件实物却搞不清楚。例如,不知道单片机芯片哪个引脚是第一引脚,色环电阻1 KΩ的电阻和10 KΩ的电阻辨别不清等,导致实物连接错误。在实验箱上完成电路连线,下载程序,有时实验结果做不出来。例如,LED发光二极管不能点亮,按键检测次数编程出错,8位数码管不能实现动态显示等。对于实践中遇到的这些问题,学生首先想找教师帮助解决问题,而自己不去独立思考。

1.3 自主设计实验欠缺

对于单片机的实验内容,只需按照实验指导书进行验证,不需要从头到尾孤立思考进行设计,软件和硬件相结合的系统综合设计能力得不到有效锻炼。尤其是当学生面对单片机相关的毕业设计课题时,往往不知道怎样设计系统[6]。不知道怎样设计单片机外接的硬件电路,不知道怎样编写程序流程图,不知道怎样整合各个模块的联系实现系统控制。

2 实验教学的改进

2.1 加强理论和实践的联系

在某些情况下,通过软件仿真很难发现实验板上的电路问题,只有通过单片机实验才能真正验证理论的内容。单片机系统是软件和硬件互相配合、紧密联系的一个整体,即使理论上编写正确的程序也有可能无法准确控制硬件工作。单片机原理有一些较难理解的概念、专业术语、工作过程,只有通过实验才能明白理解。因此,实验课不仅要学习实验的内容,而且要强化理论和实践的联系。

2.1.1 单片机最小系统演示实验

在理论课上,学生已经掌握单片机最小系统的组成以及各个部分的作用。但是,在实验课上,按照单片机最小系统电路原理图,在面包板上连接电子元件实物,会出现各种各样的问题。例如,连错导线,电子元件引脚方向错误;由于时钟电路的晶振、电容与单片机引脚的连线较长,导致晶振时钟电路不能振荡,单片机系统不能工作等。只有通过实际操作,才能发现这些实践中的问题。

2.1.2 I/O口实验

单片机系统最基本的功能是LED亮灭的控制、按键开关的检测。在理论课上,对于按键按下一次的检测,单片机的程序很容易实现。但是,在实验课上,使用简单的程序检测按键按下的次数,很容易出错。

当按下一次按键时,按键接口的电平忽高忽低直至最终变成低电平,这种干扰信号持续时间约数毫秒左右。如果采用简单的低电平检测方法,就很容易造成多次误判。在程序设计时,每次间隔时间数毫秒,连续多次检测到低电平,能够避开干扰信号区域,正确判断按键被按下的次数。通过实验发现简单编程方法会出错。

2.1.3 LED数码管动态显示实验

多位数码管动态显示的应用十分广泛,也是单片机实验的重要内容。虽然数码管的动态显示原理比较简单,但是程序实现比较困难。如果各个数码管独自显示延迟时间设置不当,就会出现数码管一个一个单独显示、多个数码管都不能同时点亮的现象。对于这样的问题,可以提醒学生适当调整各个数码管独自显示延迟时间t=2 000 ms,1 000 ms,100 ms,10 ms等,学生会观察到不同的显示效果。对于数码管的“延时余辉”、人眼的“视觉暂留”等理论上难以理解的概念[7],通过观察实验现象,学生才能够充分理解。

2.2 实验项目的设计和调试

按照实验指导书连接电子元件、编译运行程序,学生只是初步了解单片机系统控制过程,但是没有掌握单片机系统各部分的有机联系,大多数学生不会设计完整的单片机系统。尤其是在一个比较复杂的实验项目中,如果实验结果做不出来,那么学生不会从系统的角度分析问题,浪费大量时间也没有解决问题。因此,在单片机实验中要培养学生设计和调试实验项目的能力[8]。

2.2.1 设计实验项目

通常,一个综合的单片机实验项目包含组合逻辑设计和时序逻辑设计。尤其是在设计时序逻辑电路时,单片机与其他模块相互协调工作,学生理解时序逻辑比较困难,自主设计难度较大,甚至出现无从下手设计的状况。因此,在项目设计阶段,指导学生在理解单片机与其他模块之间工作原理的基础上进行系统设计,设计电路原理图和软件流程图,使学生在脑海中有一个完整的控制流程。

2.2.2 调试实验项目

在单片机实验中,理论设计的硬件电路和软件程序常常会出一些问题,各种各样的原因导致正确的结果没有做出来,学生想找出原因解决问题也比较困难。因此,在项目调试阶段,培养学生解决问题的综合逻辑分析能力。

当单片机实验结果有问题时,指导学生从硬件和软件两方面进行调试。在硬件方面,检查电路连线、信号电平高低是否正确。在软件方面,单片机输入和输出信号的时序问题比较复杂。为了能够迅速准确地找出原因,根据软件设计的控制流程,指导学生利用示波器或者逻辑分析仪等工具逐步诊断各个控制信号的电平高低和控制时序,使学生找到解决问题的方法。

3 结语

在单片机实验教学过程中,发现学生在动手实验中遇到的一些问题。本文重点研究了如何提高学生解决实践问题的能力。经过多年的教学实践证明,这种教学方法能够有效提高学生的实践能力,初步培养学生的工程实践能力。

猜你喜欢
数码管实验课单片机
基于51单片机的分数计数器设计
微课教学设计之“数码管动态显示”
密林深处——“从写生到创作”的水墨实验课
基于单片机的SPWM控制逆变器的设计与实现
Arduino编程
基于单片机的层次渐变暖灯的研究
有趣的实验
基于单片机的多功能智能插排
MC9S08FL16单片机数码管静态显示分析
基于单片机的便捷式LCF测量仪