项目教学法在单片机课程中的规划与实施——以湖南人文科技学院为例
2013-06-07朱高峰张艳蕾
朱高峰,张艳蕾
(湖南人文科技学院 物理与信息工程系,湖南 娄底 417000)
项目教学法是指师生通过共同实施一个个完整的“项目”工作而进行的教学活动,是“以项目为主线、教师为引导、学生为主体”的新型教学模式。将其应用在我校电子信息科学与技术专业的单片机课程教学中,结果表明能显著提高学生学习积极性,提高学生对单片机系统的分析、软硬件开发和团体协作能力。
一 项目规划
项目任务的设计是运用项目教学法的前提和基础。授课教师既要考虑教学内容和教学课时,又要注意学生的兴趣爱好和可操作性,对单片机课程教学内容和知识结构进行设置和归纳,所规划的项目要根据教学大纲由浅入深,循序渐进,由简单的基本项目逐步过渡到复杂的综合项目。湖南人文科技学院电子信息科学与技术专业结合Proteus 和Keil 软件,编写出了单片机项目实施课程讲义,其项目任务如表1 所示。
表1 单片机教学项目任务分配表
二 项目实施案例
现以“LED 显示原理”的教学内容为例,阐述项目教学法在单片机课程中的具体实施过程。
(一)教学说明
本课堂的教学目的是理解LED 显示器的结构和显示原理,掌握单片机控制多位数码管显示的设计方法。将班级学生进行分组,每组2 人,教学场地定在装有Proteus 和Keil 软件的计算机房。教学时间为4 课时,第一课时安排为主要知识点讲解、项目布置,第二课时安排为项目资料搜集、总体设计方案、硬件设计,第三课时安排为系统软件设计,第四课时安排为系统仿真调试、综合评价。其中知识点的讲解主要包括LED 显示器的结构及相关驱动码,多个LED 显示的2 种显示方式,讲授时间约40 分钟。接下来布置项目,设计的基本任务为要求学生利用51 单片机驱动4 个七段数码管同时显示数字,学生可以根据自己所学知识和兴趣进行功能扩充,同时鼓励学生采用多种方法和不同的编程语言来完成设计。
(二)项目分析
充分发挥学生的主动意识,引导学生进行项目分析和资料查询。首先要确定所用的数码管是共阴极还是共阳极,共阴极的位线接地,共阳极的位线接高电平5V。同时为了使数码管足够亮,可考虑段码线外接三级管或其他逻辑门驱动,接下来要思考单片机的驱动方式。
方式一最基本的驱动方法是单片机的4 个8 位的I/O 口分别连接4 个数码管,由于各位的数据输出口不同,在同一时间里,每一位显示的数据也可以不同。但实际开发表明,当此方式显示变化的数据时,LED 有闪烁感,且亮度不够。
方式二在方式一的基础上考虑增加锁存器,同样采用静态显示方式,如在每路I/O 口线上增加一片74LS373,LED 显示的字符驱动码一经送出,相应锁存器将锁存其段码而维持不变,直至送入另一个字符的段码为止。但仍然无法克服占用单片机口线太多的缺点,在实际应用中也不可取。
方式三采用前面讲授过的LED 动态显示方式,这样能简化硬件电路。将所有位的段码线相应段并联在一起,由单片机的1 个8 位I/O 口控制,形成段码线的多路复用,而各位的共阳极或共阴极引脚分别由单片机相应的I/O 线控制,形成段码线的分时选通。即在任一时刻,只让其中一个数码管的位选线处于选通状态,字符驱动码同时送往段码线而显示相应的字符,其他3 位是熄灭的。而在其下一个时刻让下一个数码管的位选线处于选通状态,相应的字符驱动码也送往段码线,则下一个数码管被点亮,其他3 位是熄灭的。由于LED 的余晖和人眼的视觉惰性,当各位显示的时间间隔足够的短,则可以达到同时显示的假象[1]。
方式四还有一种更经济有效的方式是利用串行口扩充输出,通过移位寄存器如74LS164 实现串并转换。单片机的串口由P30(RXD)和P31(TXD)组成,当串口以方式0 工作的时候就是以SPI 的方式工作。用此方式来拓展低速的I/O 口,尤其是作为显示的控制,可以节省大量的P 口。为了扩充教学知识点,可以在设计好的电路图中再加入中断电路,由按钮BUTTON1、BUTTON2 来产生不同的中断信号,显现出不同的数值。
(三)系统设计和仿真
在查阅和论证了相关资料后,学生要针对自己所选用的系统设计方案,用Proteus 仿真软件绘制电路原理图。接下来的关键就是进行软件设计,对于知识掌握扎实的学生,鼓励他们用汇编语言和C语言分别进行编程。先根据所采用的驱动方式和项目要求,约定好输出形式和速度,确定算法。其次再将任务具体化,画出程序流程图。最后编程前还要进行资源分配,如内存工作区、变量名称、堆栈区等。用Keil 软件编写好源代码后进行调试,调试范围可以由小到大、逐步增加,通常交叉使用单步运行、断点运行、连续运行等。每次调试过程中要注意RAM 中的相关内容、I/O 口的状态是否正确,最后结合Proteus 进行系统仿真[2]。对于提前完成基本功能的同学可以适当进行功能扩展,比如用方式四进行数码管驱动,采用共阴极的数码管,再加入按键触发中断的知识点,从而提高学生的综合能力。系统仿真结果如图1 所示,按下BUTTON1 后将显示2008,按下BUTTON2 后将显示0808,项目任务顺利完成。
图1 系统仿真图
(四)项目评价
为增加学生的成就感和学生的鉴定能力,顾及“知识与技能”、“过程与方法”、“情感态度和价值观”三个方面[3],项目总评采用学生自评(30%)、互评(30%)和教师总评(40%)相结合的方式。项目评分细节可考虑资料收集是否准确(5%)、系统方案是否可行(10%)、硬件电路是否正确(15%)、程序调试是否成功(15%)、实现方法是否单一(15%)、系统功能是否多样(20%)、项目完成是否及时(10%)、回答问题是否正确(10%)。
三 结论
实践证明,将项目教学法应用在我校电子信息科学与技术专业的单片机课程教学中,最终提高了学生应用知识的能力和综合素质,满足了社会需求。但同时对教师有了更高的要求,要求教师在精通项目设计的同时能有机联系理论知识点,不断总结项目实施过程中的经验教训,与传统教学相互补充,才能达到更好的教学效果。
[1]张毅刚.单片机原理及应用[M].北京:高等教育出版社,2003.
[2]李学礼.基于Proteus 的8051 单片机实例教程[M].北京:电子工业出版社,2008.
[3]孙凯.项目教学法在电气控制技术教学中的应用[J].信息系统工程,2011(12):138-139.