刘新竹
(武昌工学院信息工程学院,湖北武汉,430465)
单片机是一门综合实践性很强的课程,要求学生在懂得单片机的硬件原理基础上能进行软件编程。想要在教学过程中能有较好的教学效果,只靠理论学习是远远不够的,必须让学生在学习过程中勤于动手实践,将所学的单片机的理论知识应用到实践中,因此单片机的实践教学对于单片机的教学来说占有举足轻重的地位。此外,国内各级电子竞赛中,有一半以上的竞赛题目是要求用简单8位单片机作为控制器完成[1]。电气信息专业学生的课程设计、毕业论文等,很多是需要用单片机系统来完成研究的,也就是说对于单片机实践教学要求为学生提供一个电子系统应用的综合平台。
电路模块固定,学生只能完成一些简单的验证性实验。而且这些电路模块一般是相互独立的,不能像一个实际应用项目那样形成一个完整的单片机控制系统[2]。学生在做实验时,只需按实验指导书中的内容,简单连几根线,对整体电路是如何连接,没有透彻的理解。学生做完实验后,对单片机系统只有一些浅显、片面的认识,不能对单片机的系统开发形成系统概念,也不能有效培养学生开发单片机应用系统的能力。
单片机接口应用技术和控制技术不断更新,这些新技术并没有在单片机实践教学系统中体现出来[3]。体系合理的单片机综合实践平台尤其重要。本单片机实践平台各功能模块相对独立,也可以组成统一的单片机系统。各部分独立时,可完成单片机实验教学的各项基本硬件实验(如:输入/输出控制、定时器/计数器、D/A转换、A/D转换、键盘输入与显示、串口通信等)。学生可以在这些实验中将所学理论知识与相关模块结合,通过实验中的练习,加深相关知识的理解。实验平台极方便地作为单片机各章节理论教学中的实践教学。学生在实践中将各功能模块按一定的连接方式连接起来就可组成几个简单实用的控制系统。如简单功能的电子密码锁、单片机控制水塔水位系统、电子钟、电子房卡、投票系统、电梯控制模拟系统等。通过这些完整的项目建设,让学生全面掌握单片机硬件和软件有机的结合,熟悉单片机应用系统开发过程,培养学生具有开发单片机应用系统的能力。这些项目可作为在单片机理论教学结束后的课程设计中的综合实验及扩展实践。实验平台也给学生提供可以按照自己设计的电路,自行搭建,组合开发新的实验内容。通过各种接口连接到外接资源区,实现新电路的开发。这些开放的系统,让学生在做毕业设计或电子竞赛中,开发电路板来扩展实验项目和内容。培养学生的开拓创新能力,提高学生对硬件电路的设计与分析能力[4]。
开放式项目驱动单片机综合实践教学平台是采用扩展式结构,即由一块主板连接多块实验板组成。主板是在单片机基本系统的基础上扩展多样化的接口和总线(图1)。具有驱动多个外围接口芯片的能力,提供单片机的基本型实验和应用型实验。
在硬件方面,通用的单片机实验板为基本配置,每一个试验台上将配备一套该设备。根据不同的实验过程,在主板上可以插接相应的实验板,学生可以通过实验来扩展主板与实验板,达到实验目的。
主板的设计应该具有体积小和造价低廉的特点,在开放性的实验过程中,应该方便学生实践。同时,主板也应该具备无需外接电源,使用通用的USB接口。主板应该具备CPU,也应该可以通过扩展来进行更多的实验。另外,主板也应该提供一些散件,供学生通过焊接了解部分实验过程。
该实践平台内置仿真器的软件开发平台使用Keil uVision4软件,Keil uVision4可使用C语言源程序、汇编语言源程序或混合语言源程序。它支持众多不同公司MCS51构架的芯片,甚至ARM。可以连接多个目标文件生成烧录HEX文件并具有功能齐全的软件模拟调试及硬件调试环境[5]。
Keil uVision4软件引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供了高效的环境来开发应用程序[6]。
该实践平台重点包括单片机通用实验模块的功能。另筛选出在工业控制、科学研究等领域应用比较广泛的接口技术,包括USB总线、I2C总线、单总线、液晶显示、语音提示等实验。并以这些基本模块的实验可组建成电子密码锁、电子房卡等简单实用的测控系统为主线的项目教学模块。
实践平台在设计中采用各模块相对独立,使用时可用连接线将各个模块连接起来综合应用,达到根据教学情况的需求,对实验内容分层次、分阶段进行的目的。
图1 实验平台结构
作为开放式的实验平台,主板电路模块化,根据单片机教学所需不同层次的实验项目,该实验平台可供3种不同层次的学生使用。
初级阶段:该阶段主要配合单片机的理论教学进行,针对单一功能模块实验,学生学着理解单片机的硬件,编写简单功能的程序,仿真和调试[7]。
初级阶段设计有基础型实验,主要是让学生初步掌握单片机基本原理、单片机内部资源和扩展资源的应用。实验内容有:中断系统实验,定时器/计数器实验,A/D和D/A转换实验,串口通信接口实验,存储器扩展实验,键盘显示接口实验等。应用型实验:用单片机进行外设的简单控制:步进电机实验、直流电机测速与控制实验、温度测控实验、串转并实验、脉宽调速实验等。
中级阶段:学生选择功能完善的主板,对着硬件电路图和实验平台等,用连线将实验平台的各个模块综合起来组成一些实用的控制系统。如:电子密码锁、单片机控制水塔水位、电子房卡、投票系统、电梯控制模拟系统等。中级阶段可适合学生在学完单片机后的综合课程设计。
以电子锁为例,介绍设计的步骤:
(1)系统需求分析:根据电子锁系统想要实现的功能进行系统需求分析。
(2)系统总体设计:电子锁的系统总体设计如图2所示。
(3)硬件设计
键盘部分:键盘部分采用4×4矩阵键盘。直接用I/O构成,并且采用中断方式。
LED显示部分:LED显示采用8个共阴极LED数码管构成,采用动态显示。
外接EPROM部分。
蜂鸣器部分:蜂鸣器采用一个单独I/O口部分。
按键开关和发光二极管部分。
(4)软件部分
软件设计采用模块化设计和自顶向下的程序设计,将整个系统分为主程序和子程序,其中子程序部分又分为键盘部分,LED显示程序,外接EPROM读写程序(像按键开关、发光二极管、蜂鸣器输出等都只需要简单的几条语句,就可以实现,不需要编写子程序)。在软件编程过程中首先考虑主程序的设计,然后考虑各子程序的设计。
通过完整的设计,让学生在实现这些实验项目的过程中,硬件上要用连接线,将实验平台的多个单一功能模块组合起来构建成新的测控电路,软件上要多次用到初级阶段实验中的程序作为子程序,让学生能将硬件与软件有机结合,逐渐形成系统的概念[8]。
高级阶段:学生在毕业设计或电子竞赛环节中,在教师指导下自己设计电路原理图。设计、装配电路板,编程和调试,最终构成一个单片机的应用系统或新的功能。
开放式项目驱动单片机综合实验平台,给学生提供了一个创新的平台,使学生不再局限于验证性实验上。以开放式的项目驱动方式提高学生对硬件电路设计与分析能力,建立学生对单片机的系统概念,培养学生将硬件与软件有机结合的综合应用能力,整个系统反映了当今主流单片机的控制技术,实验体系合理,系统可移植性强。
[1]徐坤,吴定允,周子昂,等.单片机实验教学平台若干问题的思考及改进方案[J].周口师范学院学报,2011,28(2):59-61.
[2]汪建,杨风开,曹江.一种新型单片机/ARM/DSP实验装置的研制[J].电气电子教学学报,2012,34(2):65-67.
[3]刘辉,王新辉,张文希.从电子设计竞赛看单片机实验教学的改革与创新[J].长沙大学学报,2006,20(5):98-100.
[4]杨风开,徐慧平.开放式单片机电气控制综合实验教学平台[J].中国电力教育,2012(27):89-90,94.
[5]李庆,江汉红,亓科.基于S51单片机与CPLD的综合实验系统研制[J].电气电子教学学报,2009,31(3):75-77.
[6]冯刚.单片机实验教学平台的改革[J].计算机教育,2010(2):144-146.
[7]李焱.单片机教学实验平台的设计[D].重庆:重庆大学,2007.
[8]金龙国.单片机原理与应用[M].北京:中国水利水电出版社,2005.