黄淑玲
(韩山师范学院物理与电子工程学院,广东 潮州 521000)
微机接口是一门理论与实践相结合的工科类专业基础课,通过课程内容的学习和实验环节的训练,使学生从理论和实践中掌握微型计算机的基本组成和工作原理,熟悉微机的汇编指令体系及汇编程序设计方法,以及常用接口技术及其软硬件设计方法,建立微机系统的整体概念,达到初步具有微机应用系统的软硬件设计、开发能力。理论学习可以使学生掌握微机各部件的基本工作原理、设计方法及微机整体的互连技术,为培养学生的硬件系统开发能力打下基础。在微机接口课程中,理论是基础,但是要深入理解基本原理及体系结构等理论必须结合硬件实验。高校实验设备采购在实验室建设中占有相当大的比重,其成本投入也较大,然而设备的使用寿命周期较短,一般3~5年就要更新换代,而且随着社会的进步,实验教学的改革速度远远赶不上科技的发展,于是仿真实验教学在高校实验教学中得到了广泛推广。
基于Proteus的微机接口实验教学改革主要采用软件仿真与硬件仿真相结合的方式,可以让学生全面掌握微机电路工作原理与编程技术。软件仿真采用Proteus软件平台,学习电路设计、软件编程等相关知识。结合Proteus仿真开发环境,学生既可以通过该实验系统的仿真了解相应实验的技术细节,又可以通过实际硬件电路的仿真运行结果建立对实验的感性认识。
Proteus不仅具有模拟和数字电路仿真功能, 还能仿真单片机及嵌入式系统,可以提供8051、8086、ARM、AVR、PIC等丰富的CPU模型。故能在虚拟环境中运用常见的中小逻辑器件“积木式”设计并搭建实验平台,体现了高灵活性的特点。在Proteus虚拟仿真环境中,学生可以从基本数字逻辑器件开始学习,进而学习微机原理与接口技术。基于Proteus的微机接口实验教学改革,能够使学生在熟悉硬件的基础上设计软件应用,同时锻炼软硬件的设计能力。
基于Proteus的微机接口可以实现该课程常用的所有实验,如IO端口扩展(8255)、定时器/计数器(8253)、串口通信(8251)、模数转换(ADC0809)、数模转换(DAC0832)、液晶屏显示(LCD1602)等。在此基础上,还能进行一些功能更加强大的综合性实验设计,下面是“IO端口扩展(8255)”的实验过程:
第一,设计好该实验的Proteus仿真图,主要包括I/O译码电路、8255和8086的连接、8255和I/O外设的连接。“IO端口扩展(8255)”实验仿真图如图1所示。
图1 “IO端口扩展(8255)”实验仿真图
第二,编写相应汇编程序,并编译成exe可执行文件。
code segment
assume cs:code
start:
mov ax,0000h
mov dx,ax
mov dx,8006h;设置控制口,设置B口为输出口
mov al,80h
out dx,al
loop:
mov dx, 8002h;送数据0B给B口控制相应LED灯
mov al,0Bh
out dx,al
jmp loop
code ends
第三,把exe文件加载到8086中并点击仿真运行按钮,出现如图2所示的运行结果。
图2 实验运行结果
本实验平台采用虚拟与现实相结合的方法,学生通过Proteus可以在没有硬件的条件下,随时随地进行微机接口相关实验的硬件和软件设计。实验过程非常透明清晰,硬件可以看见每根导线和每个端口上的电平高低,编程直接采用汇编语言,有利于学生直观了解微机内部的运作机制,在牢固掌握所学知识的基础上实现对知识的实践应用。