华南理工大学微机系统和接口实验实验四.docVIP

  • 25
  • 0
  • 约2.73千字
  • 约 6页
  • 2018-06-27 发布于福建
  • 举报

华南理工大学微机系统和接口实验实验四.doc

实验四 一、实验目的 1、自学TPC-ZK系列通用32位微机接口实验系统的组成。 2、掌握实验系统中接口地址译码电路的工作原理。 3、掌握8255的工作原理及编程方法。 二、开发环境 运行于XP操作系统下TPC-ZK集成开发环境 三、实验题目 (1)实验电路如下图,将8255的A口PA0~PA7与七段数码管的“段码”输入端a、b、c、d、e、f、g、dp相连,位码驱动输入端S3~S0接8255的PC3~PC0。编程实现在两位数码管上显示“56”。 编程提示:七段数码管为共阴级,段码采用同相驱动,输入端(a~dp)加高电平,选中的LED亮;位码加反相驱动器,输入端加高电平,选中此数码管。 七段数码管的段码表如下: 【实验汇编代码】 data segment ????porta equ 288H; 74LS138的/Y1地址:288h ????portb equ 289H ????portc equ 28AH ????portcon equ 28BH data ends code segment assume ds:data,cs:code delay proc near ; 延时子程序 ????push bx ????push cx ????mov bx,2000 lll: ???mov cx,50; 50000 ll: ????loop ll ????dec bx ????jne lll ????pop cx ????pop bx ????ret delay endp start: ????mov ax,data ????mov ds,ax ???? ????mov dx,portcon ????mov al ????out dx,al ???? a:?mov al,1000B; 在数码管第一位显示 ????mov dx,portc ????out dx,al ????mov al,6dh ????mov dx,porta ????out dx,al ????call delay; show 5 ????mov al,00h ????out dx,al; 稳定显示 ????mov al,0001B; 在数码管第四位显示 ????mov dx,portc ????out dx,al ????mov al,7dh ????mov dx,porta ????out dx,al ????call delay; show 6 ????mov al,00h ????out dx,al; 稳定显示 ????mov ah,1 ????int 16h; 按键检测 ????je a; 无按键,跳转回去 ????mov ah,4ch ????int 21h;返回dos code ends end start 本代码能够正常同时显示数字5和6,并解决了数码管闪烁的问题。在键盘按下键时能够退出程序,结束运行。 (2)通过并行接口8255实现十字路口交通灯的模拟控制,如图29,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。 十字路口交通灯的变化规律要求: (1) 南北路口的绿灯、东西路口的红灯同时亮一定时间。 (2) 南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。 (3) 南北路口的红灯、东西路口的绿灯同时亮一定时间。 (4) 南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。 (5) 转(1)重复。 【实验汇编代码】 data segment porta equ 288H ;74LS138的/Y1地址:288h portb equ 289H portc equ 28AH portcon equ 28BH data ends code segment assume ds:data,cs:code delay_long proc near ;长延时子程序 push bx push cx mov bx,2000 lll0: mov cx,50000;50000 ll0: loop ll0 dec bx jne lll0 pop cx pop bx ret delay_long endp delay_short proc near ;短延时子程序 push bx push cx mov bx,2000 lll1: mov cx,5000;50000 ll1: loop ll1 de

文档评论(0)

1亿VIP精品文档

相关文档