APP下载

端口概念及应用的仿真演示实验

2016-04-07宋志平

大学物理实验 2016年1期
关键词:嵌入式系统仿真端口

宋志平,叶 柳

(安徽大学,安徽 合肥 230601)



端口概念及应用的仿真演示实验

宋志平,叶柳

(安徽大学,安徽 合肥230601)

摘 要:端口概念是微机原理及嵌入式系统相关课程中的关键概念之一。通过简单的设计实例,结合硬件原理和输入输出指令的执行时序,分析了端口的作用,端口地址的本质及形成过程。给出了Proteus环境下实验系统的仿真调试结果。

关键词:嵌入式系统;端口;仿真

在计算机及嵌入式系统相关课程的理论教学及实验设计过程中,端口的概念非常重要,是连接系统硬件和软件之间的桥梁[1-4]。CPU通过接口电路中的输入输出端口实现与外设间的数据传输。必须对与端口操作相关指令的执行过程非常清晰,才能深刻理解,灵活应用。本文以单片机读取按键状态并输出显示的简单过程为例,利用Proteus仿真软件平台,通过仿真实验,结合MOVX指令的执行时序,阐明端口的作用、端口地址的本质、形成过程以及CPU通过端口与输入输出设备进行信息交换的基本原理。

1实验系统设计

深入理解端口相关概念及其应用方法,需要对一个含有输入或输出功能的微机系统工作过程进行解剖分析。为此,我们设计了一个单片机系统,该系统通过执行与端口操作的相关指令,实时地将8个按键的状态(断开/闭合),从8个发光二极管显示出来。某个发光二极管亮,表示对应的按键是闭合的;反之,则表示该按键是断开的。比如:LED3亮,表示K3是闭合的;LED3灭,表示K3是断开的。

1.1硬件设计

实验电路硬件以AT89C51单片机为核心,辅以一片8D锁存器74HC273及一片双向驱动电路74HC245。AT89C51负责分析执行指令,74HC273锁存AT89C51执行输出指令时送出的数据,具有三态功能的器件74HC245,实现输入按键与CPU总线间的驱动和隔离。实验电路的硬件原理如下图1所示。图中的RP1和RP2为电阻排,分别用作上拉和限流。

1.2软件设计

实验系统实现的功能非常简单,程序直接用汇编语言编写。程序清单如下:

ORG0

MOVDPTR,#0FEFFH

NEXT:MOVXA,@DPTR

MOVX@DPTR,A

ACALLDELAY

SJMPNEXT

DELAY:DJNZR1,$

DJNZR2,$

RET

2实验系统工作过程

实验系统实现的功能是通过发光二极管实时显示对应的按键状态。其工作过程可以简单概括为循环执行“读取按键状态”、“输出按键状态”、“延时”三个步骤。而关键步骤“读取按键状态”、“输出按键状态”正是通过执行端口输入、输出指令实现的。因此,理解端口输入、输出指令的执行过程是理解系统工作原理的关键,也是理解端口概念和作用的根本所在。

在本实验系统中,完成“读取按键状态”功能的端口输入指令为程序清单中的MOVX A,@DPTR,其执行过程的时序图如下图2所示[5]。

图1 实验系统硬件原理图

图2 输入指令的执行时序

首先,CPU分别从单片机的P0口和P2口输出16位端口地址寄存器DPTR中低8位DPL和高8为DPH的内容,待其稳定后,利用ALE信号的下降沿锁存P0口线上的信号。本实验系统中只使用了16位端口地址中的1位,即P2.0,因为在执行MOVX指令时DPTR中的内容为FEFFH,所以当端口地址信息稳定输出后,P2.0为低电平,即图1中两个或门与P2.0相连接的输入端均为低电平。接下来CPU输出一定宽度负脉冲的读信号RD/,使或门B输出与读脉冲等宽度的负脉冲,该负脉冲会使三态双向驱动器74HC245开启,按键状态对应的高低电平通过74HC245,经由P0口传入单片机中的累加器A,完成按键状态的读取操作。

完成“输出按键状态”的指令是程序清单中的MOVX @DPTR,A指令,该指令的执行过程的时序图如下图3所示[5]。

图3 输出指令的执行时序

