微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc

上传人:爱问知识人 文档编号:5022421 上传时间:2020-01-29 格式:DOC 页数:19 大小:2.38MB
返回 下载 相关 举报
微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc_第1页
第1页 / 共19页
微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc_第2页
第2页 / 共19页
微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc_第3页
第3页 / 共19页
微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc_第4页
第4页 / 共19页
微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计总结报告-基于8086的交通信号控制器的设计.doc(19页珍藏版)》请在三一文库上搜索。

1、 H He ef fe ei i U Un ni iv ve er rs si it ty y 微机原理与接口技术课程设计总结报告微机原理与接口技术课程设计总结报告 课课 题:题:基于基于 8086 的交通信号控制器的设计的交通信号控制器的设计 报报 告告 人:人: 班班 级:级:0707 级自动化(级自动化(2 2)班)班 指导老师:指导老师: 2010 年年 1 月月 2 日日 目录 一、引言一、引言 .2 1.1 设计目的.2 1.2 设计思想.2 二、硬件设计二、硬件设计 .3 2.1 选择芯片 8255A.3 2.2 选择芯片七段 LED 显示器.5 2.3 硬件总逻辑图及其说明.6

2、 三、控制程序设计三、控制程序设计 .7 3.1 控制程序设计思路说明:.7 3.2 程序流程图.8 3.3 控制程序.11 四、上机调试过程四、上机调试过程 .16 4.1 硬件调试.16 4.2 软件调试.16 4.3 联机调试.16 4.4 调试结果.16 五、设计结果分析及问题讨论五、设计结果分析及问题讨论 .17 5.1 课程设计结果及分析.17 5.3 收获,体会和建议.17 六、参考文献六、参考文献 .18 七、致谢七、致谢 .18 基于 8086 的交通信号控制器的设计 1 基于基于 8086 的交通信号控制器的设计报告的交通信号控制器的设计报告 摘要摘要: 这次课程设计,我们

3、的任务是:基于 8086 的交通信号控制器的设计。8086 系统是我们这个学期学习的主线方向,我们将在 8086 系统的基础上完成交通信 号控制器的设计,其具体功能是:1.显示十字路口东西、南北 2 个方向的红、 黄、绿的指示状态。2.实现正常的倒计时功能。用 2 组数码管作为东西和南北 方向的倒计时显示,显示时间为红灯 30s,绿灯 50s,黄灯 5s。3.按 S1 键能实 现特殊的功能,显示倒计时的 2 组数码管闪烁,计数器停止计数并保持在原来 的状态;东西、南北路口均显示红灯状态;特殊状态解除后能继续计数。4.按 S2 键实现总体清零功能。计数器由初始状态计数,对应的指示灯亮。 关键词:

4、关键词:8086 系统 交通灯 基于 8086 的交通信号控制器的设计 2 正文正文 一、引言一、引言 1.1 设计目的设计目的 交通信号控制灯是日常交通不可缺少的工具,涉及到人们的人生和财产安 全,在道路行驶上起了相当关键的作用,因而设计交通信号控制灯是非常有意 义的。同时我们这次设计的课题就是“基于 8086 交通信号控制器的设计” ,基 于以上目的,我们小组花费两周时间精心设计出课题要求的交通灯。 1.2 设计思想设计思想 在此次设计过程中,我们选择了数码管、发光二极管、8255A 和 8086 来控 制实现交通灯按设计要求工作。 1)硬件部分)硬件部分 1、LED 设计说明设计说明:

5、用 LED 作为倒计时时间的显示器, LED 在亮度、功耗、可视角度和刷新 速率等方面,都更具优势。LED 与 LCD 的功耗比大约为 10:1,利用 LED 技术, 可以制造出比 LCD 更薄、更亮、更清晰的显示器,LED 是发光二极管属于二 极管的一种,LCD 是液晶显示器,两者相差太多.但是用 LED 的点阵也能组成显示 器,适用于户外大屏幕显示,分辨率较低,LED 与 LCD 具体比较如下图 表 1-1:LCD 与 LED 的比较 LCDLCD 液晶显示器,通过液晶和彩色过滤器过滤光源,在平面面板上产生图象, 具有零辐射,低耗能,散热小,纤薄轻巧,精确还原图象,显示字符锐 利,屏幕调节

