文档详情

汇编课程设计17804.doc

发布:2017-08-28约8.47千字共15页下载文档
文本预览下载声明
湖南农业大学课程设计报告 学 院:信息科学技术学院 班 级:2007级信工2班 姓 名:李新花 学 号:200741843221 课程设计题目:模拟交通灯 课程名称:汇编语言与微机原理 辅导老师:解志坚 评阅成绩: 评阅意见: 成绩评定教师签名: 日期: 年 月 日 目 录 模拟交通灯 概述 此模拟交通灯,是在TND-MD教学系统上实现的。所使用的芯片主要有8253定时计数器、8255A并行接口电路芯片、8259A中断控制器等。通过红绿SW-LED显示不同的二极管亮灭组合来表示模拟交通灯的运行情况,并通过液晶显示屏显示倒计时,其计时精确度为1s。 一、设计内容与要求 如右图,在十字交叉路口设置交通灯和倒计时牌,东边与西边显示完全一样,南边与北边的显示完全一样,只需设计东边和南边。 考虑东往西,南往北两个直行方向和左拐情况;直行、左拐和禁止时间比例为0.8∶0.2∶1; 要求以8253产生秒(或更长间隔)信号,送8259(IRQ7)中断及计数,南口和北口设置各设置直行和左拐两组红绿灯(利用红绿LED显示)和倒计时牌显示(利用4个数码管或液晶显示屏分两组显示); 注意东口和南口之间禁止通行时间等于左拐与直行通行时间之和。 二、设计思想 本程序是在TDN—MD教学系统上实现的,要使用汇编语言进行编写,整体设计思路是:由于要实现前叙的实验要求,本程序要达到以下基本功能: 秒信号的产生: 现实生活中的交通灯都是有倒计时的,因此本设计需要一个秒信号,而在TDN—MD上8253定时计数器可以实现这个功能,由于8253的out输出频率为1.19MHZ,若使其计数初值为1190000,刚好每秒产生一个脉冲。而8253的每个计数器都是16位的,无法存入这个值,两个计数器级联就可以实现:让0通道的OUT0连接8259的IRQ0,再有OUT0连2通道的CLK2,使OUT2的输出秒信号,out2连接8259的irq7,gate2接正5v电压。其中计数器0的计数初值设计为1190,而计数器2的计数初值为1000,则OUT2每秒输出一个脉冲方波信号。 倒计时的显示: 利用TDN—MD系统的液晶显示屏,来显示倒计时。由于考虑到东,南两个方向的通行显示,所以我们设计了两个倒计时,一个用来显示东边方向的倒计时的情况,另一个用来显示南边方向倒计时的情况。为了模拟的方便,设计了直行时间为24秒,左拐时间为6秒,禁行时间为30秒。通过8253的IRQ7产生一次中断,调用中断服务程序显示倒计时,每秒减一。东边通行时:时间从24减到0,然后是6秒的左拐时间。南边的情况一样。东,南两个方向的时间都分别显示在液晶显示屏上 红绿灯的显示与改变: 在TDN—MD系统上有LED红绿发光二极管,上面有4个红灯和4个绿灯,且有8个对应的引脚,我们可以利用8255的B端口写数据就可以控制8个灯的亮灭。在本次课程设计中,为了模拟各种情况,我们把8个灯分成两组:东组有:1,2,5,6四盏灯;南组有:3,4,7,8四盏灯。其中东直行时各盏灯的亮灭情况‘0’为亮,‘1’为灭);东左拐时是南直行时南左拐时是 通过8253来定时驱动各种情况的切换 三、设计所用芯片及工作原理 本课程设计所用的芯片主要有8253定时计数器,8255A并行接口电路芯片,8259A中断控制器等,它们的工作原理分别如下: (一)8253定时计数器 8253可编程定时计数器是intel公司生产的的通用外围芯片之一。它有三个独立的十六位计数器,计数频率范围为0—2MHZ,它所有的计数方式和操作方式都可以通过编程控制。 1.8253的功能是: (1)延时终端;(2)可编程频率发生器;(3)事件发生器;(4)倍率器; (5)实时时钟;(6)数字单稳;(7)复杂的电机控制器 2.计数器0,计数器1,计数器2; 这3个计数器相互独立,各自可按不同的方式工作。计数器的内部结构如前所述,每个计数器包含一个16位的初始寄存器,一个计数执行部件哥一个锁存器。计数执行部件从初始值寄存器中获得计数初值,便进行减1计数,此时,锁存器跟随计数执行部件的内容而变化,当有一个锁存器命令来到时,锁存器便锁定当前计数,直到被读走以后,又跟随计数执行部件的动作。 各计数器的外部输入输出信号: 计数器0:CLK0—计数器0的时钟输入。 GATE0—计数器0的门脉冲控制输入。 OUT0—计数器0的输出。 2.计数器1:CLK1—计数器1的时钟输入。 GATE1—计数器1的门脉冲控制输入。 OUT1—计数器1的输出。 计数器2:CLK2—计数器2的时钟输入。 GATE2—计数器2的门脉
显示全部
相似文档