导航菜单

Proteus在单片机实验教学中的应用

刘光平1,陈红仙1,钟 平2

(1.苏州大学城市轨道交通学院,江苏苏州215006;2.江西警察学院安全技术系,江西南昌330103)

摘要:针对传统单片机实验教学存在的问题,提出引入Proteus仿真技术作为单片机实验教学的辅助手段。以数字时钟设计实验为例,介绍基于Proteus软件的单片机仿真实验的开发过程,最后指出仿真技术可以降低单片机实验教学成本,激发学生的学习兴趣,提高实验教学效果。

教育期刊网 http://www.jyqkw.com
关键词 :Proteus;单片机;实验教学

文章编号:1672-5913(2015)17-0103-04 中图分类号:G642

基金项目:苏州大学计算机与信息技术国家级实验教学示范中心建设教改项目( 2014SYO01)。

第一作者简介:刘光平,男,讲师,研究方向为计算机控制,124075775@qq.com。

0 引言

单片机以体积小、功耗低、控制功能强等诸多优点在我们生产生活的各个领域得到广泛应用,社会需要大量具备单片机应用开发能力的专业人才。为了适应这种需求,单片机课程已经成为高校电气信息类、自动化类等专业领域非常重要的一门专业课程,掌握单片机的应用对提升相关专业毕业生在专业领域的就业竞争力具有十分重要的意义。

单片机课程是一门软硬结合、技术性和实践性都很强的课程,而实验教学是培养学生实践应用能力的主要途径,在单片机课程教学中占有十分重要的地位。从当前大部分高校单片机实验教学开展的情况来看,主要存在3方面的问题:一是实验教学一般安排在理论教学之后进行,理论与实践没有很好结合。对一些学生来讲,单片机的理论知识枯燥难懂,纯粹的理论教学很难激发学习兴趣和积极性,理论教学效果必然影响后续实验教学的效果。二是受到单片机课程总学时的限制以及“理论至上”观念的束缚,实验教学学时普遍较短,根据对多所高校单片机课程教学计划的比较、分析来看,实验教学学时都不超过16学时,实验时间的不足使学生的动手能力无法得到充分训练。三是实验教学大多以实验箱的形式完成,实验箱一般都设计成固定电路模块,实验内容较单一,只能开展一些验证性的实验项目,缺乏灵活性和创造性,不利于学生创新意识和创新能力的培养。

为解决上述问题,教师可在单片机实验教学中引入Proteus仿真软件进行单片机虚拟实验,作为传统单片机实验的重要补充。Proteus虚拟实验能够丰富单片机实践教学手段,实现理论教学与实验教学的有机结合,对促进教师教学观念的更新以及提高单片机课程教学的效率和效果都有很大帮助。

1 Proteus在单片机实验教学中的优势

Proteus软件由英国Labcenter Electronics公司推出,已有20多年的历史。Proteus是一款优秀的EDA工具软件,使用广泛,众多国内外高校将其作为开发和教学工具。Proteus提供了大量的仿真设备和元器件,支持51系列、AVR、PIC等各种主流单片机和Keil、Maplab等第三方编译开发软件。Proteus软件的强大之处在于不仅能够实现单片机及其外围电路的设计和协同仿真,完成单片机系统的软、硬件同步仿真调试,而且还能像其他EDA软件那样进行电路分析。与传统的单片机实验相比,基于Proteus仿真软件的单片机虚拟实验具有如下明显的优势。

(1)摆脱实验硬件条件的限制。Proteus支持的元器件多达数千种,硬件资源十分丰富。只需一台电脑安装Proteus和KEIL编程软件即可搭建虚拟实验平台,教师可以根据需要开设各种课内实验、综合性实验以及创新性、开放性实验,大大节约硬件成本。更为重要的是对于传统的硬件实验,学生只需简单连线、编程调试即可完成;而Proteus虚拟实验需要学生自行搭建硬件电路、完成编程、对电路和程序两部分进行仿真调试,这样的实验过程更接近实际的单片机系统开发,有助于激发学生的学习兴趣,培养创新意识和创新能力。

(2)实验时间、地点更加灵活。Proteus软件的使用使实验教学不再仅局限在实验室,教师可以根据需要将部分实验安排在课外,摆脱实验学时的限制,让学生在业余时间自行搭建实验平台完成实验,使学生的动手能力得到充分的训练,培养其独立分析问题、解决问题的能力,提高单片机系统应用开发能力。

(3)简单易学,软硬件仿真调试接近实际设计。Proteus软件功能强大且操作简单,学生很容易掌握使用方法,便于课外自学提高。首先在Proteus ISIS环境下完成单片机系统的电路设计,然后使用KEIL软件编写程序,将编好的程序经过编译生成HEX文件,再加载到单片机中即可进行仿真运行调试;也可将Proteus与KEIL进行联调,实现软硬件联合仿真,这样实验结果更加直观,更有利于排错。

Proteus软件简单易用,便于讲解演示,能够为单片机课程教学提供有力支持,是单片机课程教学的得力助手,可以弥补传统单片机实验教学的诸多不足,解决实验教学中硬件条件与实验学时不足的问题,取得很好的实验效果。

2 实验教学改革

单片机实验包括软件实验和硬件实验两部分。软件实验主要让学生熟悉Keil编程软件,对单片机有更加直观的认识并掌握初步的编程调试方法。学生按照实验指导书要求,在实验箱上完成简单的验证性实验,具体有系统认识实验、数码转换实验、多字节无符号数加法实验等。

