可编程并行接口与七段数码管动态显示_第1页
可编程并行接口与七段数码管动态显示_第2页
可编程并行接口与七段数码管动态显示_第3页
可编程并行接口与七段数码管动态显示_第4页
可编程并行接口与七段数码管动态显示_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、实 验 报 告实 验 人:学 号:0938 日 期:2011-05-17 院(系):软件学院 专业(班级):实验题目:可编程并行接口与七段数码管动态显示 一、实验目的1、 通过实验,掌握8255工作于方式0以及设备A口为输出口,C口为输入口的方法2、 进一步熟悉8255,掌握数码管显示数字的原理 二、实验原理1、实验电路连接图图 一 74LS273的连线 图二 8255的连线关于实验电路连接图的分析:(1)74LS273是由八个D触发器组成的译码器。IOW信号是I/O写操作,低电平有效,即在低电平的情况下执行输出指令。2A8H是74LS138地址译码器的译码输出。(2) LED灯和七段数码管均

2、要显示,所以连接以上元件(3) LS273起到缓存作用是为了使得走马灯和数码管同时显示;图二连接主要用于走马灯的显示;图一连接用于接受内部总线数据,译码后用于七段数码管的显示2 实验流程:三、实验内容1、如图4-1连接,LED走马灯实验。利用K7K0的八位开关,控制LED产生八种走马灯花样。例如,将开关1闭合时,8个LED彩灯从两边向中间依次点亮;将开关2闭合时,8个LED彩灯从中间向两边依次点亮等等。实现方法,先设置LED点亮花样的8组数据。每组数据依次定义八个数据对应的LED灯得状态,从A口输出每个数据后需要延时。2、如图5-2连接好电路,七段数码管如图5-1连接。位驱动输入端S1,S0连

3、接8255 C口的PC1 PC0。编程显示自己的学号。3、 七段数码管的字型代码表一如下:表一四、实验器材1、 电脑及TPC-USB软件2、试验箱及连接导线五、实验分析与设计TPC-USB上的汇编程序;*;* 8种花样的LED走马灯及学号显示 *;*;.MODEL SMALL.STACK 64.DATALIGHT0 DB 0,0,0,0,0,0,0,0 LIGHT1 DB 10000001B, 01000010B, 00100100B, 00011000B, 10000001B, 01000010B, 00100100B, 00011000B ;两边到中间LIGHT2 DB 00011000B

4、, 00100100B, 01000010B, 10000001B, 10000001B, 01000010B, 00100100B, 00011000B ;中间到两边LIGHT3 DB 10000001B, 11000011B, 11100111B, 11111111B, 11111111B, 11100111B, 11000011B, 10000001B ;花样LIGHT4 DB 10000001B, 11000011B, 11100111B, 11111111B, 11100111B, 11000011B, 10000001B, 00000001BLIGHT5 DB 11000001B,

5、 11100000B, 01110000B, 00111000B, 00011100B, 00001110B, 00000111B, 10000011BLIGHT6 DB 11110000B, 01111000B, 00111100B, 00011110B, 00001111B, 10000111B, 11000011B, 11100001BLIGHT7 DB 11111000B, 01111100B, 00111110B, 00011111B, 10001111B, 11000111B, 11100011B, 11110001BLIGHT8 DB 11111100B, 01111110B,

6、00111111B, 10011111B, 11001111B, 11100111B, 11110011B, 11111001BLIGHT9 DB 3FH,6FH,4FH,'$'学号io8255a equ 288Hio8255b equ 28bHio8255c equ 28aHcode segmentassume cs:codestart: MOV AX, DATAMOV DS, AXmov al,8bH ;设8255为C口输入,A口输出inout: mov dx,28bHout dx,almov al,0hmov dx,28aH ;从C口输入一数据in al,dx ;赋值给a

7、lCMP AL,0JE E0MOV BL,AL ;BL储存AL数据,逐个对掩码进行and操AND BL,1H ;作用于识别最右边一个被拨上的开关CMP BL,1JE E1MOV BL,ALAND BL,2HCMP BL,2HJE E2MOV BL,ALAND BL,4HCMP BL,4hJE E3MOV BL,ALAND BL,8H CMP BL,8hJE E4MOV BL,ALAND BL,10H CMP BL,10hJE E5MOV BL,ALAND BL,20H CMP BL,20hJE E6MOV BL,ALAND BL,40HCMP BL,40hJE E7MOV BL,ALAND B

8、L,80HCMP BL,80hJE E8;-E0: MOV DI,OFFSET LIGHT0 ;根据输入的信息将花样JMP SHOW ;所在地址赋值给DIE1: MOV DI,OFFSET LIGHT1JMP SHOW E2: MOV DI,OFFSET LIGHT2JMP SHOW E3: MOV DI,OFFSET LIGHT3JMP SHOW E4: MOV DI,OFFSET LIGHT4JMP SHOW E5: MOV DI,OFFSET LIGHT5JMP SHOW E6: MOV DI,OFFSET LIGHT6JMP SHOW E7: MOV DI,OFFSET LIGHT7J

9、MP SHOW E8: MOV DI,OFFSET LIGHT8JMP SHOW ;-SHOW: MOV CX,08SET_ID: MOV SI,OFFSET LIGHT9 ;设置学号所在地址,用于数码管显示BACK: MOV DX,288H ;输出端口设为288,显示走马灯MOV AL, DIOUT DX,ALMOV DX,2A8H ;改变输出端口,显示学号MOV AL,SICMP DI,0 ;若此时LED灯有显示,则关闭数码管显示JE OUT1 ;为零则进行学号显示MOV AL,0OUT1: OUT DX,ALCMP SI,'$' ;显示完了跳回学号第一个字符JE SET_

10、IDCALL DELAY2 ;显示一种花样 用时约八秒CALL DELAY_OFF ;闪烁显示INC DIINC SIDEC CXCMP CX,0JE JMP_FORJMP NNJMP_FOR:JMP FAR PTR inoutNN: JMP BACKmov aH,4cH ;否则返回int 21H;-DELAY PROC NEAR ;DELAY 1/2-SECONDSPUSH CXPUSH AXMOV CX, 33144WAITF1: IN AL, 61HAND AL, 10HCMP AL, AHJE WAITF1MOV AH, ALLOOP WAITF1POP AXPOP CXRETDELA

11、Y ENDP;-DELAY2 PROC NEAR ;DELAY 1-SECONDSCALL DELAYCALL DELAYRETDELAY2 ENDP;-DELAY_OFF PROC NEAR ;5ms DELAYMOV CX,331G1: LOOP G1RETDELAY_OFF ENDP;-code endsend start六、实验心得在上一次实验的基础上我们进行了这次控制输入输出以达到简单的彩灯变化的实验,首先对8255输出端口的操作颇费功夫,起初打算将花样都存在一个数据标签内,但是后来对数据地址的操作出现很多问题,于是我干脆对每一个花样都进行标识,缺点是因此增加了代码的冗余。然后在实现七段数码管方面,一开始是LED灯和数码管同步显示(两种都是八个数据一组显示),然后出于实验要求,在LED显示时关闭数码管的显示,为仿数据混淆,我便用两个指针专门一个用于输出花样,一个输出学

温馨提示

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

评论

0/150

提交评论