8255实现抢答器设计_第1页
8255实现抢答器设计_第2页
8255实现抢答器设计_第3页
8255实现抢答器设计_第4页
8255实现抢答器设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要 Proteus是一种交互式,可视化的电路仿真软件。本文介绍了应用proteus软件进行多路抢答器设计与仿真的实现方法。智能抢答器作为一种电子产品已广泛应用于各种智力和知识竞赛场合。本系统就是通过8086控制,采用并行可编程接口芯片8255为核心而设计的智能抢答器。硬件设计是借用8255为中心的控制模块,软件设计是采用汇编语言编程。该设计的在对系统工作原理充分研究的基础上,选择合适的元件型号和参数,再用proteus绘图软件画出电路原理图,最后根据电路接口编写软件程序。 用proteus仿真效果真实,准确,可以提高开发效率,降低开发成本,具有推广价值。关键字:proteus,接口芯片825

2、5,仿真abstract Proteus is a kind of interactive visualization of circuit simulation software. This paper introduces the application of proteus software multiplex vies to answer first device design and the realization of the simulation method. Smart responder as a kind of electronic products has been w

3、idely used in all kinds of intelligence and knowledge competition. This system is controlled by 8086, using the programmable parallel interface chip 8255 as the core and design of intelligent responder. The hardware design is to borrow 8255 as the center of control module, the software design is to

4、use assembly language programming. The design of the system working principle, on the basis of fully research, choose the right component model and parameters, then use proteus draw the circuit principle diagram, drawing software according to the interface circuit to write software programs.Use prot

5、eus simulation effect is true, accurate, can improve the development efficiency, reduce the development cost, value for popularization.Key words: proteus, interface chip 8255, simulation 目录1绪论11.1写作背景11.2proteus介绍11.3实现功能22硬件设计原理32.1设计电路图32.2芯片介绍52.2.1可编程并行I/O接口芯片Intel8255A52.2.2其他元件介绍93软件设计原理113.1流

6、程图113.2程序124系统仿真调试155心得体会176参考文献181绪论1.1写作背景现代电子设计手段日新月异,由手工设计到EDA阶段,再到虚拟设计阶段,人们不断提高设计水平与效率。并行接口芯片8255可以用作并行打印机,七段数码显示器和非编码键盘接口本篇论文利用proteus仿真软件实现抢答器功能,其中用到并行接口芯片8255.1.2proteus介绍Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机

7、与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。Proteus软件具有其它EDA工具软件(例:multisim)的功能。这些功能是:原理布图,PCB自动或人工布线,SPICE电路仿真革命性的特点:1互动的电路仿真用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,L

8、CD,AD/DA,部分SPI器件,部分IIC器件。2仿真处理器及其外围电路可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,Proteus建立了完备的电子设计开发环境。1.3实现功能这次设计主要要用到数码显示功能,故初步选定8255芯片。若要实现倒计时,中断控制,则要用到8253芯片。经过仔细思考论证,我认为设计的关键就是准确判断出最先抢答者的信号并锁存,而同时不理睬其他抢答者的信号。为此,可将7个抢答按钮信号通过一个4位并行输入口接至微机中。当主持人启动抢答

9、过程后,微机通过该并行输入口循环对抢答信号进行采样。当采样到那一组的抢答信号已经发出,则立即停止采样,并记录下该组的组号。2硬件设计原理2.1设计电路图图2-1为原理图,逻辑开关k0-k6代表抢答器按钮,某组抢答器按钮按下,在数码挂面上将其组号显示出来图2-1抢答器原理图抢答器抢答按钮应如图2-2所示:图2-2 开关按钮图数码管连接如图2-3所示图2-3数码管连接图2.2芯片介绍2.2.1可编程并行I/O接口芯片Intel8255A1并行接口芯片8255内部结构8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(40引脚

10、)。 其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0D7。由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0A1。此外CPU要对8255进行读、写与片

11、选操作,所以控制线为片选、复位、读、写信号。各信号的引脚编号如下:(1)数据总线DB:编号为D0D7,用于8255与CPU传送8位数据。(2)地址总线AB:编号为A0A1,用于选择A、B、C口与控制寄存器。(3)控制总线CB:片选信号、复位信号RST、写信号、读信号。当CPU要对8255进行读、写操作时,必须先向8255发片选信号选中8255芯片,然后发读信号或写信号对8255进行读或写数据的操作。2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,则8255可同时控制24路开关。各通道的引脚

