单片机虚拟实验室的构建研究

2020-02-29 10:39刘云朋王春霞
科技创新与应用 2020年7期
关键词:虚拟实验室单片机

刘云朋 王春霞

摘  要:高校单片机课程教学存在课堂与实验脱节、实验室维护成本高、学生学习效果不高等缺点,在教学改革中有必要引入基于Proteus和Keil技术为核心的虚拟实验室教学手段。本文简单介绍单片机虚拟实验室的构建模式,从教材的选择、仿真模型的设计、实验操作的开展、自主性与创新性实验的探索等方面作出相应的改革,提升了教学质量与效果,得到师生的充分肯定。并列举教学实例说明。

关键词:单片机;虚拟实验室;Proteus;Keil

中图分类号:TP368.1       文献标志码:A         文章编号:2095-2945(2020)07-0081-03

Abstract: The teaching of single-chip microcomputer course in Colleges and universities has the disadvantages of disconnection between classroom and experiment, high cost of laboratory maintenance, and low learning effect of students. It is necessary to introduce virtual laboratory teaching method based on Proteus and Keil technology in the teaching reform. This paper briefly introduces the construction mode of single-chip virtual laboratory, and makes corresponding reform from the selection of teaching materials, the design of simulation model, the development of experimental operation, the exploration of independent and innovative experiments, which improves the teaching quality and effect, and gets the full consent of teachers and students. Finally, the teaching examples are listed.

Keywords: single chip microcomputer; MCU; virtual laboratory, Proteus; Keil

1 概述

1.1 課程介绍

单片机作为一种最基础的电气智能化控制部件,被广泛应用在数码控制、汽车制造、通讯、电器电子等方面,大到飞机邮轮,小到空调遥控器。目前单片机有关课程已经是高校信息工程、电气工程、自动化工程、应用电子技术等专业的一门专业核心课程,该课程注重理论与实践的综合培养,强调学生动手能力与创新思维的培养,该课程的开展为培养工程技术人员奠定了良好的理论和实践基础[1]。

1.2 教学改革的必要性

在实际的学习过程中,学生反映这门课程过于抽象、晦涩难懂,理论课程中,仅通过书本与幻灯片无法理解单片机内部结构、框架流程、工作原理;实验课上,学生只会按照既定步骤,机械的去重复实验操作,对于其中原理知之甚少,也无法与理论融会贯通。溯其根源,还是因为单片机是一门硬件与软件、理论与实践高度结合的课程,需要同时进行学习与验证。只学习理论,会觉得过于抽象、无法理解;只学习实验,则变成机械模仿,无法掌握理论知识。

同时由于实验室承载能力与课程学时限制,学生动手操作机会比较有限。再加上实验室设备的有形损耗(包括老化、故障、误差过大等)与无形损耗(技术的进步导致设备落后),这都增加了实验室的运行与维护成本。另外,出于对师生人身安全与设备安全的考虑,课程多为验证性的实验,无法开展自主与创新性的实验。这种情况下,课堂的创新氛围与学生的兴趣也难以提高,最终导致该课程枯燥乏味。

为提升教学质量,国内外很多高校都在采用图形化、仿真模拟与虚拟现实等方法推动虚拟实验室建设[2],操作者可以在计算机上模拟真实实验室条件下的实验操作,可以更加直观的了解内部结构、任意变更参数重复实验、降低成本、提高人身与设备安全性。这项技术已经广泛运用在机械、电子、物理、化学、医学等学科。

2 核心技术

虚拟实验室在单片机领域主要包含以下两个核心技术:

2.1 Proteus软件

