太原理工大学 微型计算机实验,太原理工大学 微机原理 实验三 十字路口红绿灯闪烁实验...

a7f4a3f590493a1e451dd952a488fd7c.gif 太原理工大学 微机原理 实验三 十字路口红绿灯闪烁实验

(9页)

3e08200a6c5b623a00323255bf4911fb.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

9.90 积分

本科微型计算机原理及应用实验报告课程名称: 微型计算机原理及应用 实验名称: 十字路口红绿灯闪烁实验 实验地点: 微机原理实验室 实验三 十字路口红绿灯闪烁实验一、 实验目的 通过对红绿黄灯的控制,熟练掌握8255A接口芯片的编程方法二、 实验内容对8255A接口芯片进行编程,使红黄绿发光二级管按照十字路口交通灯的形式点亮或者熄灭。三、 线路连接发光二级管共8个,其中两组红黄绿灯用六个,L2、L3、L4为一组,L5、L6、L7、为一组;试验台连接如图所示。高电平时,灯点亮。四、 编程提示1、 红、黄、绿灯变化规律设有一个十字路口,两组灯分别代表东西和南北两个方向,其红黄绿灯变化规律为:(1)两个路口红灯全亮(2)南北路口绿灯亮,东西路口红灯亮(3)南北路口绿灯灭,东西路口红灯亮(4)两个路口黄灯闪烁(5)两个路口红灯全亮(6)东西路口绿灯亮,南北路口红灯亮(7)东西路口绿灯灭,南北路口红灯亮(8)两个路口黄灯闪烁(9)转向(2)循环执行2. 设置8255A方式控制字设置8255A的端口C工作在方式0,为输出。D0、D1控制绿灯,D2、D3控制黄灯,D4、D5控制红灯。需要点亮哪一位指示灯时,8255A相应端口对应为就输出“1”。五、流程图译码器端口YN两个路口红灯亮延时南北路口绿灯亮,东西路口红灯亮有键按下?延时南北路口绿灯灭两个路口黄灯闪烁两个路口红灯亮延时显示提示信息东西路口绿灯灭读端口C数据并保存两个路口红灯亮延时设控制字为80H(端口C均为输出)东西路口绿灯亮,南北路口红灯亮延时两个路口黄闪烁设控制字为81H(端口C低四位为输入)读/写控制逻辑结束开始六、实验程序DATA SEGMENTIOPORT EQU 0D880H-280HIO8255C EQU IOPORT+282HIO8255T EQU IOPORT+283HPB DB ?MESS DB 'ENTER ANY KEY CAN EXIT TO DOS!',0DH,0AH,'$'DATA ENDSSTACK SEGMENT STACKSTA DW 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACKSTART: MOV AX,DATA MOV DS,AX MOV ES,AX MOV AH,09H MOV DX,OFFSET MESS INT 21H MOV DX,IO8255T MOV AL,81H OUT DX,AL MOV DX,IO8255C IN AL,DX MOV PB,AL MOV DX,IO8255T MOV AL,80H OUT DX,AL MOV DX,IO8255C MOV AL,PB OR AL,0CH OUT DX,AL MOV AL,30H OUT DX,AL CALL DELAY10LLL: MOV DX,IO8255C MOV AL,12H OUT DX,AL CALL DELAY10 CALL DELAY10 CALL DELAY10 CALL DELAY10 MOV AL,10H OUT DX,AL MOV CX,0040HTTT: MOV AL,0CH OUT DX,AL PUSH CX MOV CX,80HLOP1: CALL DELAY1 LOOP LOP1 MOV AL,00H OUT DX,AL MOV CX,80HLOP2: CALL DELAY1 LOOP LOP2 POP CX LOOP TTT MOV AL,30H OUT DX,AL CALL DELAY10 MOV AL,21H OUT DX,AL CALL DELAY10 CALL DELAY10 CALL DELAY10 CALL DELAY10 MOV AL,20H OUT DX,AL MOV CX,0040HGGG: MOV AL,0CH OUT DX,AL PUSH CX MOV CX,80HLOP3: CALL DELAY1 LOOP LOP3 MOV AL,00H OUT DX,AL MOV CX,80HLOP4: CALL DELAY1 LOOP LOP4 POP CX LOOP GGG MOV AL,30H OUT DX,AL CALL DELAY10 MOV AH,06H MOV DL,0FFH INT 21H JNZ PPP JMP LLLPPP: MOV AX,4C00H INT 21HDELAY1 PROC NEAR PUSH CX MOV CX,0FFFFHCCC: LOOP CCC POP CX RETDELAY1 ENDPDELAY10 PROC NEAR PUSH AX PUSH CX MOV CX,0F00HUUU: CALL DELAY1 LOOP UUU POP CX POP AX RETDELAY10 ENDPCODE ENDS END START七、实验步骤1、在windows环境下,打开“开始”菜单,选择“运行”项,然后输入”CMD”,按“确定”进去DOS环境。2、输入“E:”回车,输入“CD MASM”回车。3、输入“EDIT yw2.ASM”回车,进入编辑状态,将以上源程序写入,完成后,如下图,按“Alt+F”打开文件菜单,选“Save”存盘,选“Exit”退出编辑状态。4、对原程序进行汇编连接输入“ML yw2.ASM”回车5、打开扩展卡I/O端口地址,用ALLOWIO命令打开I/O端口地址:命令为程序为:ALLOWIO 1*0D880 1*0D888 1*0D890 1*0D898 1*0D8A0 1*0D8A8 1*0D8B0 1*0D8B8 回车。输入“RUN”回车。6、 按实验电路图1接好线,给实验箱通电。输入“LD”回车,即可看到按一定规律变化的红黄绿灯。8、 思考题问:程序中红.绿.黄灯点亮和熄灭的延时时间是如何设定的?答:通过CALL指令调用子程序DELAY10,DELAY10的功能是通过执行循环执行压入堆栈和弹出堆栈来实现延时,改变循环次数即CX的设定值即可改变延时时间。9、 实验感想在实验中,我学会了对8255A接口芯片进行编程,使红黄绿发光二级管按照十字路口交通灯的形式点亮或者熄灭。这次实验我也感受到了微机原理这门课在现实生活中的应用。 关 键 词: 太原理工大学微机原理实验三十字路口红绿灯闪烁实验

4d91c43bfc72ca913299809b07b4968f.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

关于本文

本文标题:太原理工大学 微机原理 实验三 十字路口红绿灯闪烁实验

链接地址: https://www.wenku365.com/p-39240968.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值