魏红彦,裴小娜
(1.廊坊师范学院,河北 廊坊 065000;2.廊坊市模式识别与机器智能重点实验室, 河北 廊坊 065000)
Proteus仿真在微机原理教学中的应用
魏红彦1,裴小娜2
(1.廊坊师范学院,河北 廊坊 065000;2.廊坊市模式识别与机器智能重点实验室, 河北 廊坊 065000)
为深入理解微机原理课程,提出利用仿真软件Proteus作为实验教学的辅助手段,随时随地进行电路设计、模拟仿真。同时将微处理器8086与可编程并行接口芯片8255A组成电路作为仿真实例,具体阐述Proteus软件在微机原理实验教学中的应用。实验仿真结果证明,把Proteus应用到微机原理课程教学中,可以实现理论教学与实践教学的结合,深化学生对于微机原理课程的理解,改善教学效果,提高教学质量,同时还为后续课程提供了理论基础。
微机原理;Proteus;仿真教学;8255A
“微机原理及接口技术",是电子信息、电气控制、计算机、机电等专业学生的必修专业基础课,也是一门理论与实践相结合的课程。课程中涵盖的理论知识信息量很大,内容比较抽象。应用传统的教学模式进行授课存在一些弊端:第一,传统教学以理论讲授为主,再通过有限的实验设备进行演示辅助教学,所以学生有时感到知识点难理解,很难吸引学生的注意力;第二,目前学校的实验设备大部分只能做验证性实验,同时还受到设备固有模式限制,这就限制了学生自主性设计和发挥;第三,学校实验箱的价格比较昂贵,实验中用到的接口芯片,不易保管,且容易损坏;最后,运用实验箱进行实验设计只能在学校专业实验室完成,如果学生在课余时间进行实验或创新设计就无法实现。为了加深对理论知识的理解,我们在实验教学过程中引入了仿真软件Proteus,这种软件包含了当前最为完整、最先进的微型控制器系统的设计原理电路和仿真平台的模块[1]。在教学当中引入这一仿真软件,可直接建立学生的直观仿真思维,并通过这种仿真软件更直观、形象地讲解微型计算机的内部结构和特征,在教学中对学生学习起到很大的帮助作用。
Proteus是英国Labcenter公司开发的用于电路分析与实物仿真及印制电路板设计的软件,它包含ISIS和ARES两个软件包[2]。ISIS是SPICE电路原理图设计与模拟仿真软件,ISIS支持大量的存储器和外围接口芯片,Proteus提供了30多个元件库,数千种元件,可以仿真绝大部分的电路设计图。ARES是布线设计软件包,它具有32位数据库、元件自动布置、撤消和重试的自动布线功能,超强性能的PCB设计系统,同时ARES也支持手动布线,系统限制相对较少。Proteus可以仿真和分析各种模拟电路与集成电路、微型计算机、单片机及外部设备,提供了多种虚拟仪器,包括交直流电压表、交直流电流表、示波器、逻辑分析仪、计数定时器、虚拟终端机、信号发生器等,同时Proteus VSM支持8086CPU系统,能够完整仿真基本的I/O口、中断控制器、定时计数器、并行接口芯片、串行接口芯片以及通用外设接口芯片与CPU相连接的情况[3]。该软件也支持全部的8086CPU 指令系统和寄存器,支持8086CPU所有总线、内存和其他I/O引脚的操作,而且Proteus仿真系统还包含强大的调试工具包,可对寄存器、存储器进行实时监测,对程序分析具有断点调试及单步调试的功能,具有对显示器、按钮、键盘等外设进行交互可视化的仿真[4]。Proteus软件可以直接支持汇编语言编译器,相当于一个全开放性的设备齐全的综合性仿真实验平台,同时它还支持第三方程序开发软件的编译器,比如最常用的编译和调试环境Keil uVision3、MPLAB[5]。通过把Proteus软件引入8086微机原理接口技术教学,可进行动态现场演示,教学方法直观,使学生观察到内部寄存器、存储器以及相应的接口芯片的变化,深化对课程内容的理解。
下面以Proteus仿真的微处理器8086CPU与定时/计数器8255A组成的扩展电路为实例,说明Proteus软件仿真在“微机原理”课程教学中的应用方法和仿真过程。
2.1 程序设计基本方法
可编程8255A是计算机系统中经常使用的可编程并行接口芯片,其内部有三个相互独立的并行接口,分别称为PA口,PB口,PC口。8255A有三种工作方式[6],方式0是基本输入输出方式,PA口、PB口、PC口都可以工作在这一方式下;方式1是选通输入输出方式,PA口、PB口可以工作在这一方式下;方式2是双向总线I/O方式,只有PA口可以工作在这一方式下。其中图1是程序设计的工作流程图。
2.2 Proteus硬件电路设计
采用可编程并行接口芯片8255A、8086CPU及相关的接口芯片组成电路,图2为硬件仿真电路图。
(1)8086CPU的时钟频率取1.5MHz。
(2)三个74LS273锁存器进行输出地址A19-A0的锁存。
(4)8255A的PA、PB、PC口均工作在方式0下,PA、PB是输出口,PC口是输入口。
(5)8255A的PC口作为独立式按键的输入检测端口,其中PC0接开关作为输入,按键按下时PC0=0,按键断开时PC0=1;PA口作8位共阴极管LED的段码输出端口, PB口用作8位LED数码管的位控码输出端口,8位LED初始显示76543210。
2.3 程序软件设计
程序的编写和编译一定要选择可以支持8086汇编语言的编译器,这里通过Masm for Windows集成软件编写汇编源程序,然后进行编译、链接生成可执行的.COM或.EXE格式的可执行程序文件,编写的源程序的主程序如下:
.MODEL SMALL
.8086
.STACK
.CODE
.STARTUP
MOV DX,0206H
MOV AL,81H
OUT DX,AL
AGAIN:CALL DISP
KEY: MOV DX,0204H
IN AL,DX
TEST AL,01H
JNZ AGAIN
CALL DELAY20MS
MOV DX,0204H
IN AL,DX
TEST AL,01H
JNZ AGAIN
KEY-WAIT:CALL DISP
MOV DX,0204H
IN AL,DX
TEST AL,01H
JZ KEY-WAIT
MOV BX,OFFSET SITUATION
MOV SI,OFFSET SITUATION
MOV AL,[SI]
MOV AH,AL
MOV CX,7
TRANS:INC SI
MOV AL,[SI]
MOV [BX],AL
INC BX
LOOP TRANS
MOV [BX],AH
JMP AGAIN
.DATA
SITUATION DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
END
2.4 仿真电路的调试程序
8255A的PA、PB口输出通过接8位共阴极LED数码管,首先双击仿真电路中的8086CPU芯片,出现Edit Component,把源文件生成的.EXE文件加载到8086CPU中,下面就可以进行仿真实验。图3中上图是初始输出,输出是76543210,下图是按一次按键,数码管的数字循环左移一位,输出是07654321。
通过Proteus仿真软件可形象生动地演示8255A工作方式设置、程序编译和实现效果,大大激发学生学习兴趣,深化学生对可编程8255A并行接口芯片的理解,取得了良好的教学效果。
微机原理实践教学是微机原理课程的一个重要环节,是培养学生的设计能力、开发创新能力、综合
运用能力的重要手段。本文通过引入Proteus软件进行仿真教学,使学生充分理解Proteus仿真软件在课程教学中的作用,增强学生的软硬件设计能力,提高了教学质量,同时对教学过程起到很好的促进作用,调动了学生学习该门课程及其他相关课程的积极性。
[1] 陈龙,张亚军.Proteus仿真软件在单片机实验教学中的应用[J].实验技术与管理,2009,26(8):73-75.
[2] 周润景,张丽娜,丁莉.基于PROTEUS的电路及单片机设计与仿真[M].北京:北京航空航天大学出版社,2010.
[3] 杨增汪,陈斯,戴新宇.基于Proteus的电类综合实验系统的构建[J].中国现代教育装备,2010,(15):116-118.
[4] 吉向东,李新鄂.基于Proteus的微机原理实验仿真[J].信息技术,2010,(2):36-39,44.
[5] 杨汉生,刘丽,孔鲲鹏.单片机多机通信的Proteus仿真设计[J].四川兵工学报,2010,31(4):82-84,89.
[6] 周荷琴,吴秀清.微型计算机原理与接口技术[M].合肥:中国科学技术大学出版社,2008.
Application of Proteus Simulation in the Teachingof Microcomputer Principle
WEIHong-yan1,PEIXiao-na2
(1.LangfangTeachersUniversity,Langfang065000,China;2.LangfangKeyLaboratoryofPatternRecognitionandMachineIntelligence,Langfang065000,China)
In order to understand the theory of microcomputer principle course better, we put forward using Proteus as the auxiliary method in the experiment teaching. Using this software we can do circuit design and simulating experiment anyplace and anytime. Meanwhile, using microprocessor 8086 and programmable parallel interface chip 8255A circuit simulation as an example, the application of Proteus software in microcomputer principle experimental teaching can be described in detail. The simulation results show that the application of Proteus in microcomputer principle course can realize better combination between the theoretical teaching and practical teaching, deepen students' understanding of microcomputer principle course, improve teaching effect, improve teaching quality, and provide a theoretical foundation for the follow-up courses.
microcomputer principle; Proteus; simulation teaching; 8255A
2017-03-30
廊坊师范学院教学改革课题一般项目(K2015-18)资助课题
魏红彦(1981-),女,硕士,廊坊师范学院物理与电子信息学院讲师,研究方向:单片机和嵌入式系统。
TP368.1
A
1674-3229(2017)02-0112-04