6、方便,可视角度小,响应时间过慢,亮度可对比度低等特 点 LED 发光二极管,是由发光二极管排列组成的显示器件,它采用低电压扫描 技术,具有耗电少,使用寿命长,成本低,亮度高,故障少,视角大, 视角大,可视距离远的特点 通过分析和对比,LED 显示器要较优于 LCD 显示器,因此本实验选择 LED 2、8255 设计说明设计说明: 用 8255A 可编程并行接口芯片的 A、B、C 三口作为红、绿、黄交通灯的 控制输入口。8255 有三个并行输入输出口,可以方便的对三种颜色的交通灯进 行很好的控制。解决方案是:PB0PB7 接模拟灯二极管,PA0PA7 接 7 段二极 管的段选,PC0PC3 接

7、7 段二极管的位选,PC4PC7 与开关相连,处理器芯片 集成芯片卡 PCI 卡连接,用于完成硬件方面的实验正常通信。其芯片比较说明: 如下表: 基于 8086 的交通信号控制器的设计 3 表 1-2:8255A 与 8251 芯片的比较 比较内容8255A 芯片8251A 芯片 通信方式并行串行 数据传送方式数据的各位同时传送,数据一位一位地顺序传送, , 内部组成8155 内有 256 字节 RAM 和一 个定时计数器。 8255 没有 特点通信线路较 8251 复杂通信线路简单,利用电话或 电报线路就可实现通信 输入/输出编程较为灵活编程较 8255 不够灵活 应用范围使用十分方便,传输

8、距离近, 成本较高 传输距离远,使用不方便, 但传输速度慢,降低成本 , 初始化特点8255A 直接位清 0/置 1 功能 简化了接口控制 8251 在初始化时,必须重新 设置模式寄存器的格式. 2) 、软件部分、软件部分 根据硬件需求采用 8255A 芯片,为实现对通信的控制,采用汇编语言,分 别编程控制 8255 的工作方式,在编程时应考虑到状态的转换采用查询方式控制, 根据需求分析可采用 8255 的方式 0 下工作具体如下设置: 硬件连接说明:8255A 芯片的 PA、PB、PC 三口的工作方式为方式 0,将 8255 的 PB0PB7 接红绿灯用以模拟交通灯的变化,PA0PA7 接

9、7 段 LED 灯的 段选码, ,完成 LED 显示器的段选,PC0PC3 接 LED 显示器的位选码用以完 成位选,PC4-PC7 接开关,以完成初值接收。初始化 8255 后。利用汇编语言编 写访问控制程序,控制绿灯的显示倒记时间,它与红灯的显示时间是相同的, 编写控制程序控制黄灯的闪烁时间,当绿灯的显示时间结束后切换到黄灯,再 切换到红灯,如此循环下去。 二、硬件设计二、硬件设计 2.1 选择芯片选择芯片 8255A 1) 、8255A 在本实验中的作用:在本实验中的作用: 通过 8255A 的三个 I/O 端口 A 口、B 口、C 口与红、绿、黄二极管连接起 来控制交通灯的规律性变化。

10、 2) 、8255的功能分析:的功能分析: PA、PB、PC 三口均工作在方式状态。:PB2PB3 接黄灯,PB4PB5 接 红灯;PB0PB1 接绿灯,PA0PA7 作为段选码;PC0PC1 作为位选码。我们 采用的是将 PC 口分成两部分使用,PC0-PC3 作为位选码,PC4-PC7 作为输入 基于 8086 的交通信号控制器的设计 4 口,接收开关输入的初值信息。将在用 8255前首先要对它进行初始化,设置 它的方式选择控制字。 3) 、8255工作方式说明工作方式说明: 方式 0 的工作特点:这种方式通常不用联络信号,不使用中断,三个通道 中的每一个都有可以由程序选定作为输入或输出。