Proteus是英国Lab Center Electronics公司开发的EDA程序(仿真软件),是目前业界技术含量最高、型号最齐全的微控系统仿真平台软件。与同类产品相比,Proteus除了具备仿真功能外,还可以实现仿真单片机以及附属外部设备[3]。该软件从框架结构设计、参数调试到单片机与外接设备协同仿真,快速转换到PCB(Printed Circuit Board印刷线路板)设计,可以将思路与产品完美衔接。该软件不仅支持采用PLM(计算机编程语言)、汇编与C语言进行程序开发,同时支持多窗口、多文件编辑,支持兼容市面上常见芯片模型。Proteus主要包括设计图输入系统ISIS、动态原件库、混合仿真器、以及印刷线路板编辑器ARES等。元件库包括数字与模拟、直流与交流、信号发生器、示波器等多种虚拟设备。

Proteus软件不只是一个单片机的仿真环境,更是一个拥有无穷扩展范围与创新空间的实验平台。在缺乏必要的输入、输出、显示、调试等硬件设备的条件下,依然可以利用该软件,清晰形象的了解单片机的结构原理、方便快捷的展示实验过程与结果。既克服了硬件与学时上的困难,又提高了学生的掌握水平,培养了学习兴趣,扩展了创新思维。这是过去的“灌输式”课堂与“模仿式”实验所无法达到的效果的。

2.2 Keil软件

Keil是使用最广泛的采用C语言的单片机开发软件,由美国Keil Software公司出品。与汇编语言相比,C语言功能强大、结构简单、可读性强、维护方便。同时Keil拥有一整套开发程序,包括C语言编译、宏汇编、项目链接、数据运行库管理以及仿真调试模拟器等等,这些功能都被组合成一个集成开发软件。该软件安装简单、功能完善、调试准确、工作效率高、生成汇编代码紧凑、便于理解与纠错[4]。

2.3 协同作用

为了建设虚拟实验室,需要将二者紧密联系在一起。Proteus不仅支持MCS系列以及派生系列的单片机,同时也支持AVR和PIC核心的单片机。Proteus软件可采用模拟与数字、直流与交流等数千种元器件,以及数据库中没有的型号,也可以根据实验需求进行创建。这就需要将C语言与汇编语言进行编译,然后进行软件与硬件的仿真模拟。解决了这个框架问题后,采用Proteus建设虚拟实验室就水到渠成了。

3 虚拟实验室的建设

构建单片机虚拟实验室,硬件上需要计算机与互联网或者局域网,软件上需要计算机操作系统、Proteus和Keil软件,外观上就像一个普通的计算机房。虚拟实验室将电脑网络、虚拟现实与多媒体交互等技术融合在一起,学生通过计算机接入互联网或者局域网内的虚拟实验室系统,通过输入终端与虚拟软件进行交互,输入参数,设定程序,就可以方便快捷的得到相应的结果。[5]每个学生都有足够的时间和亲自动手的机会,来进行实验,这在传统的真实实验室中是很难做到的。

3.1 虚拟实验室的框架

从结构上看,单片机虚拟实验室分为管理模组和教学模组。管理模组分为教师、学生、管理员三个功能,在系统登陆与权限上予以区别,是为了方便教师授课、学生学习、管理员维护系统而设置。通过网络的连接,教师可以将实验任务与内容快速发送到学生界面、学生实验操作也可以及时反馈到教师终端,提高了学习效率,活跃了课堂气氛。教学模组提供了丰富的单片机结构与原理教学课程,学生可以预习课程内容、开展虚拟实验以及生成与修改实验报告。见图1。

从教学内容上看,单片机虚拟实验分为验证性与创新开发性实验两种。实验模板结构通常由教师提前设定统一格式,并下发给学生终端。模板包括:实验名称、元器件库、实验工作区与提示项等内容。实验名称指明本次实验的目的,元器件库限定本实验所需的元器件、实验工作区为学生实验的主要活动区域、提示项则包含实验要求、程序设计难点、如何排除故障等。

3.2 虚拟实验教学过程

实验教学可以采用投影仪演示操作,也可使用局域网同步演示、或者播放视频操作,讲解实验原理以及具体操作。学生实验操作,包括:Proteus软件中设计电路流程图、Keil软件中编写程序并编译、项目装载到虚拟单片机、程序调试、驗证结果正确性、输出实验结果。如果结果错误,则重新编写Keil程序。