12、编号如下:(1)A口:编号为PA0PA7,用于8255向外设输入输出8位并行数据。(2)B口:编号为PB0PB7,用于8255向外设输入输出8位并行数据。(3)C口:编号为PC0PC7,用于8255向外设输入输出8位并行数据,当8255工作于应答I/O方式时,C口用于应答信号的通信。3)控制器部分8255将3个通道分为两组,即PA0PA7与PC4PC7组成A组,PB0PB7与PC0PC3组成B组。图2-4所示,相应的控制器也分为A组控制器与B组控制器,各组控制器的作用如下:(1)A组控制器:控制A口与上C口的输入与输出。(2)B组控制器:控制B口与下C口的输入与输出。2外部引脚图2-4 825

13、5引脚图RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.RD:读信号线,当这个输入引脚为低跳变沿时,即/RD产生一个低脉冲且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。WR:写入信号,当这个输入引脚为低跳变沿时,即/WR产生一个低脉冲且/CS=0时,允许CPU将数据或控制字写入8255。D0D7:三态双向数据总线,

14、8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。3 8255A的基本操作Intel8255A内部的读/写控制逻辑对输入信号CS,RD,WR,A1,A0进行译码,产生控制信号决定8255A的操作类型。这些输入信号的组合关系以及8255A的基本操作描述如表2-1所示 A1A0RDWRCS工作状态00010A口数据-数据总线01010B口数据-数据总线10010C口数据-数据总线00100总线数据-A口01100总线数据-B口10100总线数据-C口11100总线数据-控制字寄存器*1数据总线-三态11010非法状态*

15、110数据总线-三态表2-1 工作关系表Intel8255A的初始化字命令字D7 D6 D5 D4 D3 D2 D1 D0D7:特征位 D6D5:A组方式00=方式0 ,01=方式1,1X=方式2D4: A口0=输出,1=输入 D3:C口C7C4 0=输出,1=输入D2:B组方式0=方式0,1=方式1。D1: B口0=输出,1=输入D0:C口C3C0 0=输出,1=输入D7位为“1”时,为方式选择控制字的标识位。D6、D5位决定A端口的工作方式。D4位决定A端口工作在输入还是输出方式。D3位决定C端口高4位PC7PC4是作为输入端口,还是作为输出端口。D2位用来选择B端口的工作方式。D1位决定

16、B端口作为输入还是输出端口。D0位决定C端口低4位PC3PC0作出为输入,还是输出。1C口复位字在8255A芯片初始化时,C端口置1/置0控制字可以单独设置C端口的某一位为0或某一位为1。控制字的D7位为“0”时,是C端口置1/置0控制字中的标识位,这个控制字只对C口起作用,任何一位都可以通过按位置位/复位控制字来设置。注意:对C口的置位/复位控制不是把控制字送到C口,而是由控制口决定各位的状态,是把控制字送到控制口工作方式3种工作方式可用软件编程对控制口设置来指定。三种基本的工作方式为: 方式0基本的输入输出,方式1选通输入输出方式, 方式2双向传送方式。1) 工作方式0(基本输入输出方式)

17、功能:方式0不使用联络信号,也不使用中断,A口和B口可定义为输入或输出口,C口分成两个部分(高四位和低四位),C口的两个部分也可分别定义为输入或输出。在方式0,所有口输出均有锁存,输入只有缓冲,无锁存,C口还具有按位将其各位清0或置1的功能。常用于与外设无条件的数据传送或接收外设的数据。2) 工作方式1(选通输入输出方式)A口借用C口的一些信号线用作控制和状态信号,组成A组,B口借用C口的一些信号线用作控制和状态信号,组成B组。在方式1下,C口的某些位被占用。方式1的输出:当A口工作于方式1且用作输出口时,C口的PC7线用作输出缓冲器满OBF信号,PC6用作外设B口输出收到数据后的响应信号AC

