快生活 - 生活常识大全

基于的软件仿真应用


  【摘 要】英国的实验中心电子开发的Proteus软件支持模拟电路,数字电路,单片机和模拟ARM的仿真。在Proteus7.5开始,可以支持8086 CPU,它为计算机学习和研究提供了极大的方便。本文从实际应用出发,在Proteus软件中模拟LED右流水灯亮的过程。
  【关键词】8086处理器;微机原理;仿真
  一、引言
  随着科学技术的不断发展,微型计算机已广泛应用于社会和经济的各个方面,因为它们的体积小,重量轻,功耗低,结构简单,可靠性高,使用方便,以及拥有高性价比。而嵌入式系统的发展,使微型计算机系统在通信、机电一体化等方面的应用更加广泛。
  本次设计,通过汇编语言控制开关的状态,用8086CPU控制8255A的端口PA,再利用74ls245芯片通过控制8只LED发光二极管,PB口接1只开关,编写程序LED灯右循环亮。
  二、设计方案
  2.1设计原理
  本次设计的内容为模拟流光灯控制系统设计与实现。根据需要,选择的芯片有8086cpu芯片,74273芯片,74ls254芯片,8255A可编程并行接口。然后编写程序,用Proteus8软件进行仿真,控制8个LED灯实现流水效果。
  2.2设计环境及设备
  PC机一台、windows 10系统
  2.3模拟灯右循环亮工作原理
  2.3.1现象:右向移动流水灯的实验现象是首先最左边的灯亮,然后是最左边的灯灭,此时左起第二个灯亮,依次轮流亮,直到第八个灯亮。然后循环上述过程。
  2.3.2原理:右向移动流水灯是根据发光二极管的显示原理,首先点亮最右的二极管,然后进位置一,通过带进位的循环右移指令编写程序以实现模拟流水灯的右向移动。
  三、系统硬件介绍
  3.1 8086处理器介绍
  8086CPU是INTEL系列微处理器中具有代表性的高性能16位微处理器.它使用的HMOS工艺制造,外形封装为双列直插,有40个引脚。使用单个5V电源,8086处理器的主时钟频率为4.77MHZ。8086 CPU具有16位数据总线和20位地址總线,所以它的直接寻址空间是1MB。
  8086CPU采用了2级流水线的处理方式,8086CPU内部设置了两个独立的部分总线接口部件(BIU)和指令执行部件(EU)来实现取指令与执行指令的流水线操作。总线接口部件负责取指令,存取操作数和存结果,即负责所有的外部操作。指令执行部件负责执行指令,即从BIU的指令队列中取出指令,并执行指令,不必访问存储器或I/O端口,节省了取指令时间,加快程序执行速度。
  3.2 8255芯片介绍
  8255芯片是来自于Intel家族,型号8255用24个输入/输出引脚和可编程通用并行输入/输出接口电路(改性8255A和8255A-5)的可编程外围接口电路。它是一个40针双列直插集成电路,并且使用单个+ 5V电源。
  8255芯片一种并行输入输出LSI芯片,一个多功能I/O设备,可以被用作CPU总线与外围设备之间的接口。
  8255芯片有24可编程I/O端口,即,3个组的8位I/O端口中的端口PA,PB端口和PC端口。它们可以被分为两个组,每组12位I/O端口。A组包括端口A和端口C(高4位,PC4到PC7)。B组包括端口B和端口C(低4位,PC0到PC3)。A组可以被设置为基本的I/O端口,STROBE I/O闪控,双向I/O 3点的模式;B组只能被设置为基本的I/O或闪控I/O模式,即完全由控制寄存器的控制字来确定。
  3.3 74273芯片介绍
  74273芯片是一个8位的数据锁存器。
  第1脚是复位脚,平时应保持高电平;低电平时1Q~8Q输出全部低电平,同时内部寄存器全部清零。
  1D~8D为数据输入,在11脚(CLK)从低电平升变到高电平时(即上沿),1D~8D被保存到74273寄存器中,同时1Q~8Q输出对应1D~8D的电平。
  第1脚保持高电平,第11脚为低电平、高电平、高电平到低电平跳变(下升沿)这些状态对输出1Q~8Q及74273内部保存的数据无影响。
  3.4 74ls245
  74LS245是用于驱动LED或其它设备通常使用的芯片。它是一个8信道的同相三态双向总线收发器,其在两个方向上传送数据。
  第1脚DIR(T/R),为输入输出端口转换用,DIR="1"高电平时信号由"A"端输入"B"端输出,DIR="0"低电平时信号由"B"端输入"A"端输出。
  第2~9脚"A"信号输入输出端,A0=B0,A7=B7,A0与B0是一组,如果DIR="1"OE="0"则A1输入B1输出,其它类同。如果DIR="0"OE="0"则B1输入A1输出,其它类同。
  第11~18脚"B"信号输入输出端,功能与"A"端一样,不再描述。
  第19脚OE,使能端,若该脚为"1"A/B端的信号将不导通,只有为"0"时A/B端才被启用,该脚也就是起到开关的作用。
  第10脚GND,电源地。
  第20脚VCC,电源正极。
  四、模拟流水灯软件设计
  4.1编程程序实现
  CODE SEGMENT "CODE"
  ASSUME CS:CODE
  START:MOV DX,06H
  MOV AL,82H
  OUT DX,AL
  MOV DX,00H
  MOV AH,0FEH
  BG:	MOV AL,AH
  OUT DX,AL
  CALL DELAY
  MOV DX,02H
  IN AL,DX
  TEST AL,01H
  JNZ BG
  ROR AH,1
  MOV DX,00H
  JMP BG
  DELAY PROC NEAR
  MOV BL,100
  DELAY2: MOV CX,374
  DELAY1: NOP
  NOP
  LOOP DELAY1
  DEC BL
  JNZ DELAY2
  RET
  DELAY ENDP
  CODE ENDS
  END START
  五、仿真图
  六、结果分析
  点击软件的右下角开始模拟按钮,然后关闭K0开关。可以观察到的是,在右上角的LED灯从左到右闪烁,不停止。
  基于这次试验,让我们对Proteus软件有了更深的认识,对微机原理以及技术有了更深层次的了解,在21世纪新时代,微机原理会得到更深层次的发展。我们的社会也会更加的幸福。
  【参考文献】
  [1]田辉主编.微机原理与接口技术[M].高等教育出版社,2011.
网站目录投稿:向兰