11、其功能为: (1)两个 8 位通道:通道 A、B。两个四位通道:通道 C 高 4 位和低四位; (2)任何一个通道可以作输入/输出;(3)输出是锁存的; (4)输入是不锁存的; (5)在方式 0 时各个通道的输入/输出可有 16 种不同的组合。 方式 0 的使用场合:同步传送是在外设控制过程的各种动作时间为固定, 且已知的条件下使用的。因此,传送中不要应答信号。输入时,执行程序只要 给出 IN 指令;而输出时,也只给出 OUT 指令,就能实现数据的输入或输出。 优点是程序简单,接口的硬件开销小。 查询式传输时,要先查询一个外设的状态,当该状态表示外设已准备好时, 方能开始查询传输,否则 CPU

12、 将继续查询。但在方式 0,没有规定固定的应答 信号,所以,这时将通道 A、B 作为数据通道,把通道 C 的 4 个位(高 4 位或 低 4 位)规定为输出口,用来输出一些控制信号,而把通道 C 的另外 4 个位规 定为输入口,用来输入外设的状态。这样利用通道 C 来配合通道 A 和 B 的输入 /输出操作。 4) 、8255方式选择控制字说明:方式选择控制字说明: 控制字格式如图 1-2: 图 1-2:8255A 芯片的控制字格式 参数说明:7工作方式控制标志。65组合设定口工作方式: 方式、方式、方式。4设定口的输入输出, 4输入4输出。3口高位输入输出选择,3输入3 输出。2口工作方式选

13、择,2方式;2方式。1口输入 输出选择1输入1输出。0设定口低位输入输出0输入 0输出。 5) 、8255技术参数:技术参数: 主要参数说明:8255A 工作最大电流为 120MA,VCC=-5V+5V,I(DAR) 工作电流最大为 4MA。8255 的输出电压不高,连接到 LED 时,最好加入一个 驱动器起到电流放大的作用,其具体参数值说明如表 3-1。 表 1-3:8255A 技术参数说明 规范值 基于 8086 的交通信号控制器的设计 5 8255A 技术参数测试条件大小单位 输入低电平电压IL. 输入高电平电压IHCC. 输出低电平电压OL(数据端口)OL. 输出低电平电压OL(外围端

14、口)OL. 输出高电平电压OH(数据端口)OR. 输出高电平电压OH(外围端口)OH. 达林顿驱动电流OAR.mA 电源电流 CCmA 输入负载电流 ILINmA 输出浮动电流 OFOR.VmA 6) 、8255A8255A 的逻辑图的逻辑图 图 1-3: 8255A 内部逻辑图 2.2 选择芯片七段选择芯片七段 LED 显示器显示器 1) 、LED 显示器在本设计中的作用:显示器在本设计中的作用: 接收由 8255A 芯片送来的字型码显示编码结果其中LED 技术参数如表 1-5: 表 1-4: LED 技术参数说明 2 2) 、七段、七段 LEDLED 显示器显示器 LED 显示器的功能分析

15、:显示器的功能分析: LED 显示器有共阳极和共阴极两类。其原理图(图 1-4): 图是一个 6 位 LED 动态显示电路,段驱动器输出 LED 字符 7 段代码信息,位驱 动器输出 6 个 LED 的位选信号,即分时使 Q0 Q5轮流有效,使得 LED0LED5 轮流显示。 基于 8086 的交通信号控制器的设计 6 图 1-4:七段 LED 显示器 笔画型 LED 显示器是由 8 个二极管电路 adp 按字型8的方式排列,当 不同的二极管被选通后根据发光效果会显示不同的自型。本设计中采用共阴极 连接方式,adp 分别与 74LS273 的 1Q8Q 相连,接收段选码信号(高电平) ; 4