首先,CPU也是通过P0和P2口分别输出16位端口地址寄存器中的DPL和DPH,用ALE信号锁存P0口信号,同样,DPTR中的内容为FEFFH,所以P2.0为低电平,使或门A的一个输入端为低。接着CPU将累加器A中的内容(从输入口读取的按键状态)从P0口输出至锁存器73HC273的输入端,并产生具有一定宽度负脉冲的写信号WR/,使或门A输出与写脉冲等宽度的负脉冲,该负脉冲的后延(上升沿)使等候在74HC273输入端的按键状态数据锁存到74HC273的输出端。因为累加器A中的对应位为1时表示按键断开,为0时表示按键闭合,所以LED灯亮则表示对应的按键是闭合的,反之,对应的按键是断开的。完成按键状态的输出功能。

3实验系统仿真运行结果

利用Proteus软件对实验系统的软硬件设计进行了仿真调试,结果如下图4所示。

(1)

(2)

(3)图4 实验系统的仿真调试结果

(1)按键全部闭合,对应的LED全亮(2)K1和K2闭合,对应点亮LED1和LED2(3)K4和K6闭合,对应点亮LED4和LED6

4结论

从以上实验系统的工作原理分析可以得出以下结论:第一,端口是CPU从输入设备读取数据的缓冲器或向输出设备输出数据的锁存器。可以是本实验系统所示的简单器件,也可以是复杂接口电路中的一部分;第二,端口地址是产生打开输入缓冲器或者输出锁存器信号所对应的系统地址信号组合。实验系统中只要P2.0为低电平,配合执行输入/输出指令时产生的读/写信号,就可以打开输入缓冲器或输出锁存器,因此,地址信号组合FEFFH就是系统中的输入和输出端口地址。当然,本电路采用的是“线选法”产生端口地址,端口地址不是唯一的,只要能保证P2.0为低电平,所有地址信号组合均可看作本实验系统的端口地址;第三,输入端口器件必须具有三态功能,以实现输入设备与系统总线间的隔离,如实验系统中的74HC245;输出端口器件必须具有锁存功能,一方面可以使输出设备与系统总线隔离,同时也可以保证下一次输出前输出状态保持稳定,如实验系统中的74HC273。

参考文献:

[1]周佩铃,彭虎,傅中谦.微机原理与接口技术(第3版)[M].北京:电子工业出版社,2011.

[2]高有堂.EDA技术及应用实践[M].北京:清华大学出版社,2006.

[3]黄兴洲,薛德宽,刘雪林,等.基于单片机的自供电供暖温度智能调控装置[J].大学物理实验,2015,28(2):73-76.

[4]高有堂.电子电路设计制版与仿真[M].郑州:郑州大学出版社,2005.

[5]李朝清.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2006.

[6]裘雪敬.基于Matlab GUI的RLC仿真实验平台开发[J].大学物理实验,27(3):111-113.

Simulation Demonstration Experiment of Port and its Application

SONG Zhi-ping,YE Liu

(Anhui University,Hefei Anhui 230601)

Abstract:The port is one of the key concepts of the microcomputer principle and embedded system courses.The function of port,the nature of port address and its formation process are analyzed in detail by simple design example,combined with the hardware principle and the input/output instruction execution sequence,and the simulation and debugging results of the experiment system are presented based on Proteus.

Key words:embedded system;port;simulation

中图分类号:O 4-33

文献标志码:A

DOI:10.14139/j.cnki.cn22-1228.2016.001.004

文章编号:1007-2934(2016)01-0015-05

基金项目:安徽大学2014年省级质量工程项目(2014zy007,2014gxk008,2014xnzx002);安徽大学本科教育质量提升计划项目(xjyykc1402)

收稿日期:2015-09-11

猜你喜欢

嵌入式系统仿真端口
一种端口故障的解决方案
端口阻塞与优先级
系统网络端口安全防护
基于物联网项目驱动的嵌入式系统教学改革的研究与实践
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究
Buck开关变换器的基本参数设计及仿真分析
试析PLC控制下的自动化立体仓库仿真情况分析
基于MADYMO的航空座椅约束系统优化设计
中国体态假人模型与FAA Hybrid Ⅲ 型假人模型冲击差异性分析