当前位置首页 > 报告/分析 > 交通
搜柄,搜必应! 快速导航 | 使用教程  [会员中心]

硬件课程设计-交通灯指挥系统.

文档格式:DOC| 50 页|大小 1MB|积分 18|2022-03-21 发布|文档ID:64499635
第1页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 50
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • 硬件课程设计实验报告 计10-1班 阎蕾硬件课程设计实践报告题目:交诵灯指挥系统班级:学号:姓名:指导教师:许新征老师中国矿业大学计算机学院摘要:红绿交通灯是我们日常生活经常见到也是必不可少的, 随着城市社 会经济的发展,城市道路交通供给和需求的矛盾日益突出,并引发很多交 通问题当今,红绿灯安装在各个交通路口上,已经成为疏导交通车辆 最常见和最有效的手段绿灯是通行信号,面对绿灯的车辆可以直行、左转弯和右转弯面 对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停 车时可以进入交叉路口我们设计的交通灯就是依据上述思路控制十字 路口南北东西四个方向车辆通行的经过上学期的基础以及前一阶段的学习, 利用彩灯我们做出了一 个简单的交通灯指挥系统,通过控制彩灯的亮灭来达到红绿灯的效 果,从而控制交通之前我们学习了微机原理与接口技术这门课程, 课上我们学到了 一些计算机硬件工作的基本原理,以及一些简单的汇编语言程序设计 方法并了解了一些芯片的功能根据题目以及老师上课的要求,我用 微机原理与接口实验仪来进行交通灯指挥系统的设计实验中用到芯片8253、芯片8255、芯片8279、LED灯、数码管等,利用这些器件的工作原理以及通过组合可以模仿各种彩灯的正常 工作亮灭,特殊情况下的手动键盘开关以及恢复等一系列过程。

    在实现运行的过程中,通过汇编语言,利用上述几种芯片,进行编程设计, 最终顺利完成了实验,并进行了书本上的理论与实践完美结合, 获益 匪浅交通灯指挥系统1、需求分析与总体设计方案 51.1需求分析 51.2总体设计方案 52、 硬件说明 52.1硬件使用说明 62.2芯片简介 62.2.1 8253芯片简介 62.2.1.1 8253 功能介绍 62.2.1.2 8253 工作原理 82.2.1.3 8253 内部结构 82.2.1.4 8253的通道的工作方式 122.2.1.5读取计数器的当前值 132.2.1.6 8253的级联和地址分配 132.2.2 8255芯片简介 142.2.2.1 8255基本工作原理 142.2.2.2 8255 基本结构 162.2.2.3 8255引脚功能说明 162.2.2.4 8255的读写控制 172.2.3 8279芯片简介 172.2.3.1 8279 功能介绍 192.2.3.2 8279 内部结构 192.2.3.3 8279 管脚简介 192.2.3.4 8279 工作方式 202.2.3.5 8279命令功能表 213、 硬件连接说明与程序流程 23233.1硬件连接说明3.2硬件连接图 234、 程序代码 244.1 程序流程图 244.2程序代码及说明 255、 问题分析与解决方案 376、 程序测试与分析 376.1实验连线图 386.2程序测试结果 386.3结果分析 387、 心得体会 398、 参考文献 413硬件课程设计实验报告 计10-1班 阎蕾1、需求分析与总体设计方案1.1需求分析交通灯是我们日常生活经常见到也是必不可少的。

    随着城市社会经济的发展,城市道路交通供给和需求的矛盾日益突出,并引发很多交 通问题现今,交通指挥灯已成为疏导交通车辆最常见和最有效的手 段交通灯使得人们出行更加的方便、安全、有序因此,对交通指 挥灯的研究已变成一个十分重要的课题1.2总体设计方案十字路口的交通灯包括东西南北四个方向, 而通常情况下东西路口 的交通灯的亮灭情况是相同的,南北方向交通灯的亮灭情况是相同的, 所以将十字路口的交通灯简化为:东西方向的交通灯为同一组,南北方 向的交通灯为同一组交通指挥灯的设计不仅需要满足平常情况下指挥 交通的作用,还需满足紧急情况的手动闸正常情况下:状态一:南北红灯,东西绿灯状态二:南北红灯,东西黄灯状态三:南北绿灯,东西红灯状态四:南北黄灯,东西红灯状态五:重复以上四种状态紧急情况下(键盘控制):数字0:恢复数字1:南北红灯,东西绿灯数字2:南北绿灯,东西红灯数字4:东西南北全红数字5:东西南北全绿数字6:东西南北全黄2、硬件说明2.1. 硬件使用说明① 用实验箱中提供的二极管作为南北路口和东西路口的模拟交通灯;② 用可编程并行接口芯片8255控制模拟交通灯的亮与灭;③ 用可编程定时器/计数器芯片8253实现模拟交通灯亮与灭的时间延 迟的控制;④ 用可编程逻辑器件8279实现交通灯倒计时的显示。

    2.2. 芯片简介2.2.1 8253芯片简介2.2.1.1 8253 功能介绍intel8253是NMO工艺制成的可编程计数器/定时器,有几种芯片型号,外形引脚及功能都是兼容的,只是工作的最高计数速率有所差异,例如 8253(2.6MHz), 8253-5(5MHz) D7D6D5D4D3D2D1D0CLHO OUTOGATEDGND2423222120伯佗1718151413- 380 12123456780111VccWR-RDA1AOCLK2 OUT2 GATE2CLK1OUT1GATES图2-1 8253引脚图8253内部有三个计数器,分别称为计数器0、计数器1和计数器2, 他们的机构完全相同每个计数器的输入和输出都决定于设置在控制寄 存器中的控制字,互相之间工作完全独立每个计数器通过三个引脚和 外部联系,一个为时钟输入端 CLK 一个为门控信号输入端GATE另一 个为输出端OUT每个计数器内部有一个8位的控制寄存器,还有一个 16位的计数初值寄存器CR —个计数执行部件CE和一个输出锁存器OJ执行部件实际上是一个16位的减法计数器,它的起始值就是初值 寄存器的值,而初始值寄存器的值是通过程序设置的。

    输出锁存器的值 是通过程序设置的输出锁存器 OL用来锁存计数执行部件CE的内容, 从而使CPU可以对此进行读操作顺便提一下, CR CE和OL都是16 位寄存器,但是也可以作8位寄存器来用 2.2.1.2 8253 工作原理8253具有3个独立的计数通道,采用减1计数方式在门控信号有 效时,每输入1个计数脉冲,通道作1次计数操作当计数脉冲是已知 周期的时钟信号时,计数就成为定时2.2.1.3 8253 内部结构8253芯片有24条引脚,封装在双列直插式陶瓷管壳内数据总线缓冲器CLKoGATEoOUTqR/W 逻辑申Jffi内部总线 CLKiy计数器i——GATE,——OUTiCSCLK:控制计数器2GATE: OUT?图2-2 8253内部结构框图(1 )数据总线缓冲器数据总线缓冲器与系统总线连接,8位双向,与CPU交换信息的通 道这是8253与CPU之间的数据接口,它由8位双向三态缓冲存储器 构成,是CPU与 8253之间交换信息的必经之路2) 读/写控制表2.1 8253端口选择表 18253端口选择A1A0b.lJi I t矯J I00通道00通道110 1通道21 1控制L」读/写控制分别连接系统的IOR#和IOW# 由CPU空制着访问8253 的内部通道。

    接收CPU送入的读/写控制信号,并完成对芯片内部各功 能部件的控制功能,因此,它实际上是8253芯片内部的控制器A1A0 端口选择信号,由CPU输入8253内部有3个独立的通道,加上控制字 寄存器,构成8253芯片的4个端口,CPU可对3个通道进行读/写操作 3对控制字寄存器进行写操作 这4个端口地址由最低2位地址码A1和A0来选择如表所示3) 通道选择① CS片选信号,由CPU输入,低电平有效,通常由端口地址的高 位地址译码形成② RD WR读/写控制命令,由CPU输入,低电平有效RD效时,CPU卖取由A1、A0所选定的通道内计数器的内容 WF有效时,CPU将计 数值写入各个通道的计数器中, 或者是将方式控制字写入控制字寄存器中CPU寸8253的读/写操作4)计数通道0〜2每个计数通道内含1个16位的初值寄存器、减1计数器和1个16 位的(输出)锁存器8253内部包含3个功能完全相同的通道,每个通 道内部设有一个16位计数器,可进行二进制或十进制(BCD码)计数 采用二进制计数时, 写入的初值范围为OOOOH~OFFFFH最大计数值是0000H代表65536采用BCD码计数时,写入的初值范围为0000~9999, 最大计数值是0000,代表10000。

    与此计数器相对应,每个通道内设有 一个16位计数值锁存器必要时可用来锁存计数值特别说明:8253 计数器的值先减1再判断是否为0,为0就中断了,所以最大初始值为 0,这样减1以后,不为0,所以为最大的,取决于 CF标志位)当某通道用作计数器时,应将要求计数的次数预置到该通道的计数 器中、被计数的事件应以脉冲方式从 CLK端输入,每输入一个计数脉 冲,计数器内容减“ 1”,待计数值计到“ 0”OUT端将有输出表示 计数次数到当某个通道用作定时器时 由CLK输入一定频率的时钟脉冲根据要求定时的时间长短确定所需的计数值 并预置到计数器中,每输入一个时钟脉冲,计数器内容减“ 1”,待计数值计到“ 0”OUT 将有输出,表示定时时间到允许从 CLK输入的时钟频在1〜2MH范围 内因此,任一通道作计数器用或作定时器用,其内部操作完全相同, 区别仅在于前者是由计数脉冲进行减“ 1”计数而后者是内时钟脉冲 进行减“ 1”计数作计数器时, 要求计数的次数可直接作为计数器的 初值预置到减“1”计数器中作定时器时, 计数器的初值即定时系数应根据要求定时的时间进行如下运算才能得到:9硬件课程设计实验报告 计10-1班 阎蕾定时系数二需要定时的时间/时钟脉冲周期① 设置通道:向方式控制字寄存器端口写入方式选择控制字,用于 确定要设置的通道及工作方式;② 计数/定时:向通道写入计数值,启动计数操作;③ 读取当前的计数值:向指定通道读取当前计数器值时,8253将计 数器值存入锁存器,从锁存器向外提供当前的计数器值,计数器则继续 作计数操作。

    ④ 计数到:当计数器减1为0时,通过引脚OUT向外输出“到”的 脉冲信号计数初值输入存放在初值寄存器中, 计数开始或重装入时被复制到 计数器中锁存器在非锁存状态,其值随计数器的变化而变化;一旦锁存了计 数器的当前值,直到锁存器值被读取后才能解除锁存状态5)方式选择控制字setSCORL1R3M2MlMOBC&计数器选杆 谀写方式选择 工柞方式选样 计数方武读择0计数器o oo锁ooo方式o o二詁制01计数器】 01只读写低付字节 00[方式1 1 BCD码W计数器2 询只读写窈位字节 0】0方式21【先读存低枪字节 on方式3再读写高位宇节 100方式4101方式5图2-3 8253方式控制字8253的初始化编程就是对其工作方式的确定具体实现就是在8253上电后,由CPU向 8253的控制寄存器写入一个控制字,就可以规定8253 的工作方式、计数值的长度以及计数所用的数制等,另外根据要求将计 数值写入8253的相应通道8253的一个方式控制字只决定一个技术通道的工作模式2.2.1.4 8253 的通道工作方式8253中各通道可有6种可供选择的工作方式,以完成定时、计数或 脉冲发生器等多种功能。

    在这次设计中我们只用到了方式 2和方式3, 8253的这两种工作方式如下:(1)方式2:速率波发生器工作方式2被称作速率波发生器进入这种工作方式,OUT输出高 电平,装入计数值n后如果GATE为高电平,则立即开始计数,OUT呆持 为高电平不变; 待计数值减到“ 1”和“0”之间,OUT将输出宽度为 一个CLK周期的负脉冲,计数值为“ 0”时,自动重新装入计数初值n, 实现循环计数,OUT将输出一定频率的负脉冲序列, 其脉冲宽度固定为 一个CLK周期,重复周期为CLK周期的n倍如果在减“ 1”计数过程中,GATE变为无效(输入0电平),贝憎停 减“1”计数,待GATE恢复有效后,从初值n开始重新计数这样会改 变输出脉冲的速率如果在操作过程中要求改变输出脉冲的速率, CPU可在任何时候,重新写人新的计数值, 它不会影响正在进行的减“ 1”计数过程,而是 从下一个计数操作用期开始按新的计数值改变输出脉冲的速率2)方式3:方波发生器工作方式3被称作方波发生器任一通道工作在方式3,只在计数13硬件课程设计实验报告 计10-1班 阎蕾值n为偶数,则可输出重复周期为n、占空比为1: 1的方波进入工作方式3, OUT输出低电平, 装入计数值后,OUT立即跳变 为高电平。

    如果当GATE为高电平,则立即开始减“ 1”计数,OUT呆持 为高电平,若n为偶数,则当计数值减到n/2时,OUT跳变为低电平, 一直保持到计数值为“ 0”,系统才自动重新置入计数值n,实现循环计 数这时OUT端输出的周期为nXCLK周期,占空比为1:1的方波序列; 若n为奇数,则OUT端输出周期为nx CLK周期,占空比为 ((n+1)/2)/(( n-1)/2) 的近似方波序列如果在操作过程中,GATE变为无效,则暂停减“ 1”计数过程,直 到GATE再次有效,重新从初值n开始减“ I ”计数如果要求改变输出方波的速率, 则CPU可在任何时候重新装入新的计数初值n,并从下一个计数操作周期开始改变输出方波的速率2. 2.1.5 读取计数器的当前值⑴直接读计数器:输出锁存器在非锁存状态会跟随计数器计数的变 化而变化,直接读计数器是从锁存器得到计数器的当前值但由于计数 器处于工作状态,读出值不一定能稳定⑵先锁存再读取:① 通过方式选择控制字对指定通道(SC1、SC0)的计数值锁入锁存器 (RL1RL0=00),锁存器一旦锁存了当前计数值,就不再随计数器变化直 到被读取② 读计数器通道(有锁存器)。

    2. 2.1.6 8253的级联和地址分配 8353采用级联方式此实验中使用 8253的0通道和1通道以实现级联通道0的工作在实验中起到的作用是在 OUTO端输出一个比较合适4 5 6的时钟频率,然后用通道1进行时间的控制通道1在控制灯闪烁的时候采用的工作方式是方式3,这样可以让8255的A端口检测到输出端的 方波信号2.2.2. 8255 芯片简介2.2.2.1 8255 的基本工作原理8255是Intel公司生产的可编程输入输出接口芯片,它是具有 3个8位的并行I/O端口,具有三种工作方式,被广泛地使用于单片机的 并行I/O端口• 工作方式0:基本输入输出方式• 工作方式1:选通输入输出方式工作方式2:双向传送方式PA3PA2PA1PA0RDCSGNDA0A1PA7PA6PA5PA4PA0PA1PA2PA3PB0PB1PB2140239338437536635734833982553210311130122913281427152616251724182319222021PA5PA6PA7PA0WRRESETD0D1D2D3D4D5D6D7VccPA7PA6P B5P B4P B315硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾图2-4 8255 引脚图#硬件课程设计实验报告 计10-1班 阎蕾17硬件课程设计实验报告 计10-1班 阎蕾D7 D6 D5 D4 D3 D2 D1 D0#硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾图2-5 8255工作方式控制字#硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾D7 D6 D5 D4 D3 D2 D1 D0#硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾图2-6 8255 C 口按位置位控制字#硬件课程设计实验报告 计10-1班 阎蕾222.2 8255的内部结构I <0PA. PA读写 控制 宙辑CS数总煖器RP丽-FSf=T岛蛀1 £ 控制 部件8位内杀线B组 控制A 口 伯位)B 口 ⑴位)1/0/ P&> PB^c 口 (离4竝}#硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾图2-7 8255内部结构222.3 8255 引脚功能说明RESET复位输入线,当该输入端外于高电平时,所有内部寄存器(包 括控制寄存器)均被清除,所有I/O 口均被置成输入方式。

    PA(HPA7:端口 A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器PB(HPB7:端口 B输入输出线,一个8位的I/O锁存器,一个8位 的输入输出缓冲器PC0-PC7:端口 C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器端口 C可以通过工作方式设定而分成2个 4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口 A 和端口 B配合使用,可作为控制信号输出或状态信号输入端口CS :片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯RD:读信号线,当这个输入引脚为低电平时,允许 8255通过数据总 线向CPU发送数据或状态信息,即CPU从 8255读取信息或数据WR写入信号,当这个输入引脚为低电平时,允许 CPU将数据或控制字写8255DO〜D7:三态双向数据总线,8255与CPL数据传送的通道,当CPU执 行输入输出指令时,通过它实现 8位数据的读/写操作,控制字和状态 信息也通过数据总线传送222.4 8255 的读写控制8255的读/写控制逻辑电路接受 CPU发来的控制口号RD WRRESET 和地址信号A1~AO然后根据命令端口,控制信号的要求,将端口的数 据读出选信CPU或者将CPU送来的数据写入端口,各端口的工作状态。

    如表所示通过用输出指令对8255A的控制字寄存器编程,写入设定工作方式 的控制字,可以让3个数据口以不同的方式工作,端口 A可工作于3种 方式的任一种,端口 B只能工作于方式0和方式1,端口 C除了用于输 入输出端口外,还能配合A 口和B 口工作,为这两个端口的输入输出操 作提供联系信号223 8279 芯片简介223.1 8279 功能介绍8279是可编程的键盘、显示接口芯片它既具有按键处理功能,又具有自动显示功能,在单片机系统中应用很广泛 8279内部有键 盘FIFO (先进先出堆栈)/传感器, 双重功能的8*8=64B RAM, 键盘控制部分可控制8*8=64个按键或8*8阵列方式的传感器该芯片能自动消抖并具有双键锁定保护功能显示 RAM容量为16*8,最大配置可达16位LED数码显示R12RL3 CLK IRQ RL4 RL5 RL6 RL7 RESETWR DODID2 D3 D4 D5 D6 D7GND I1234567g9101112131415161713192082 79093765432109876433333333332222— I P — — . —! .VCCRL1RL-0 CNTL/STE SHIFTSL3SL2SL1SLOOUT BO OUT Bl OUTB2OUTB3 OUT AO OUT AlOUTA2OUTA3EDCSAO19硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾图2-8 8279芯片管脚图21硬件课程设计实验报告 计10-1班 阎蕾223.2 8279 内部结构CLK RESETIRQ??S§5~n~OCTAO-O™ OUTBO-OUTB?LVogNRD WR CS AOHF。

    阪 RAMM體 n™—--s*THRL0-RL7 SHIFTctmjCT.#硬件课程设计实验报告 计10-1班 阎蕾#硬件课程设计实验报告 计10-1班 阎蕾图2-9 8279内部结构图2.2.3.3 8279 管脚简介(1) 数据线DBX DB7是双向三态数据总线,在接口电路中与系统数据总线 相连,用以传送CPU和8279之间的数据和命令2) 地址线CS=0选中8279,当A0=1时,为命令字及状态字地址;当A0=0时,为片内数据地址,故8279芯片占用2个端口地址(3) 控制线CLK 8279的时钟输入线IRQ:中断请求输出线,高电平有效/RD、/WR读、写输入控制线SL0---SL3 :扫描输出线,用来作为扫描键盘和显示的代码输出或直接输出线RL0---RL7 :回复输入线,它们是键盘或传感器矩阵的信号输入线SHIFT:来自外部键盘或传感器矩阵的输入信号,它是 8279键盘数据的次高位即D6位的状态,该位状态控制键盘上/下档功能 在传感器方式和选通方式中,该引脚无用CNTL/S:控制/选通输入线,高电平有效键盘方式时,键盘数 据最高位(D7)的信号输入到该引脚,以扩充键功能;选通方式时, 当该引脚信号上升沿到时,把 RL0---RL7的数据存入FIFO RAM中。

    OUTA0---OUTA3通常作为显示信号的高4位输出线OUTB0---OUTB3通常作为显示信号的低4位输出线/BD :显示熄灭输出线,低电平有效当/BD=0时将显示全熄灭223.4 8279 的工作方式8279有三种工作方式:键盘方式、显示方式和传感器方式1)键盘工作方式8279在键盘工作方式时,可设置为双键互锁方式和 N键循回方式双键互锁方式:若有两个或多个键同时按下时,不管按键先后顺序如何,只能识别最后一个被释放的键,并把该键值送入 FIFO RAM中N键循回方式:一次按下任意个键均可被识别, 按键值按扫描次序被送入FIFO RAM中2) 显示方式8279的显示方式又可分为左端入口和右端入口方式 显示数据 只要写入显示RAM则可由显示器显示出来,因此显示数据写入显示 RAM勺顺序,决定了显示的次序左端入口方式即显示位置从显示器最左端 1位(最高位)开始,以后显示的字符逐个向右顺序排列;右端入口方式即显示位置从显示 器最右端1位(最低位)开始,已显示的字符逐个向左移位但无 论左右入口,后输入的总是显示在最右边3) 传感器方式传感器方式是把传感器的开关状态送入传感器 RAM中当CPU对传感器阵列扫描时,一旦发现传感器状态发生变化就发出中断请 求(IRQ置1),中断响应后转入中断处理程序。

    223.5 8279 命令功能表 表2.2 8279命令功能表附= 8279 1»r令功能一见我D7 D6 D5D4D3D2|D1DO命令炎矍命 令内 容0 0 0 犍盘f显示00000左端入口8字?孑並示爱薩颌定内編码扫描01y毬轮冋11101右端入口16字符昼示楼!8褂矩阵内译码扫描11il通输M HS显示0 0 1时料湘悝XXX仔氏系数尿但血;2-310 10 H FIFO, ft S 揺RAMXXXXX1-地址自in 1 o-地址不变(不用)定8279中FIFO艮传总舉RAM的首堆址 <000-111B共8个单币)Oil 读耳示器 RAJI内容XXX1XXl地址自tni 0-地址不些it显示SRAM内容 <0000-1111B Jt 16 f 甲 T>LOO 写星示RAMXXXX1-地址自ttl 1 0-地址不变写显示器RAM(0000-1111B罠16个甲元》L 0 1显示禁±/Jfi 灭X1111(不用〉禁止写A组昼 示RAM坯止廿B组 “示 RAJIA組熄灭B沮熄灭LIO 濟除显示RAM 和 FIFO10X11允许清除显示RAM全雷清为cFIFO成空状 瓠屮断输 出线殳位*读岀地址K0全朗清除10显示RAM S为 (Atfi—OO1O0, B =OOOOB」11呂示RAM8 対 FFH0XXX1按龙.D3决定的方式清除0XXX0不消除L 1 1帖电屮断出 错方式设置1 XXXXA 在件感器方式.用此金令給東餐感絡RAJ1的中断请求.B.在謎盘扌1描'建轮冋占式.用此命令设直持宦错课方式,一25硬件课程设计实验报告 计10-1班 阎蕾3、硬件连接说明与程序流程3.1硬件连接说明8253通道0的地址端口为208H通道1的地址端口为209H,通道 2的地址端口为20AH 8253的控制端口的地址为20BH通道0和通道1 级联,用来得到实验所需的频率, 0UT1与8255的PA0口连接。

    8255 A 口地址为200H,B 口地址为201H,控制口地址为203H,8255的PA0 口接入8253的脉冲,B 口用于输出,连接彩灯8279芯片的地址为210H,用于显示彩灯的倒计时3.2硬件连接图I IHL图3-1硬件连接图8827硬件课程设计实验报告 计10-1班 阎蕾4、程序代码4.1程序流程图1 — I见示塞计时+楚理显示01计时*彳r ~ -[十;*:二工= ]見示例计时,I闊:1匕胃灯・京西红Jt「且示吓(计时・4.2程序代码与说明Z8279 EQU 212HD8279 EQU 210HCODE SEGMENTASSUME CS:CODE DS:DATADATA SEGMENTA DB 1 DUP⑺B DB 1 DUP(?)C DB 1 DUP(?)COUNT1 DB 0COUNT2 DB0DATA ENDSSTART:MOV DX,20BHMOV AL,00110111BOUT DX,ALMOV DX,208HMOV AL,00HOUT DX,ALMOV AL,50H OUT DX,ALMOV DX,20BHMOV AL,01110111BOUT DX,ALMOV DX,209HMOV AL,00HOUT DX,ALMOV AL,02HOUT DX,AL ;8253 初始化MOV DX,203HMOV AL,10010000BOUT DX,AL ;8255 初始化L0:MOV A,19HMOV B,14HMOV C,05HL1: MOV DX,201HMOV AL,01111011B ;南北红,东西绿OUT DX,ALMOV CL,ACALL SHOWCALL yan shiCALL shoud ongDEC ACMP A,05HJNZ L1PP: MOV DX,201HMOV AL,01110111B ;南北红,东西黄OUT DX,ALMOV CL,ACALL SHOWCALL yan shiCALL shoud ong DEC ACMP A,00HJNZ PPL4:MOV DX,201HMOV AL,11001111B ;南北绿,东西红OUT DX,ALMOV CL,BCALL SHOWCALL yan shiCALL shoud ongDEC BCMP B,00HJNZ L4L5:MOV DX,201HMOV AL,10101111B ;南北黄,东西红OUT DX,AL35硬件课程设计实验报告 计10-1班 阎蕾MOV CL,CCALL SHOWCALL yan shiCALL shoud ongDEC CCMP C,00HJNZ L5JMP L0yan shi PROCMOV COUNT1,0FFHMOV COUNT2,0FFHSECD:DEC COUNT2JNZ SECDDEC COUNT1JNZ SECDRET yan shi ENDP#硬件课程设计实验报告 计10-1班 阎蕾SHOW PROC NEARMOV DX,Z8279MOV AL,00HOUT DX,ALMOV AL,38HOUT DX,AL;初始化 8279MOV DX,D8279MOV AL,00HOUT DX,ALOUT DX,ALOUT DX,ALOUT DX,ALOUT DX,ALOUT DX,ALOUT DX,ALOUT DX,AL;熄灭 8279MOV AL,CLMOV DL,1037硬件课程设计实验报告 计10-1班 阎蕾DIV DL ;AL/DL二AL...BHMOV BL,AH ;将余数(即秒的个位)放在BL中MOV BH,AL ;将商(即秒的十位)放在BH中CALL TRANS;调用8279显示秒的个位MOV BL,BHCALL TRANS;调用8279显示秒的十位RETSHOW ENDPTRANS PROC NEAR ;数码管显示程序ONE:CMP BL,1JNZ TWOMOV AL,00000110BTWO:CMP BL,2JNZ TRIMOV AL,01011011BTRI:CMP BL,3JNZ FOR39硬件课程设计实验报告 计10-1班 阎蕾MOV AL,01001111BFOR:CMP BL,4JNZ FIVMOV AL,01100110BFIV:CMP BL,5JNZ SIXMOV AL,01101101BSIX:CMP BL,6JNZ SEVMOV AL,01111101BSEV:CMP BL,7JNZ EITMOV AL,00000111BEIT:CMP BL,8JNZ NINNIN: CMP BL,9JNZ ZROMOV AL,01101111BZRO:CMP BL,0JNZ SHWMOV AL,00111111BSHW:MOV DXQ8279OUT DX,ALRET;手动开关TRANS ENDPshoudo ng PROC NEARMOV DX,Z8279IN AL,DXAND AL,0FHCMP AL,00HJE JIESHUMOV AL,40HOUT DX,ALMOV DX,D827941硬件课程设计实验报告 计10-1班 阎蕾IN AL,DXNHDL:CMP AL,02DJNZ NLDHMOV DX,201H;8255BMOV AL,01111011B ;南北红东西绿OUT DX,ALCALL HUIFUNLDH:CMP AL,10DJNZ HHMOV DX,201H;8255BMOV AL,11001111B ;南北绿东西红OUT DX,ALCALL HUIFUHH:CMP AL,01DJNZ LLMOV AL,01101111B ;红红OUT DX,ALCALL HUIFULL:CMP AL,09DJNZ YYMOV DX,201H;8255BMOV AL,11011011B ;绿绿OUT DX,ALCALL HUIFUYY:CMP AL,33DJNZ JIESHUMOV DX,201H;8255BMOV AL,10110111B ;黄黄OUT DX,ALCALL HUIFUJIESHU:RET43硬件课程设计实验报告 计10-1班 阎蕾shoudo ng ENDPHUIFU PROC NEARWAITS:MOV DX,Z8279IN AL,DXAND AL,0FHCMP AL,00HJE WAITSMOV AL,40HOUT DX,ALMOV DX,D8279IN AL,DXCMP AL,03DJNZ WAITSRETHUIFU ENDPCODE ENDSEND START5、 问题分析与解决方案在实验过程中遇到过一些问题,也通过查资料或者问老师、同学得 到了解决。

    在此列举:(1) 在数码管显示数字时,数字跳转的周期太短,不到一秒;解决办法:重新设计了延时小程序,MOV COUNT1,OFFHMOV COUNT2,0FFHSECDDEC COUNT2JNZ SECDDEC COUNT1JNZ SECDRET(2) 在设置红黄绿灯的时间时,遇到了麻烦,由于原程序设置的时间太 短,所以需要延长各个灯的时间;解决办法:先通过查阅书籍等,仔细地看了整个程序,并画了程序流程 图,认真地了解了整个代码,然后根据对程序的了解将彩灯的时间改成 了自己满意的时长6、 程序测试与分析6.1实验连线图图6-1实验连线图6.2程序测试结果拿到实验箱,我首先对所要用的芯片做简单的检查,将试验箱连接 电脑,发现没有问题,便继续做实验然后将试验箱按照上述的硬件连接要求将其连接,并调试程序设计按照题目的要求顺利地完成了以下各种功能1) 运行程序,小灯泡按照之前设定的规则依次亮灭,并且数码 管显示亮灯的倒计时2) 特殊情况下的键盘控制,也按照之前设定的发挥各自的功能 6.3结果分析实验表明我的硬件连接以及程序都没有出问题,实验结果很好7、心得体会在设计交通指挥灯系统的过程中,我认真查阅资料,学习关于这方 面的知识,比如8279芯片的使用,如何使之显示所需的倒计时以及交通 有哪些规则等.在理论学习的基础上,又下了一次苦工夫,算是明白了设 计一个系统的过程;也让我体会到要想成功地设计某个东西,光学好专 业知识是不够的,必须要系统的知识,无论在哪方面都要有个明白的概 念,只有这样才不至于在设计过程中摸不着头脑,知道去哪些是需要查 的资料,还有一点,我觉得我的汇编语言学得不够好,以至于我只能借助 参考资料,查每一条指令的作用与功能,才能掌握整个程序,这样一来又 巩固了我的对汇编语言的了解.整个过程用到了三个芯片,电路连接并不复杂,只不过在设计时我 们花费了很大的功夫。

    并且8253、8255芯片我们上学期在微型计算机 原理与接口技术一门课中学过,但是还是不太熟悉,又翻阅了之前学习 的课本,才又拾回来一些如此,我体会到学习理论知识固然重要,但在 你学完了之后,你不在实践中运用你所学的知识,我想学是白学了,过一 段时间后,你可能什么都记不起来了,或许在学的时候心里有一个概念, 认为这个知识我曾经学得不错,我现在怎么想不起来了,一心想依赖课 本;如果我们用实践来学习知识,你会努力地去搜索你想要需要的东西, 即使是过了一段时间后,你也会记得你曾经对这点不明白认真地查阅过 所以你不容易忘记!而且在用8279完成数码管显示时,由于我们对 8279不太熟悉,我 们花了一段时间来研究芯片,但经过努力,最终成功地编程实现了这门硬件课程设计,让我们获益匪浅这个过程中我们学到了很多的东 西,而且最后的结果也让我们比较满意的刚开始接触题目时,觉得没 有思路,感觉很难,尽管老师已经帮我们把题目分析得比较细了,在翻 阅书籍以及借助网络资源,我们渐渐有了很大的进展而且我们通过画 流程图逐步解决问题,对汇编语言又有了深刻的认识,对一些指令的使 用也更加熟悉了而且以前上课学的一些知识只是学会了,并不知道如 何去用,或者应该应用在哪里,但通过这次课程设计,让我们可以将课 本上机械的理论知识转化为灵活的实践中去,让记忆更加深刻,让设计 变得简单易懂,锻炼了自己的动手能力,巩固了理论知识,激发了学习 的兴趣。

    通过这次课程设计丰富了我的理论知识,也丰富了自己的学习阅 历,让自己对计算机专业有了更深的认识和理解,也坚定了自己将来在 这一行业继续努力的决心同时遇到不懂的问题要主动思考,但也要和 其他同学进行讨论,而且还要认真向老师讨教在我的整个的课程设计 中,期间我遇到过一些问题经过老师的开导我们逐步攻克难关,将实验 顺利进行下去感谢老师的指导总之,这次实验我收获很大但也认 识到了自己的知识储备量有限,自己能力还有待于进一步的提高前方 困难重重,需要再接再厉,需要不停攀登,需要加倍努力参考文献[1] 周荷琴 吴秀清,微型计算机原理与接口技术(第四版),合肥,中国科学技术大学出版社,2008;[2] 张瑜,计算机硬件类课程难点辅导,北京,北京航天航空大学出版社,2006;[3] 邹逢兴,陈立刚,计算机硬件技术基础(第2版),北京,高等教育出版社,2009;[4] 彭介华,电子技术课程设计指导,北京,高等教育出版社,1997;[5] 孙德文,微型计算机技术[M],北京,清华大学出版社,1993;49。

    点击阅读更多内容
    卖家[上传人]:小辰1
    资质:实名认证