16、位 LED 显示器的 4 根共阴极引线与 8255A 的 PC0PC3相连,接收位选码信号 (低电平) 。段选码和位选码共同作用以显示不同的字型。 LED 字型显示原理: 表 1-5:LED 字型显示组合 DpGfEdcbA 显示数码 0011111103fh 000001101O6H 0101101125bh 0100111134fH 01100110466H 0110110156dH 0111110167dH 00000111707H 0111111187fH 0110111196fH 2.3 硬件总逻辑图及其说明硬件总逻辑图及其说明 1) 、硬件原理说明:、硬件原理说明: 本设计以 ST

17、AR ES598PCI 实验仪提供的最实用、新颖的接口实验,提供的 汇编控制程序设计控制硬件运行为依据设计的;在课程设计中主要利用了 STAR ES598PCI 实验提供的 8255A 芯片,7 段 LED 显示器,以及红绿灯 LED 显示二极 管,其中完成 PC 机与实验箱之间的通信用到了最主要的集成卡 PCI 卡。课程设 计时完成编程调试的只要开发工具为星研集成开发环境。 2) 、硬件连接说明:、硬件连接说明: 8255A 芯片的 PA、PB、PC 三口的工作方式为方式 0,将 8255 的 PB0PB7 接红绿灯用以模拟交通灯的变化,PA0PA7 接 7 段 LED 灯的段选码完成 LE

18、D 显示器的段选,PC0PC3 接 LED 显示器的位选码用以完成位选,PC 机通过数 据总线经过集成电路卡 PCI 卡与 8255A 芯片相连接。其连接方式为:PCI 卡的 地址总线 A1A0 接到 8255A 芯片的 A1A0 来实现端口选择。将 8255A 芯片的片 基于 8086 的交通信号控制器的设计 7 选信号 CS 与 PCI 卡的 CS1 相连接来决定各端口的初始地址。8255A 芯片的 PB 口中 PB0PB7 经过排线与实验箱的红绿灯电路板的插槽相连接,用来实现控制 交通灯的变化规律;8255A 的 PC 口中的 PC0PC3 经过排线与实验箱上的 7 段 LED 灯的位选

19、码插槽相连接,用来实现选择绿灯倒计时时的 7 段 LED 灯的位 置选择,8255A 芯片的 PA 口中的 PA0PA7 经过排线与实验箱上的 7 段 LED 灯的段选码插槽相连接,用来实现 7 段 LED 灯的段选码选择。LED 灯管的 a、b、c、d、e、f、g、dp 做为段选来显示倒计时数据。 图 1-5: 硬件总连接图 三、控制程序设计三、控制程序设计 3.1 控制程序设计思路说明:控制程序设计思路说明: 首先,明确交通灯的变化规律,假设在一个十字路口,其中东西方向,南 北方向,工作方式如下:将红黄绿灯按照红灯停,绿等行,黄灯闪烁为缓冲时 间的原则进行通车。倒计时将可以由用户自由设定,

20、用 8255 的 PB,PC 口来连 接红黄绿灯电路板,而 PA 口连接 LED 显示管来计数倒计时。开始时初始化东西 南北方向全为红灯,然后东西方向绿灯亮,进入倒计时默认值 40 秒,结束后东 西方向绿灯闪烁三次,变黄灯亮三秒,然后红灯亮;南北方向绿灯亮,此时南 北方向进入倒计时,倒计时时间可以在开关口提前设定本次倒计时时间。结束 基于 8086 的交通信号控制器的设计 8 后绿灯闪烁三秒后,变黄灯亮三秒,然后红灯亮,东西方向绿灯亮,如此循环 下去。 其次,主程序的设计思路:首先初始化 8255A 的芯片的控制字格式和状态 字格式,其次设置交通灯开始运行的初始状态并做相应的延时便于观察,再次