实验完成后,学生将实验结果输入到电子实验报告系统中,通过局域网或者互联网上传到教师终端,完成本节课的实验任务。可以看出,与传统实验室操作相比,虚拟实验室能够提供标准化、形象化、易操作、界面互动性强的实验课程,每个学生都能够更直观的理解单片机、亲自动手进行操作,达到事半功倍的学习效果。

在自主创新性试验中,由于虚拟实验室摆脱了对实验室硬件、人身安全、设备维护检修等限制条件,学生们可以更加开放的去设计电路,充分发挥学生的主观能动性,调动学生的学习兴趣,在今后走向工作岗位中,打下了良好的专业基础。

4 教学实例

下面以“控制秒表的启动、停止和清零”为例,介绍如何用protues和keil实现单片机虚拟实验的完成。任务要求:单片机系统的振荡频率fosc=11.0592MHz,设计一个启动、停止和清零受按键控制的秒表。S0键作启动键,按S0键,启动秒表走时。S1键为停止键,按S1键,秒表停止走时,显示时间一直保持不变。S2键为清0键,按S2键,秒表停止走时,显示数值为0。上电时,秒表停止计时,数码管显示0秒。

本任务中,数码管采用动态显示,用P1和P2口控制显示。P1口作段选口,P2口作位选口。键盘采用独立式按键,P3口键盘的控制口,P3.0、 P3.1 、P3.2分别连接S0、S1、S2三个按键。T0、T1都做定时器使用。T0控制键盘扫描和数码管扫描的时间间隔。T1做秒表的定时器。

首先在protues建立如图2的硬件电路图。

在keil环境中建立项目文件,进行相应设置后新建scdclock.c,经编译后生成二进制目标文件scdclock.hex,在protues环境下将程序载入单片机,运行电路后就可以看到任务要求的实验效果。[6]

本任务中需要对定时计数器的TH0、TH1、TMOD、TCON以及中断寄存器IE、中断优先级寄存器IP进行设置,也用到了键盘扫描、键码识别、键盘去抖等相关知识,还用到了数码管的连接、动态显示等相关知识。通过对本任务的学习,可以使学生及时而准确的掌握所学知识、掌握单片机软硬件综合开发能力。

5 结束语

单片机虚拟实验室的构建,不仅可以对单片机课程改革注入了强大的活力,提升教学质量,减少了实验室硬件维护开发成本,更重要的是将单片机这门抽象复杂的专业核心课程以另一种直观、形象、具体的形式展现在了学生面前,使得学生学习效果得到很大的提高,为今后的学习工作打下了坚实的基础。

参考文献:

[1]张兰华,邹华,刘纯利.单片机原理及应用[M].北京:机械工业出版社,2012.

[2]李昌.基于虚拟实验软件的高职单片机教学改革[J].中国教育信息化,2013(24):35-36.

[3]刘炳尧.KeilC+Proteu6.9-搭建自己的单片机仿真实验室[J].电子制作,2013(8):52-54.

[4]许超,吴新杰,张丹.基于Proteus和Keil的单片机课程教学改革[J].辽宁大学学报(自然科学版),2011(1):27-29.

[5]朱韶平.基于虚拟实验的《单片机原理与应用》实验教学改革研究[J].赤峰学院学报,2015(31):34-36.

[6]李文华,单片机应用技术[M].大连:大连理工出版社,2018.

猜你喜欢
虚拟实验室单片机
单片机在智能控制中的应用
虚拟实验室在食品专业仪器分析实验教学中的应用
虚拟实验室在生物实验教学中的应用
电子技术仿真设计系统探究
基于VR的农业虚拟实验室设计和研究
合理使用虚拟教学手段,促进高等教育的教学质量
C8051F020与80C51单片机的异同点
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器