18、K,PC3用作中断请求输出信号线INTR。当B口工作于方式l且用作输出口时,C口的PC1线用作输出缓冲器满OBF信号,PC2用作外设收到数据后的响应信号ACK,PC0用作中断请求输出信号线INTR。3) 工作方式2 (双向输入输出方式)功能:方式2是A组独有的工作方式。外设既能在A口的8条引线上发送数据,又能接收数据。此方式也是借用C口的5条信号线作控制和状态线,A口的输入和输出均带有锁存。2.2.2其他元件介绍七段数码显示器接口1. led显示器结构Led显示器是由发光二极管组成的显示器,有“8”字段和“米”字段之分。显示器分为共阳极和共阴极两种。将发光二极管阴极连接在一起的称为共阴极led

19、显示器。将发光二极管阳极连接在一起的称为共阳极led显示器。 用led显示各种字符和数字,就是使led的相应段点亮,而其他段不亮。共阴极led显示器只要在需要点亮段的阳极加上高电平,共阴极加上低电平,就可以得到需要现实的字符。2led显示控制方式 七段数码管有静态和动态两种显示方式。动态驱动的优/缺点:优点是显示驱动电路简单,2个IC即可驱动8个10以下的LED,成本较低。各种尺寸的LED可直接与主控板.驱动板.扩展板连接,甚至可不采用PCB板。功耗低。采用分时扫描显示方式,功耗只有静态显示的1/5。缺点是LED至驱动板间的连线较多(共8+LED个数根)。当位数较多时,连线及检修不便。静态驱动

20、的优/缺点:优点是LED显示组件间连线非常简洁,只需5-6根线即可将所有LED串接,调试检修方便。显示亮度好,采用合适的驱动元件可驱动 2米以下的LED,适合制作室外大型数字屏。缺点是每个LED需要1-2个驱动IC,需要制作显示组件PCB板。功耗稍大(是扫描驱动的5倍)。成本稍高。 3软件设计原理3.1流程图 开始emu8086编程流程图3-1所示Bx指向断码表首地址结束输出断码求断码设置8255A口输出C口输入输入数据是0吗y关闭显示求出组号到alN是空格吗yN图3-1 程序流程图3.2程序用emu8086编程程序如下:data segmentioa equ 0000hiob equ 000

21、2hioc equ 0004hiokz equ 0006hled db 06h,5bh,4fh,66h,6dh,7dh,07hdata endscode segmentassume cs:code,ds:datastart: mov ax, data mov ds, ax mov dx,iokz mov ax,89h out dx,al mov bx,offset led mov dx,ioa mov al,00h out dx,al nop mov al,3fh out dx,al nopsss: mov dx,ioc ;等待PC0PC6输入一个信号 in al,dx cmp al,1111

22、1111b ;判断是否有PC键按下 jz sss cmp al,01111111b ;判断是否是PC7 jz sss mov dx,ioa mov al,00h out dx,al nop xor al,11111111b mov cl,0ffhrr: inc cl shr al,1 jnc rr mov al,cl xlat mov dx,ioa out dx,alwai: mov dx,ioc in al,dx cmp al,01111111b ; 若此时按下PC7则清零并开始下一轮 jnz wai mov dx,ioa mov al,3fh out dx,al jmp ssseee: m

23、ov ah,4ch int 21hcode ends end start 4系统仿真调试 根据前面硬件设计原理图与软件设计原理图,在proreus软件上连接如图4-1,4-2所示电路.根据如图所示电路8255A端口,B端口,C端口及控制端口的地址为0000h,0002h,0004h,0006h。电路中用到74系列器件时TI公司生产的中小规模TTL集成电路芯片,是一种低成本,工业民用产品,工作温度070度,74xxx系列属于标准中小规模TTL集成电路。电路中还包括可编程并行接口芯片8255A,数码管,8086cpu控制电路,电阻若干,开关若干。图4-1 仿真电路图图4-2 仿真电路图逻辑开关k0-k6代表抢答器按钮,k7表示重置。点击仿真按钮开始第一轮抢答,先抢答的组会在数码管上显示出来。按k7开始下一轮抢答。(开关从上到下依次为k0到k7) .5心得体会 通过这次课程设计,让我更加深刻了解课本知识。虽然这次课程是那么短暂的2周时间,我感觉到这些天我的所学胜过我这一学期所学,这次任务原则上是设计,其实就是一次大的作业,是让我对课本知识的巩固和对基本公式的熟悉和应用,在设计抢答时我首先想到的就是8255芯片,但是后来并不是那么简单,这中间编程和电路图让我使我做事的耐心和仔细程度得以提高。课程设计是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论