21、 调用子程序对东西绿灯的倒计时时间,调用子程序显示绿灯的倒计时,后进行 查表选择相应的 LED 灯的段选码,使相应的灯亮,显示东西绿灯交通灯变化, 然后设置绿灯的闪烁,以及黄灯的亮持续,再次就是查表设置转换成南北绿灯 的亮,同时调用子程序设置南北绿灯的倒计时时间,后进行查表选择相应的 LED 灯的段选码,使相应的灯亮,显示南北绿灯交通灯变化,然后做南北绿灯 的闪烁,和黄灯的亮持续,最后做主程序的循环,利用无条件跳转指令。 3.2 程序流程图程序流程图 开始 程序初始化 路口红灯全亮 东西绿南北红开始倒计时 Cx=5 东西绿灯,南北红灯 延时 500ms 东西绿灯灭,cx 自减 1 Cx=0 东

22、西黄灯亮延时 5s 东西红南北绿 倒计时开始 南北绿灯灭 Cx=5 延时 500ms 南北绿灯亮 cx 自减 1 Cx=0 南北黄灯亮延时 5s 基于 8086 的交通信号控制器的设计 9 图 1-6:主控制程序 再次,也设计了一个到计时显示子程序,用来显示绿灯的到计时时间,设 计思路: 首先要保存进入到计时子程序时的断点保存,以保证能够子程序结束能够 正常返回主程序,其次设置 LED 灯的秒数跳的快慢,使其运行结果便于观察, 再次设置程序分别显示到计时 LED 灯的秒数的个位与十位,在显示秒数的个位 与十位时要做秒数的个位与十位计数是否到零的判断,与此同时也要做秒数的 个位与十位的断选码指示

23、器的移动,最后做恢复断点和子程序的返回。其控制 流程图: N N 图 1-7:倒计时显示程序 最后,还设计了两个延时程序,一个是绿灯闪烁 3 次时间的延时 DL500 子 程序,一个是延时黄灯亮的时间 DELAY 子程序;DL500 子程序的设计思路利用 了设备提供的软中断实现的延时,其控制流程如(流程图:1-7) ;DELAY 子程序 进入 显示个位 延时 显示十位 延时 个位减一 十位减一 个位赋 9 返回 CX=0 个位等于表外第 一个地址 十位等于表外第 一个地址 基于 8086 的交通信号控制器的设计 10 的设计利用的是多次循环空操作实现,思路首先保存断点设置空操作的次数, 做判断

24、循环是否该结束,然后恢复断点,返回主程序,其控制流程如下 保存断点 MOV AH,0FFH INT 21H 星研公司提供的软 中断实现延时 恢复保存中断 返回 图 1-8:500ms 延时程 N 保存断电 置空操作循环次数 循环计数器 是否为 0 恢复断点 7 段 LED 灯显示清 0 返回 基于 8086 的交通信号控制器的设计 11 图 1-9:DELAY 延时程序 3.3 控制程序控制程序 .MODELTINY PCIBAR3EQU1CH;8 位 I/O 空间基地址(它就是实验仪的基地址, 也为 DMA RAM 板卡上的 8237 提供基地址) Vendor_ID EQU 10EBH ;

25、厂商 ID 号 Device_IDEQU8376;设备 ID 号 .STACK100 .DATA IO_Bit8_BaseAddressDW? msg0DBBIOS 不支持访问 PCI $ msg1DB找不到 Star PCI9052 板卡 $ msg2DB读 8 位 I/O 空间基地址时出错$ COM_ADDDW00F3H ;控制口偏移量 GGG DW ? HHH DW ? WWW DW ? PA_ADDDW00F0H;PA 口偏移量 PB_ADDDW00F1H;PB 口偏移量 PC_ADDDW00F2H;PC 口偏移量 XXX DW ? LED_DataDB 11001100B ;红灯全亮