硬件实验又包括设计实验与综合实验部分。设计实验主要培养学生使用Proteus软件绘制硬件电路图以及使用Keil软件进行联合仿真调试的能力。设计实验没有现成的程序可供调用,学生必须根据实验指导书给出的实验任务、要求以及实验原理图,使用Proteus绘制硬件电路图,设计编写程序并进行仿真运行调试;仿真调试通过以后,再按照实验指导书的要求在实验箱上完成实验,并将实验结果与Proteus仿真结果进行比较。具体实验有并口输入输出实验、中断系统实验、定时器应用实验、串口通信实验等。

综合实验针对一些典型的单片机应用,如交通灯、数字时钟等,要求学生利用所学的单片机基础知识,独立完成应用系统的软、硬件设计。学生设计的系统功能可以高于但不能低于教师给出的基本功能要求。受到实验教学学时的限制,综合实验可以在课外进行,由学生利用Proteus软件完成。综合实验重在训练学生综合应用所学理论知识的能力和创新能力,但由于是在课外进行且软件作品易于拷贝,因此在此阶段应加强考核,教师可以随机抽取部分学生进行设计答辩,以便及时、全面地检验和了解学生课后实验的真实情况,尽可能防止学生抄袭他人设计成果,保证综合实验的质量与效果。

3 实验教学实例

3.1 实验要求及目的

设计数字时钟,用6位LED数码管组成显示电路,分别显示时、分、秒,用7个独立键盘对时、分、秒进行时间调整以及数字时钟的启停控制;时间以24h为一个周期;可自行设计增加其他功能(闹钟、声音等)。

数字时钟是日常生活中常见的、使用广泛的计时工具,对学生而言既熟悉又陌生,容易激发学生学习单片机的积极性,提高学生的动手能力以及独立解决问题的能力。本实验的主要目的是让学生掌握定时器中断控制的应用以及LED数码管动态显示接口电路的控制。所有显示的时间通过单片机内部定时器来实现。

3.2 硬件设计

根据实验要求,本系统硬件主要由CPU、键盘、数码管、系统时钟电路(晶振频率12MHz)、电源及复位电路组成。运行Proteus软件,选择系统需要的单片机及外围电路元器件并连接,绘制硬件电路原理图如图1所示。

图中主要元器件有AT89C51、7SEG-MPX8-CC-BLUE、BUTTON、RESPACK-8、CRYSTAL-(12MHz)、MINRES10K、CAP(22pF)、CAP-ELEC(lOuF)等。单片机AT89C51是电路的核心,单片机以动态扫描的方式控制数码管显示时间,数码管的驱动通过上拉电阻RP1实现。AT89C51的PO口PO.O~P0.7与8位共阴极7段LED数码管显示屏的A、B、C、D、E、F、G和DP端相连,用于输出段选码,输出1为有效。P2口的8个引脚P2.O~P2.7分别与数码管的阴极相连,用于输出位选码。P3口的P3.O~P3.6引脚连接7个独立键盘,这7个键分别是秒加1键、秒减1键、分加1键、分减1键、时加1键、时减1键和启动暂停恢复键。其中,启动暂停恢复键按下第1次数字时钟开始计时显示,定时器启动;按下第2次计时暂停,同时定时器停止,此时可以进行时间调整;按下第3次,数字时钟恢复计时显示,定时器启动。

3.3 软件设计

运行Keil uVision,建立工程项目并设置相关属性,采用汇编语言编写程序。该程序采用模块化结构,由主程序、按键扫描子程序、显示子程序等部分构成。主程序主要功能是初始化设置并通过不断调用子程序实现各模块的功能。主程序流程图如图2所示。

编写好的程序通过编译后生成生HEX文件,通过Proteus导入到单片机AT89C51中即可实现仿真,Prtoeus仿真结果如图3所示。在仿真调试过程中,单片机及其外围设备的引脚用有色小方块显示其状态:蓝色表示逻辑0,代表低电平;红色表示逻辑1,代表高电平;灰色表示悬空。学生可以非常直观地随时观察到仿真运行过程中各个引脚高低电平的变化情况,实时了解单片机的运行状态。若仿真结果与预期控制目标不一致,观察引脚电平的变化有助于分析出现问题的原因,有针对性地修改程序直至仿真调试成功。

4 结语

将Proteus虚拟实验引入单片机实验教学具有诸多明显的优势,但并不说明Proteus虚拟实验可以取代传统的硬件实验平台。作为一个很好的教学开发平台和一种新的实验教学方式,Proteus仿真实验为单片机实验教学提供了一种很好的辅助手段。在单片机实验教学中,从培养学生综合应用单片机基础理论知识进行设计开发的能力出发,将虚拟仿真实验与硬件实验平台合理结合,不仅有利于改进实验教学方法和提高实验教学效率与质量,而且有助于充分调动学生的学习积极性,进一步培养学生的动手能力和创新能力。

教育期刊网 http://www.jyqkw.com
参考文献:

[1]潘辉.Proteus虚拟实验环境在单片机教学中的应用[J].计算机教育,2010(20): 143-146.

[2]陈丹,陈建,王云武,等.基于Proteus的单片机虚拟实验设计[J],计算机教育.2014(5): 94-98.

[3]伍冯洁,谢斌.基于Proteus与Keil的单片机实验教学改革[J],实验室研究与探索,2009(7): 125-127.

[4]顾能华,朱莉.虚拟单片机实验仿真平台的构建[J].实验技术与管理,2010(10): 98-100.

[5]王自珍,殳国华,张士文.基于计算机仿真技术的MSP430单片机实验教学实例[J].实验室研究与探索,2013(9): 94-97.

[6]陈龙,张亚君.Proteus仿真软件在单片机实验教学中的应用[J].实验技术与管理,2009(8): 73-75.

(编辑:宋文婷)

下载文本