基于Proteus的微机接口仿真实验及其应用

时间:2022-04-14 03:06:08

基于Proteus的微机接口仿真实验及其应用

摘 要:针对微机接口的特点以及传统微机接口实验存在的问题,探讨了基于Proteus和EMU8086软件的仿真微机接口实验的研究方法,并以Intel8255、DAC0832接口芯片为例详细给出了仿真实验的设计,调试以及实验拓展的思路。使用结果表明:学生学习与实验的热情极大增强,学生接口设计能力明显提高;Proteus与EMU8086仿真软件提供了良好的实验平台,仿真实验为学生微机应用设计能力与创新能力的提高提供了一种有效的手段。

关键词:实验教学;仿真实验;微机接口;并行接口;模拟接口

中图分类号:TP391.9 文献标识码:A 文章编号:1673-8454(2012)07-0079-04

“微机原理与接口技术”是高等院校理工科非计算机专业学生必修的一门计算机基础教育课程,是电类本科生的专业基础课,是一门理论性和实践性都很强的课程。[1]课程内容抽象、较难理解,其中接口技术部分内容尤为如此,初学者很难把握,更谈不上灵活应用。教学实践中一般安排必要的实验教学时数,一方面,实践能帮助学生理解接口芯片的基础知识,另一方面,实验也是培养学生实验技能、应用能力和科学作风的重要环节,但受实验场所、实验设备条件的限制,实验效果不能令教师、学生满意。[2]随着计算机、软件技术的发展,实验方式、手段的改变得以实现,Proteus应用于微机接口实验和课堂教学,打破了实验设备和场所的局限,有效地调动了学生实验和课堂学习的热情,提高了学生学习的积极性,使学生的求知欲望得到释放。[3]

一、微机接口技术与接口实验分析

1.微机接口技术特点

(1)接口内容多。课程中经典的接口芯片包含:并行接口芯片,典型的有Intel8255A、8155;中断控制接口芯片,典型的有Intel8259A;定时/计数接口芯片,典型的有Intel8253A;模拟接口芯片,典型的有ADC0809、DAC0832;串行接口芯片,典型的有Intel8250A、8251。除此之外,还有许多新型的接口芯片。

(2)接口内容重要。从某种意义上说,微机应用系统的广度取决于外设,而外设必须通过接口才能与微机的“三总线”相连。由此可见,微机接口是微机应用系统的重要组成部分,学生若要具备微机应用系统设计能力必须具备微机接口设计能力。

(3)接口功能多但抽象。不同类型的芯片尽管功能相差甚远,但他们的外形几乎相同。若没有型号标记,无法区分芯片。学生初学芯片的内部结构、功能以及使用方法时感到茫然。

(4)接口应用灵活。接口技术的应用系统设计包括硬件与软件两部分。应用程序编写与硬件电路密切相连,硬件电路发生改变,软件必须做出相应的调整。同时,接口中的端口地址、工作方式等选择都有很大的灵活性。调试中如何区分问题是由硬件引起的还是由软件引起的也是一个相当棘手的问题。

2.微机接口实验

(1)微机接口实验的作用

微机接口实验是加深理解接口芯片基础知识的重要手段,是体会接口芯片功能、工作方式设置以及芯片选中问题等不可缺少的教学环节,是培养学生实验技能、动手能力、解决实际问题能力、微机应用系统设计能力以及创新能力的重要措施。

(2)传统实验存在的问题

1)实验时间、地点受限:学生必须在指定的时间和地点里完成指定的实验内容。尽管目前不少学校对实验室进行了开放,然而也只是相对的开放,受限的程度轻些而已。

2)实验设备受限:一方面,实验设备台套数受限;另一方面,传统实验箱中实验内容受限。