26、 DB01010110B ;东西绿灯,南北红灯。 从高位 7 到低位 0 为 0 则亮,1 则灭。排线反接则顺序颠倒亮。 DB 11011110B ;东西绿灯闪烁,南北红灯 DB 10011010B ;东西黄灯亮,南北红灯 DB 01100101B ;东西红灯,南北绿灯 DB 11101101B ;东西红灯,南北绿灯闪烁 DB 10101001B ;东西红灯,南北黄灯亮 SG DB 6fH,7fH,07H,7dH,6dH,66H,4fH,5bH,06H,3fH ;9-0 .CODE START:MOVAX,DATA MOVDS,AX 基于 8086 的交通信号控制器的设计 12 NOP CAL

27、LInitPCI CALLModifyAddress ;根据 PCI 提供的基地址,将偏移地址转化为实地 址 MOVAL,10000000B ;PA、PB、PC 为基本输出模式 MOVDX,COM_ADD OUTDX,AL;灯全亮 MOVBX,OFFSET LED_Data MOVDX,PA_ADD start0: MOV AL,0;红灯全亮 XLAT OUTDX,AL CALLDL500ms START1:MOVAL,01111101B;东西绿灯,南北红灯 OUTDX,AL CALLDL5S MOV SI, 3FH MOV DI, 4FH CALL DJS MOVCX,5 START2:MO

28、VAL,01111101B;东西绿灯闪烁,南北红灯 OUTDX,AL CALLDL500ms MOVAL,11111101B OUTDX,AL CALLDL500ms LOOPSTART2 MOVAL,10111101B;东西黄灯亮,南北红灯 OUTDX,AL CALLDL3S MOVAL,11010111B;东西红灯,南北绿灯 OUTDX,AL CALLDL5S MOVCX,5 MOV SI,3FH MOV DI,4FH CALL,DJS START3:MOVAL,11010111B ;东西红灯,南北绿灯闪烁 OUTDX,AL CALLDL500ms MOVAL,11011111B OUTD

29、X,AL CALLDL500ms LOOPSTART3 基于 8086 的交通信号控制器的设计 13 MOVAL,11011011B ;东西红灯,南北黄灯亮 OUTDX,AL CALLDL3S JMPSTART1 ;倒计时显示程序 DJS PROCNEAR PUSH DX PUSH CX PUSH BX PUSH AX PRT: NUM: MOV Al, SI ;设置段选码,将 SI 中的内容送入 PA 口 MOV DX,PA_ADD OUT DX,Al MOV Al, 0FcH ;设置位选码,PC0 口置 0 高四位为 0 MOV DX,PC_ADD ;其他口为 1 来选中 LED1,显示个

30、位 OUT DX,Al CALL DELAY MOV Al, DI ;设置段选码,将 DI 中的内容送入 PA 口 MOV DX,PA_ADD OUT DX,Al MOV Al, 0FDH ;设置位选码,PC1 口置 0 高四位为 0 MOVDX,PC_ADD ;其他口为 1 来选中 LED2,显示十位 OUT DX,Al CALL DELAY LOOP NUM ;循环到 NUM INC SI ;个位 SI 自增 1 CMP SI, OFFSET SG + 10;与表外的第一个偏移地址相比较,如 果不 JNZ PRT ;等则显示数据且 SI+1,如果相等顺序执 INC DI ;十位 DI 自增

31、 1 MOV SI, OFFSET SG ;将 SG 即 9 的偏移地址送给 SI CMP DI, OFFSET SG + 10;与表外的第一个偏移地址相比较,如 果不 JNZ PRT ;等则显示数据且 DI+1,如果相等顺序 执行 mov al, 0 out dx, al POP AX ;结束子程序 POP BX POP CX POP DX RET 基于 8086 的交通信号控制器的设计 14 DJS ENDP DL500msPROCNEAR PUSHAX PUSHDX MOVDX,500;延时 500ms MOVAH,0FFH;星研公司提供的软中断 INT21H POPDX POPAX R

