• 领导讲话
  • 自我介绍
  • 党会党课
  • 文秘知识
  • 转正申请
  • 问题清单
  • 动员大会
  • 年终总结
  • 工作总结
  • 思想汇报
  • 实践报告
  • 工作汇报
  • 心得体会
  • 研讨交流
  • 述职报告
  • 工作方案
  • 政府报告
  • 调研报告
  • 自查报告
  • 实验报告
  • 计划规划
  • 申报材料
  • 当前位置: 勤学考试网 > 公文文档 > 年终总结 > 正文

    微机接口技术课程设计--交通信号灯实时控制x

    时间:2020-11-19 13:07:29 来源:勤学考试网 本文已影响 勤学考试网手机站

    微机接口技术课程设计一交通 信号灯的实时控制

    微机接口技术课程设计

    交通信号灯的实时控制

    交通信号灯的实时控制

    学院:计算机科学学院

    专业:网络工程112班

    组员:牟龚波41109040201

    杨靖 41109040203

    张凯彦 41109040205

    海小龙 41109040207

    设计目的

    通过本次课程设计实践,熟悉和掌握微机系统的 软件,硬件设计方法,设计步骤,提高综合应用 所学知识及动手和分析问题,解决问题的能力; 同时还应达到以下目的:

    了解交通灯控制的基本工作原理的工作过 程;

    熟悉8259A中断控制器的工作原理和应用 编程;

    熟悉8255A并行接口的各种工作方式和应 用;

    熟悉8253A计数器/定时器的工作方式及应 用编程,掌握利用软硬相结合的定时方法;

    设计的任务

    设有一十字路口,东,西,南,北路口各有红, 黄,绿交通指示灯,实现交通信号灯的控制;具 体要求如下:

    系统初始运行时,东西南北路口的红灯点亮; 然后,东西方向的车辆放行60秒,即东西路口 的绿灯和南北路口的红灯同时点亮;同时在显示 器上显示该车方向车辆放行得到及时间值,从 60减到0,以模拟路口车辆放行的倒计时间显示

    1¥1分钟后,东西路口的绿灯熄灭,黄灯闪烁5 秒钟,以警示车辆将切换红绿灯,此时南北路口 仍维持红灯点亮;同事在显示器上显示黄灯闪烁 的倒计时间值,从5减为0

    1¥

    东西路口的黄灯闪烁5秒后,转为南北方向的 车辆放行60秒,即东西路口的红灯和南北路口 的绿灯同时点亮;同时在显示器上显示该方向车 辆放行的倒计时,从60减为0

    南,北方向的车辆放行20秒后,南,北路口 的绿灯熄灭,黄灯闪烁5秒钟,以警示车辆将切 红,绿灯,此时东,西路口仍维持红灯点亮;同 时在显示器上显示黄灯闪烁的倒计时间值(每秒 减1),从5减到0.

    南,北路口的黄灯闪烁5秒钟后,再转为东, 西方向的车辆放行60秒;同时在显示器上显示 该方向车辆放行的倒计时间值(每秒减1),从 60减为0;如此反复循环。

    提示:

    用8255A控制发光二极管点亮/熄灭。

    由8255A定时产生中断控制车辆放行,黄灯闪烁时间;1秒产生一次中断, 8254A计数通道的CLK输入可采用lOKHz的方波信号。

    终端采用PC机内部可屏蔽中断控制器(8259A)的IRQ7.

    8255A 的端口地址:A 口-210H, B 口-211H, C 口-212H,控制口-213H;

    8254A的端口地址:计数器0-230H,计数器1-231H,计数器2-232H,控制口 -233H;

    8259A的端口地址:20H和21H.

    硬件选用

    开关及LED显示单元

    共两组D7?DOLED灯由左至右根据高低电平1,0通断控制进行亮灭。通过 两组各6个LED灯的显示方式及亮灭时间来模拟交通信号灯。本次设计所使用 的LED点阵是使每行LED的阴极连接在一起,再经过驱动电路分别进行驱动。

     LED灯在不工作时处于低电平不工作状态。若要点亮其中的LED,则需行为高 电平1。设置每组D7、D4为红灯,D6、D3为黄灯,D5、D2为绿灯。灯亮时 的控制要求分别为88H、44H、22Ho 可编程并行接口 8255

    8255工作在方式0时,A 口和B 口的输出是可以独立的,而且都具有锁存能 力。其连接如“硬件电路接线图”部分。

    RD为读信号线,接系统总线的IOR信号,实现对8255的读操作。

    WR为写信号线,接系统总线的IOW端,实现对8255的写操作。

    CS为片选信号线,接系统总线的IOY1,当它为低电平(有效)时, 才选

    该8255芯片。位、A,为口地址选择信号线。本次设计使其分别与系统总线 的XA1、XA2相连,它们的不同编码可分别寻址3个口和一个控制寄存器,具体 规定如下:

    A】

    Ao

    选择

    0

    0

    A 口

    0

    1

    B 口

    1

    0

    C 口

    1

    1

    控制寄存 器

    PZ?PA,A 口的8条输入输出信号线,该口的这8条线是工作于输入、

    输出还是双向(输入、输出)方式,可由软件编程来决定。

    PB。 ?P%为B 口的8条输入输出信号线,利用软件编程可指定这8条线是 输入还是输出。

    PC。 ?PG8条线根据其工作方式可作为数据的输入或输出线,也可以用做控

    制信号的输出或状态信号的输入线。

    这里的8255接口所占地址范围为0640H?0646H。当对8255接口进行写操 作时,各信号线的状态如表所示:

    CS

    A1

    A0

    IOR

    IOW

    操作

    0

    0

    0

    1

    0

    写A 口

    0

    0

    1

    1

    0

    写B 口

    0

    1

    0

    1

    0

    写控制寄存器

    0

    1

    1

    1

    0

    写C 口

    8255在应用过程中,将不同的控制字装入芯片中控制寄存器,即可确定 8255的工作方式。8255的控制字由8位二进制数构成,各位的控制功能如下图:

    功能控制

    0:位操J

    1:方式选择

    图 2.2.1

    说明:当控制字bit7=l时,控制字的bit6?bit3这4位用来控制A组,即A 口 的8位和C 口的高4位,而控制字的低3位bit2?bitO用来控制B组,包括B 口的 8位和C 口的低4位。

    软件设计

    通过硬件电路的设计,已将各芯片连接成一个完整的电路,在此基础上, 即可进行程序的编写、改错与调试。

    LED灯的设置

    D7

    D6

    D5

    D4

    D3

    D2

    D1

    D0

    4

    红灯 黄灯 绿灯 空 红灯 黄灯 绿灯 空

    说明:初始时,所有LED灯处于低电平0。当红灯亮时,表示为“88H”; 当绿灯亮时,表示为“44H”;当绿灯亮时,表示为“22H”;不亮时,表示为“0H”。

    循环设计:首先设置一个循环次数CX,然后设计所要循环的程序内容当 PP指向这一 40字节内存的后7个字节时,从PP开始扫描已不足8个字节,剩下 几个字节应再从TABLE开始,等到PP指向最后一个字节时,如果再加1,也应使 PP重

    新指向TABLE首地址,这就使时间滚动起来,为实现这一功能,应在每次扫描显示 前,先判断PP的位置,根据PP的内容决定是否进行分步扫描或使PP回到TABLE 起始值。

    主要元器件介绍

    8255引脚功能:

    RESET:复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄 存器)均被清除,所有I/O 口均被置成输入方式。CS:片选信号线,当这个输入 引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯。RD:读信号线, 当这个输入引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信 息,即CPU从8255读取信息或数据。WR:写入信号,当这个输入引脚为低电平 时,允许CPU将数据或控制字写入8255。DO?D7:三态双向数据总线,8255与 CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/ 写操作,控制字和状态信息也通过数据总线传送。PAO?PA7:端口 A输入输出线, 一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。PBO?PB7:

    端口 B

    输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。PC0-PC7: 端口 C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输 入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口,每个4位的 端口包含一个4位的锁存器,分别与端口 A和端口 B配合使用,可作为控制信 号输出或状态信号输入端口。Al、A0:端口地址总线,8255中有端口 A、B、C和 一个内部控制字寄存器,共4个端口,由AO、A1输入地址信号来寻址。

    设计原理流程图

    六.实际硬件接线图

    源程序

    TOC \o "1-5" \h \z MY8255A EQU 0640H

    MY8255B EQU 0642H

    MY8255C EQU 0644H

    MY8255C0N EQU 0646H

    SSTACK SEGMENT STACK

    DW 32 DUP(?)

    SSTACK ENDS

    CODE SEGMENT

    ASSUME CS:CODE, SS:SSTACK

    START: MOV AL, 89H

    MOV DX, MY8255CON

    ;定义堆栈段

    ;定义代码段

    ;送控制字

    ;送控制字寄存器地址放DX寄存器

    TT1:

    TT2:

    TT3:

    OUT DX,AL

    ;输入8255控制字

    ;A、B口输出C口输入工作方式0

    MOV AL, 22H

    MOV DX, MY8255B

    OUT DX,AL

    ;东、西方亮绿交通灯

    MOV AL, 80H

    MOV DX, MY8255A

    OUT DX,AL

    ;南方亮红交通灯

    MOV BX, OFFH

    ;通过BX计数来控制调用delay的次数

    CALL DELAY

    DEC BX

    JNZ TT1

    ;调用延时程序

    MOV CX, 3

    ;东、西方向黄灯循环次数

    MOV AL, 44H

    MOV DX, MY8255B

    OUT DX,AL

    ;东、西方向黄灯亮

    MOV BX, OFH CALL DELAY DEC BX JNZ TT2

    ;调用延时程序

    WEGREEN:

    WEYELLOW:

    MOV AL, OOH

    MOV DX, MY8255B

    OUT DX,AL

    ;东、西方向黄灯灭

    MOV BX, OFH CALL DELAY DEC BX JNZ TT3

    ;调用延时程序

    LOOP WEYELLOW

    ;循环东、西黄灯亮灭过程

    MOV AL, 88H

    MOV DX, MY8255B

    OUT DX,AL

    ;东、西方亮红交通灯

    MOV AL, 20H

    MOV DX, MY8255A

    OUT DX,AL

    ;南方亮绿交通灯

    SGREEN:

    TT4:

    SYELLOW:

    TT5:

    MOV BX, OFFH

    CALL DELAY

    DEC BX

    JNZ TT4 ;调用延时程序

    TT6:

    MOV CX, 3

    MOV AL, 40H

    MOV DX, MY8255A

    OUT DX,AL

    MOV BX, OFH

    CALL delay

    DEC BX

    JNZ TT5

    MOV AL, OOH

    MOV DX, MY8255A

    OUT DX,AL

    MOV BX, OFH

    CALL DELAY

    DEC BX

    JNZ TT6

    LOOP SYELLOW

    IMP WEGREEN

    ;南方黄灯循环次数

    ;南方黄灯亮

    ;调用延时程序

    ;南方黄灯灭

    ;调用延时程序

    ;循环南、北黄灯亮灭过程

    ;整个交通灯过程循环

    DELAY:

    CHAXUN:

    WEI :

    PUSH CX

    MOV CX, OFOOH

    MOV DX, MY8255C

    IN AL,DX

    TEST AL, 01H

    JZ WEI

    MOV AL, 88H

    MOV DX, MY8255B

    OUT DX,AL

    MOV AL, 80H

    MOV DX, MY8255A

    OUT DX,AL

    JMP RIGHT

    TEST AL, 02H

    JZ S2

    MOV AL, 88H

    ;延时程序

    ;设置CX循环计数值

    ;从8255C 口读紧急情况模拟数据

    ;测试CX最低位是否为1

    ;CX最低位不为1,则正常

    ;CX最低位为1,发生紧急情况

    ;东、西方向强制红灯亮

    MOV DX, MY8255B

    OUT DX,AL

    JMP RIGHT

    S2: TEST AL, 04H

    JZ RIGHT

    MOV AL,80H

    MOV DX, MY8255A

    OUT DX, AL ;南方强制红灯亮

    RIGHT: PUSH AX

    POP AX

    LOOP CHAXUN ;正常情况下的延时循环

    POP CX

    RET

    CODE ENDS

    END START

    组内分工

    牟龚波:做的是硬件选用工作 杨靖:做的是软件设计工作 张凯彦:做的是实际硬件接线图工作 海小龙:做的是源代码工作

    课程设计总结

    通过本次课程设计实践,我们从中学到了熟 悉和掌握微机系统的软件,硬件设计方法,设计 步骤,提高综合应用所学知识及动手和分析问

    题,解决问题的能力,使我对微机原理更加的加 深了,对8259A中断控制器,8255A并行接口 的各种工作方式和应用;8255A计数器/定时器 的工作方式及应用编程有了很深的了解,掌握利 用软硬相结合的定时方法,对我今后有很大的帮 助。

    • 下载文档
    • 收藏
    • 0

    • 考试时间
    • 范文大全
    • 作文大全
    • 课程
    • 试题
    • 招聘
    • 文档大全

    推荐访问