3)学生的兴趣与自主设计能力受限:由于担心接口芯片、实验箱、信号发生器等设备使用不当造成损坏,因此传统实验通常严格规定实验任务、步骤和方法等。实验者很少有机会去探索、去表现个性特长,这极大打击学生的好奇心,进而影响兴趣。同时随着实验条件的改善,实验室中实验箱应运而生。在某种程度上,实验箱提高了实验效率,减轻了教师、学生的负担,特别是减轻了教师的设备维护、实验准备、现场解答学生问题等负担,但也埋没了不少学生的自主设计才能,使学生敢想敢干的天性逐渐减弱。

二、基于Proteus仿真实验的方法

基于Proteus仿真实验的方法如图1所示。[4]学生根据设计任务,确定设计方案,设计实验硬件原理图,在仿真环境下构建虚拟电路模型,编写程序,调试硬件和软件,完善设计,完成实验任务,拓展实验并总结。

三、基于Proteus的微机接口仿真实验设计

1.Proteus与EMU8086软件

Proteus是英国Labcenter Electronics公司开发的一款EDA软件,是目前世界上唯一将电路仿真、PCB设计和虚拟模型仿真合而为一的设计与仿真平台。[5] Proteus软件中的电子元件丰富、内容全面,元件库中的元器件大多可直接用于实际电路的搭建,并且所提供的虚拟仪表接近实际仪表的效果。[6]学习者不必担心操作或使用不当引起器件、仪表的损坏,可以大胆实验,充分体验实验的乐趣。

Emu8086是一种集编辑器、组译器、反组译器、除错功能等的模拟软件。其操作界面可视化程度高,在执行程序时可观察寄存器、标志位、内存的内容以及ALU的工作状况,特别适合初学者。

2.原理图绘制与程序汇编

在仿真实验中,原理图绘制与程序汇编是关键的步骤。启动Proteus ISIS,在主窗口界面点击元器件选择区的P按钮,选择元器件类别,从中点击列表区中所需的器件,放到绘图区并编辑其属性。[7-9]合理布局元器件并进行正确连线,完成原理图的绘制。若1页放置不下原理图,可放置多页。启动EMU8086,选择com、exe、bin或boot其中一种模板,在编辑器中输入编写的程序,利用编译、仿真功能汇编、调试程序。

3.微机接口仿真实验设计示例

(1)Intel 8255并行接口实验设计[10]

1)实验目的:体验接口芯片中片选信号的作用,Intel 8255的初始化,输入/输出接口的应用;提高微机并行接口的设计能力。

2)实验基本任务

用1片Intel 8255、8086CPU、开关、LED显示器及相关的芯片设计微机应用系统,编写对应程序实现显示控制,开关状态的输入。

3)实验设计

分析实验要求,确定设计方案,设计硬件电路原理图。根据原理图从Proteus元件库中选中8086、74LS373、74LS138、Intel 8255、开关、LED、电阻等器件构建虚拟电路模型,如图3所示。设计对应的控制程序,其程序框图如图2所示。

4)实验调试

在EMU8086环境下编辑程序,汇编成com、exe、bin其中之一的对应文件。在Proteus下原理图中U1装载汇编完成的程序。调试硬件与软件。

程序中设置8255的A口、B口为方式0输出,C口为输入,并把开关状态以16进制数形式在LED上显示。图3中LED显示了一种调试结果,图中K7闭合,K6~K0断开,显示的内容为7FH。任意改变开关状态,显示的内容随之发生改变。

5)实验拓展与思考

①改变程序中8255的地址,或修改原理图中8255片选信号的连接,体验接口芯片中片选信号的作用;

②修改8255的控制字,体验芯片的初始化功能;

③修改程序,改变延时时间,体验动态显示控制的原理。

(2)DAC0832模拟接口实验设计

1)实验目的:体验DAC0832的输出模拟量与输入数字量成正比,微机系统中DAC0832单缓冲方式与双缓冲方式,电流转换成电压输出;提高微机模拟接口的设计能力。

2)实验基本任务