32、ET DL500msENDP DL3SPROCNEAR PUSHCX MOVCX,6 DL3S1:CALLDL500ms LOOPDL3S1 POPCX RET ENDP DL5SPROCNEAR PUSHCX MOVCX,10 DL5S1:CALLDL500ms LOOPDL5S1 POPCX RET ENDP InitPCIPROCNEAR MOVAH,00H MOVAL,03H INT10H;清屏 MOVAH,0B1H MOVAL,01H INT1AH CMPAH,0 JZ InitPCI2 LEADX,msg0 InitPCI1:MOVAH,09H INT21H JMPExit Ini

33、tPCI2:MOVAH,0B1H MOVAL,02H MOVCX,Device_ID MOVDX,Vendor_ID 基于 8086 的交通信号控制器的设计 15 MOVSI,0 INT1AH JNCInitPCI3;是否存在 Star PCI9052 板卡 LEADX,msg1 JMPInitPCI1 InitPCI3:MOVDI,PCIBAR3 MOVAH,0B1H MOVAL,09H INT1AH;读取该卡 PCI9052 基地址 JNCInitPCI4 LEADX,msg2 JMPInitPCI1 InitPCI4:ANDCX,0FFFCH MOVIO_Bit8_BaseAddress

34、,CX RET InitPCIENDP ModifyAddress PROCNEAR ADDCOM_ADD,CX ADDPA_ADD,CX ADDPB_ADD,CX ADDPC_ADD,CX RET ModifyAddress ENDP Exit:MOVAH,4CH INT21H ENDSTART 四、上机调试过程四、上机调试过程 4.1 硬件调试硬件调试 根据实验硬件原理图和硬件连接说明,进行连线,结合实验时的实验 箱的实际环境连接好上述部件后给实验箱通电。在实验硬件连接时曾出现, LED 灯全部都不亮,后来经过几遍检查,才找出原因,PA 口和和 PC 口接 线反了,错误的原因是实验时不细心

35、和实验态度不认真,经过此次经历, 明白实验要同理论一样仔细,任何一个小错误都可能是造成实验失败的原 因。 4.2 软件调试软件调试 我和同组人员一起讨论,在完成老师要求的基本功能基础上又相应相应的 基于 8086 的交通信号控制器的设计 16 增加了相应的子程序用来实现相应的功能,例如如何动态的设计倒计时时间, 如何在绿灯倒计时结束时使蜂鸣器发出警报的声音等等。 在程序的调试过程中却出现了各种错误现象,在单步调试过程下不断改正 错误,重新调试,直到调试通过。但是功能还是不理想。后来经过参考其他班 同学的程序设计,分别对各个程序代码进行了修改,后经过老师指导在老师的 指导下,调试通过,功能基本实

36、现。 在我们的交通灯实验中有一个紧急情况处理的情况,要求是按下按钮东西 南北方向的交通灯全部变为红色,这个功能的实现需要要用到一个中断,我们 打算采用 dos 键盘功能调用的 0bh 号功能调用,即检测键盘状态,有按下执行 子程序,无按下循环执行。但由于上机调试时间有限这一功能未能实现。 4.3 联机调试联机调试 将实验箱总电源开关打开,打开 PC 机上的星源集成软件。将控制程序输入 其中后,对程序进行编译,编译通过后,单步调试并观察结果以及各寄存器中 值得变化,然后单步连续执行观察按下键与显示数值。出现问题时对程序进行 修改,直至出现正确结果。再作全速运行。 4.4 调试结果调试结果 调试结

37、果基本正确,符合任务书的结果:接口上的红、绿、黄发光二极管 按十字路口交通红、绿、黄灯形式闪烁,并显示绿灯的倒计时时间。 问题的提出: 五、设计结果分析及问题讨论五、设计结果分析及问题讨论 5.1 课程设计结果及分析课程设计结果及分析 本实验结果与主程序流程吻合,开始红灯全亮,接着变为绿灯亮,然后东 西方向为红灯,南北方向为绿灯并显示倒计时时间,倒计时间快结束时,绿灯 闪烁,接着交通灯变成黄灯,5s 后,东西方向变成绿灯,南北变成红灯,再变 成黄灯,如此按交通灯的变化规则交替变化。至于倒计时初值设置,由于只有 4 位二进制作为输入口,所以我采用二进制形式作为输入数字格式。 5.3 收获,体会和

38、建议收获,体会和建议 通过此次模拟实验设计,加深了对芯片、8086 以及 8255A 的理解,对 8255A 芯片的 PA 口、PB 口、PC 口的初始化设计有了更好的了解,同时在对 8255A 芯片的工作方式选择,有了更好的认识。通过实验的硬件连接,使我认 识到实验时独自动手能力的重要性,也使我们意识到我们的动手能力的欠缺, 基于 8086 的交通信号控制器的设计 17 使我们认识到在以后的学习和其他工作时应对独自动手能力的培养。在课本上 学得都是些理论知识,通过本次的实际操作,更加锻炼了我们对所学知识的认 知应用能力,对 8255A 芯片的编程的更为直观的应用理解。 经过两个星期的设计和调

39、试,我们认为此程序段虽然说比较通俗易懂,但 这也存着很多的不足,经过对程序和设计的认真思考,我们对控制程序做了如 下的改进设想:对东西和南北的绿灯倒计时初值重装时可以采用同一个子程序, 一个修改思想,是在初值重装时可以利用小键盘来进行手动设置,另一个改进 思想是在控制程序中加入紧急情况的处理程序,既是要在紧急情况发生时采用 中断来完成,但是由于我们的能力有限,在本次课程设计并没有实现这些功能。 在设计结束之后,我们也对程序进行了认真的思考。我们认为此程序段虽 然说比较通俗易懂,但这也存着很多的不足,经过对程序和设计的认真思考, 我们对控制程序做了如下的改进设想:在控制程序中加入紧急情况的处理程

40、序, 既是要在紧急情况发生时采用中断来完成,但是由于我们的能力有限,在本次 课程设计并没有实现这些功能。不过通过本次课程设计,我们对 8086 不再感觉 是那么难懂,和对程序控制硬件的理解,此次实验不但提高了我们的实践能力 和理论水平,而且对于我们认识掌握各种操作技巧具有重大意义,使我们的综 合动手能力得到了很大的提高! 通过此次课程设计,发现自己很多地方不足。刚开始拿到题目时自认为和 简单,可仔细想象都不能很明确的说出交通灯的具体变化规则,可见对周边那 么常见事物的忽视,让我们认识到要想在各个方面做的更好必须用心对待身边 的每一件事,我们认为做实验,首先实验态度要端正,正确对待任何一个小的

41、程序,有耐心,一步一步做下去,不断完善,切不可冒进,编程更需要脚踏实 地,逐个调试子程序。在这方面星研给我们提供了良好的条件,遇到程序问题时 我们可以采用单步调试,查看寄存器里的数值,找出到底是哪步出现了问题,继而 解决问题,实现预期功能,从而圆满的完成此次课程设计的要求。 六、参考文献六、参考文献 微型计算机原理及接口技术中国科技大学出版社 吴秀清 周荷琴编著 16-32 位微型计算机技术及应用清华大学出版社 戴梅萼 史嘉权 编著 编语言程序设计南京大学出版社 姚君遗编著 汇编语言程序设计教程清华大学出版社 杨记文编著 微型计算机原理及接口技术实验指导书 七、致谢七、致谢 感谢合肥学院电子信息与电气工程系能够提供我们过程设计的机会,感谢 我们的指导老师刘伟、林泽坤给予我们的辅导,同时对我们同组人员在这次设 计中能够认真并有效的完成任务表示感谢。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1