用2片DAC0832、8086CPU及相关的接口芯片设计微机应用系统,编写对应程序实现2路同步输出的连续锯齿波,要求变化趋势相反,周期与幅值不作具体规定。

3)实验设计

8086 CPU有16位数据线,要求2路波形同步输出,又输出变化趋势相反,2片DAC0832需要同时开始转换,DAC0832可以选择单缓冲工作方式。从Proteus元件库中选中8086、74LS373、74LS138、DAC0832、UA741等器件以及虚拟示波器构建如图4所示的电路原理图。图4中741用于将DAC0832输出的电流信号转换成电压信号。在完成硬件电路设计的基础上,根据要求编写对应的程序。

4)实验调试

在EMU8086环境下编译程序,在Proteus中,双击电路图中8086CPU芯片装载程序。根据设计的电路原理图,波形输出在U9、U6的6号端,为便于观察,接虚拟示波器。图5是在虚拟示波器上观察到的运行结果波形。若调试结果不能满足要求,可分成完成,即在确定硬件没问题的前提下修改软件并调试,反之在确定软件没问题的前提下修改硬件并调试,直止符合要求。

5)实验拓展与思考

①硬件电路不变的情况下,在已有程序的基础上如何修改能得到图6形状的三角波输出,再修改得到图7形状的波形,调试并检查结果。

②图4中U7的DI0~DI7分别接AD8~AD15,若把图中U7的DI0~DI7分别改接为AD0~AD7,则U7中的CS、XFER端分别应如何连接才能保证2路波形输出的同步?程序又如何修改?调试并查看结果。

③学生自己设计输出波形,比如图8形状,又如何修改软件?调试并检查结果。

四、结束语

针对接口内容设计了系列仿真实验,文中给出了2个例子。实践证明,采用Proteus仿真开发的微机接口实验能激发学生的探索热情,提高学习兴趣,取得了优良的实验教学效果。经过仿真实验,再进行实物实验,实验效率与效果明显提高。仿真实验与硬件实物的有机结合不仅加强了学生基础理论知识的掌握和理解,启发和拓宽学生的思路,而且锻炼了学生实践动手能力和微机应用系统设计能力,对培养学生综合素质起到了积极的促进作用。同时把仿真引入了课堂教学,明显提高了课堂教学效果。若做进一步研究,则可考虑网上虚拟实验。[11]

参考文献:

[1]李现国,张艳.Proteus仿真在微机原理及接口技术教学中的应用[J].实验技术与管理,2010,27(12):125-127.

[2]蔡燕玲.应用Proteus软件提高单片机课程教学效果[J].北京电力高等专科学校学报,2010(7):231-232.

[3]曾燕,贾振国.Proteus仿真技术在单片机教学中的应用[J].长春工程学院学报(社会科学版),2011,12(1):132-134.

[4]付扬.Multisim仿真在电工电子实验中的应用[J].实验室研究与探索,2011, 30(4):120-123.

[5]邵平凡.Proteus VSM辅助教学的体会[J].计算机教育,2010(13):107-110.

[6]李文卿.电子电路仿真和设计软件――Proteus简介[J].无线电,2011(3):88-92.

[7]周东明.高等学校工科研究型教学辅助软件介绍[J].电气电子教学学报,2011(32):107-108.

[8]杨继森,杨奕等.虚拟实验平对号在嵌入式系统教学改革中的应用[J].实验室研究与探索,2011,30(2):51-54.

[9]杨增汪,陈斯等.基于Proteus的电类综合实验系统的构建[J].中国现代教育装备,2010(15):116-118.

[10]陈红卫.微型计算机基本原理与接口技术(第二版)[M].北京:科学出版社,2009.

[11]杨建良.基于Web的远程教育网络在线虚拟实验室的设计[J].2011,30(3):87-89.

上一篇:信息时代侦查通信课程的教学探索 下一篇:采用波分复用技术实现多校区之间网络互联