欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    交通灯计算机硬件课程设计.doc

    • 资源ID:855561       资源大小:6.79MB        全文页数:37页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    交通灯计算机硬件课程设计.doc

    1、交通灯计算机硬件课程设计目录1 课题分析51.1基本功能分析及设计52 硬件设计52.1总电路52.2分电路73 软件设计103.1主程序的设计流程图103.2各子程序的流程图114 扩展功能的实现144.1黄灯过渡155 测试结果及分析155.1实验结果显示155.2系统详细操作说明225.3结果分析236 设计总结236.5总结277 附录287.1参考文献287.2程序清单28 1 课题分析1.1基本功能分析及设计 根据课题的功能要求,经过反复的思考和讨论我们决定采用模块化的思想来分析及设计整个课题。 首先我们把功能模块化,对其功能进行细化分解,对于该课题我们可以把它的功能分解为下面几块

    2、:显示模块,计时模块,颜色模块,定时模块,选择分支模块,报警模块等。根据以上各个模块我们就可以分布进行设计和硬件的悬着。首先交通灯的时间显示我们采用8254芯片的定时器和计数器功能功能来实现,其次,对于交通灯的三种颜色我们采用实验箱上的三色LED灯来显示,再有对于车辆数还有闯红灯的演示我们用小键盘来实现,对于闯红灯我们利用LED灯和蜂鸣器同时作用。这样就很容易的设计好各个子功能模块,然后根据整体功能的要求合理的把各个子功能整合起来就能完成整个课题的设计了。这样做的目的和好处是思路清晰,方便设计。 2 硬件设计2.1总电路根据分析此次要用到的硬件模块包括8254定时芯片,CPU,8255,可编程

    3、并行接口芯片,LED,蜂鸣器等。它们的相关介绍如下:图1是此次试验所用到的试验箱面板,此次课题就在其上完成 图1 PD-32E操作面板 此次试验的硬件电路仿真图如图2所示 图2 仿真总电路图硬件连接如下,8255A:PA0PA3与键盘行信号P0P3,PB0PB3与键盘列信号Q0Q3连接C口的pc1接8254的控制端口gate0,pc7口接蜂鸣器。8255的口接340, 8254的接译码模块的CS1,CLK1接频率为47KHZ的时钟信号,GATE1接+5V,OUT1接8259(1)的IRQ0;8259(1)的CS-1接译码模块的CS2,P/1接+5V,INT1接CPU的INTR;其硬件连接框图如

    4、图3所示: 图3 总体框图2.2分电路2.21 8255模块 8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、PB口、PC口,又可分为2组12位的I/O口:A组包括A口及C口高4位,B组包括B口及C组的低4位。A口可以设置为方式0、方式1、方式2,B口与C口只能设置为方式0或方式1。工作方式如下:方式0基本输入/输出方式方式1选通输入/输出方式方式2双向选通输入/输出方式各引脚功能如下。D7D0与CPU侧连接的八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号; 图4CS(低电平有效)片选输入信号;A0、A1片内寄存器选

    5、择输入信号;PA7PA0A口外设双向数据线;PB7PB0B口外设双向数据线;PC7PC0C口外设双向数据线;RESET复位输入信号此次用8255的A口作为键盘的输入B口作为键盘的输出C口的pc1口作为8254的控制端口pc7口用来控制蜂鸣器。2.22 8254模块8254的功能用途是:(1)延时中断 (2)可编程频率发生器 (3)事件计数器 (4)二进倍频器 (5)实时时钟(6)数字单稳(7)复杂的电机控制器 8254有六种工作方式: (1)方式0:计数结束中断(2)方式1:可编程频率发生器(3)方式2:频率发生器 (4)方式3:方波频率发生器(5)方式4:软件触发的选通信号(6)方式5:硬件

    6、触发的选通信号 8254,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号; 图5A0、A1片内寄存器地址输入信号;CLK计数输入,用于输入定时基准脉冲或计数脉冲;OUT输出信号,以相应的电平指示计数的完成,或输出脉冲波形;GATE选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。 本项目用8254来实现1秒定时中断功能,其中0口工作在方式3,产生1HZ的方波以此作为8259-IRQ0的中断请求输入信号,并通过设置变量实现定时和计数功能。2.23 8259模块各引脚功能如下。D7D0八条

    7、双向数据线;WR(低电平有效)写输入信号; RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号; A0地址信号;INT中断请求信号;INTA(低电平有效)中断响应信号; CAS0CAS2级联信号,形成一条专用8259A总线, 图6以便多片8259A的级联;SP/EN从编程/允许级联。在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。在非缓冲方式中,作为输入信号用于表示主片还是从片;IR0IR7外部中断请求输入线。要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应时为止)或者是高电平。2.24 蜂鸣器模块 图7 蜂鸣器电路原理图蜂鸣器是一种一体化结构的电

    8、子讯响器,采用直流电压供电,通过放大电路驱动,用来做提示或报警。2.25 按键模块 本次项目中按键的功能如下表所示 图8 表1 小键盘的按键功能按键1789ABC功能对应的车辆数干线有人按键干线有人闯红灯支线有人闯红灯干线有人闯红灯支线有人按键2.26 三色LED模块用实验板上的四片8255的三色LED数码管来实现交通灯的仿真并显示计时。LED数码管与各路口路灯的对应情况如下表所示 表2 三色LED数码管对应各路口的情况L1 L2L3 L4L5 L6L7 L8支线人行显示干线人行显示干线通车显示支线通车显示 3 软件设计本次设计采用的是子程序嵌套,即程序的模块化思想。在进行设计的时候,先写好主

    9、程序,定好程序的总体框架结构,划分出若干个子程序。子程序用一个个小的调试程序调试好,确认准确之后再将各个子程序嵌入到主程程序包括主程序,初始化子程序,键盘扫描子程序,报警子程序,定时子程序,延时子程序,人行子程序,干线子程序等 3.1主程序的设计流程图在主程序中,首先是初始界面的显示,用8255实现输入输出,8254实现1秒定时中断功能和定时、计数功能,再次根据实际情况实现不同情况下的三色数码管显示情况,并在板上实现。 图9 主程序的流程图3.2各子程序的流程图 3.21秒定时中断和按键中断 图103.22定时子程序;函数名称:DINGSHI ;功能:开启定时器,接入时钟频率47KHZ 入口参

    10、数:无;出口参数:TIME0;调试状态:已调试DINGSHI PROC NEAR PUSHA MOV DX,PORTC MOV AL,80H OUT DX,AL ;给予GATE低电平,禁止计数 MOV TIME,0 MOV TIME_3,0 MOV TIME_10,0 MOV TIME_15,0 ;清除所有时间标志位 MOV DX,CNT0 ;计数器0端口地址 MOV AX,47000 OUT DX,AL MOV AL,AH OUT DX,AL ;8254 0口工作在方式3情况下,产生1S的方波 MOV DX,PORTC OR CL,81H MOV AL,CL OUT DX,AL ;给予GAT

    11、E高电平,重新开始计数 POPAEXIT: RET DINGSHI ENDP3.23 刷新显示子程序流程图: 将time0的值送入AL分别取出各位和十位,并转化成为段代码,暂存于shiwei和各位将shiwei放入daixian调用DUAN函数,根据STA中的状态,分别转入LED1-4对应函数段将daixian的数据放入AL,并根据要显示的位置移位将EAX的地址送入DUANXUAN从A(200H)口送出并刷新十位数据将个位放入daixian调用DUAN函数,根据STA中的状态,分别转入LED1-4对应函数段将daixian的数据放入AL,并根据要显示的位置移位将EAX的地址送入DUANXUAN

    12、从B(204H)口送出并刷新个位数据送出颜色刷新数据 图11324干线通车转支线通车子程序流程图(当JIEGUO=4-7时转入该子程序)同时TIME_15,TIME_3清零 Time0=15,送出STA1 启动定时,调用显示程序刷新Time_15=1? NTime0=3,(三秒黄灯定时),送出状态2Time0=15,送出STA3,同时TIME_15,TIME_3清零TIME_15,TIME_3清零启动定时,调用显示程序刷新Time_3=1?Time_15=1?Time0=3,(三秒黄灯定时),送出状态4Time_3=1?启动定时,调用显示程序刷新 Y N Y N Y N 图12说明:其他部分如

    13、干线车行转入人行与此基本一致 4 扩展功能的实现由于时间和我们自身能力的问题,做起来有点吃力所以等我们吧基本功能做完以后时间就差不多了,所以没有做太多的扩展功能,只加了一个3秒黄灯提示的功能,其基本思想如下当干线通车15秒和支线通车15秒结束以后我们加一个3秒黄灯的提示时间,这样会更加的安全4.1黄灯过渡a. 支线黄灯过渡过渡3秒MOVECX,STA5 ;支线通车结束黄灯过渡状态 MOVSTA,ECX MOV TIME0,3 CALL DINGSHI M5: CALL CLOR_LED CMPTIME_3,1 ;支线黄灯3s是否到达 JNZM5 MOVTIME_3,0B干线黄灯过渡3秒 MOV

    14、ECX, STA4 ;干线通车结束过度状态,干线黄灯3s MOV STA,ECX MOV TIME0,3 CALL DINGSHI M3: CALL CLOR_LED CALL VOICE CMPTIME_3,1 ;干线黄灯3s是否到达 JNZM3MOVTIME_3,0 5 测试结果及分析5.1实验结果显示在实验板上结果显示根据题目的要求, 通过调试运行程序,得到了不同状态的下实验箱上亮灯的各种情况如下:(1) 正常情况,干线通车亮绿灯,支线人行、干线人行,支线通车亮红灯如下图13图13 正常情况显示情况(2)支线人行道通行,支线人行道绿灯,干线通车,支线通车亮红灯,维持10秒,结果如图14

    15、图14 支线人行道通行情况的显示(3)干线人行道通行亮绿灯10秒,支线人行、干线通车,支线通车亮红灯,结果如图15 图15 干线人行通行情况的显示(4) 支线通车亮绿灯,干线人行,干线通车,支线人行亮红灯,维持15秒如图16所示 图16 支线通车情况的显示(5) 由干线通车转支线通车,干线通车先亮15秒绿灯再亮3秒黄灯再变为红灯,支线通车由红灯变为绿灯且维持15秒绿灯黄灯3秒、干支线人行道,支线人行亮红灯,结果如图17 图17 干线转支线通车情况的显示(6) 由干线通车转支线人行,先经过干线15秒绿灯,再由干线3秒黄灯过渡到支线人行绿灯,干线变为红灯,结果如图18 图18干线通车转支线人行情况

    16、的显示(7) 由干线通车转干线人行,先经过干线15秒绿灯,再由干线3秒黄灯过渡到干线人行绿灯,干线变为红灯,结果如图19 图19 干线通车转干线人行的情况显示5.2系统详细操作说明其中按键1-7表示对应的车辆数,按键8表示干线有人要通行,9表示干线有人闯红灯,A表示支线有人闯红灯,B表示支线车闯红灯,C表示支线有人要通行三色LED灯从左到右第一个为支线人行时间显示,第二个为干线人行时间显示,第三个为干线通车显示;第四个为支线通车时间显示其中初始状态为干线通车显示为绿灯,其他的显示为红灯,当干线有人按下键时即8键被按下时,干线开始转变为亮15秒绿灯,然后再亮3秒黄灯后变为红灯通时干线变为绿灯计时

    17、10秒,10秒结束后返回初始状态,当支线有键按下时即C键被按下时和干线被按下时同理,当4-7键被按下时表明支线车辆数大于等于4,要让支线通行,此时干线会亮15秒绿灯然后3秒黄灯后变为红灯,支线通车变为绿灯亮15秒,之后变为黄灯3秒后,返回初始状态,当按下9,A,B键时蜂鸣器会向同时led会亮起表示有人或车闯红灯。5.3结果分析 根据以上的测试结果,课题的基本功能都实现了,但是还有很多不完善和有缺陷的地方,这里我们主要分析一下存在的问题。 第一个问题是我们的功能不完善,最明显的地方时当支路上的车小于4辆时,车要一直等待,对于这个问题我们开始也考虑到的,具体的方法解决方法是当支路等待时间达到30秒

    18、时就可以通车,没做的原因是我们本打算最后做的,但最后没时间了所以就没有加上去。 第二个问题是我们的定时不精确,比如定时15秒结果跑了17秒,这是因为我们的延时程序不准确,所以就导致了最后的计时不精确 最后就是我们没有什么扩展的功能除了3秒黄灯的提示外,这主要是因为我们自身的能力及时间的问题,我们以后会做得更好的。 这次总体来说不是特别的满意,虽然基本功能都实现了,但还是存在很多的问题和缺陷需要改进和完善。 6 设计总结6.1 在计算机硬件基础课程设计动员大会上,就听到老师说“交通灯管理系统这道题有点难度”,当时就暗想我会不会抽到那一题,结果在分配好组员后进行分配任务的时候,这道题果然还是花落我

    19、家。拿到题目后,我们组成员都充分重视,很快我们就做好了任务分配和对课程设计的简单计划。作为组长的我主要负责的是读懂课程设计任务书、构建相应的逻辑画出逻辑结构图及硬件连接电路图、理清期间的逻辑关系,构建程序的主体、承担实现利用三色LED数码管准确显示各种路面状态和定时中断等子程序,并负责根据主程序的需要分配子程序的编写任务,协调组员间工作的默契度。在做为期将近两周的课程设计期间,让我学到很多也懂得很多。把以前了解不深,或则不透彻的一些知识点在做这个的过程中,把他们搞懂了。另外我深刻体会到一个好的团队氛围,对项目完成的重要性,当然在这个过程中也也遇到了许多问题。如下: 首先,流程图的制作。当我们第

    20、一天开始的时候就很尴尬,不知如何开始。最后经过讨论,我们就一致决定先写出整个制作流程的各个要点,这样不仅有利于分工还能很清晰的做错整个的流程图一起把整个设计的流程图。于是,我先根据自己的初步构想,绘制了程序流程图,然后将其与组员们讨论。我们在讨论的过程中,不断的有新的问题产生,然后有别的组员发现,然后修正,才得到我们都觉得逻辑没得问题的完整程序流程图。比如,在人行道通行完毕后,是否要先判断支线上车辆数目大于等于四辆,如果是,是否要让支线通车,再让干线通车;又如,不是很明白在干线通车时,如果支线有大于4辆车到,同时人行道又有响应时,该先进行哪一个,还有很多都是连线的问题 。等等,这些问题都是我们

    21、一起讨论并一步一步解决出来的。 然后,基本功能的程序编写过程。鉴于流程图的制作过程中大家一起合作感受到比较容易完成,我们就根据我们组的实际情况,继续一起编程。由于我们的流程如调理的清晰性和准确性,我们编写程序整体上是非常顺利的,我们只用了两天就完成了。不过也遇到些问题,比如说,最开始是打算想用8255的中断查询功能来实现8254定时中断功能,但是由于忘记了相关管脚的特殊功能和用法,就需要了解如何选择响应的接口才能使其满足我们设计的要求,并且不影响我们拓展功能的实现。这些都是需要我们重新熟悉的知识点。 计算机硬件技术是一门很有趣的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及

    22、到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了一些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。 虽然如此,我还是在尝试的过程中学习了不少8255的相关功能,收获不少。 整个课程设计做下来,大大小小的问题绝不止这些。遇到问题我们先自己想想然后一起讨论,经过讨论大部分都得到了解决。再不能解决的我们请教了老师和同学。问题越多,说明我们学到了越多。书本上的知识远远不能止于理论

    23、,我们工科的学生更是如此,只有在工程实践中才能发现更多,收获更多。6.2 刚开始拿到课题的时候,我们对老师出题的意图进行了讨论,并且根据老师所提的要求都得到了自己的见解,最终大家在一起共同确定了交通灯功能的实现情况还有优先级,中间遇到的矛盾问题也找老师请教而得到了解决,比如人行道的交通灯红灯亮了之后是不是必须转到干线通车而不是要考虑支线车辆的情况,还有增加支线车辆闯红灯、主线支线黄灯等待等扩展功能。在进行工作之前,我们首先拿起了计算机硬件基础的课本,毕竟比较久了,大家对指令还有芯片的功能都有一些生疏了,同时也在不懂的时候及时的请教我们组的组长唐晨轩同学,十分感谢他在这次课程设计对我们提供的帮助

    24、。在本次课程设计之中,我们首先进行的就是程序流程图的设计,这是整个实现功能阶段的主心骨,所用的程序都要根据他来设计,也能让我们在编程时能够有条不紊。在设计主程序流程图时,我常常会忽略一些重要的情况以及几个模块之间的关系主次性。多亏组员和组长的相互探讨还有提出质疑才能设计出一个完整的程序流程图。其次,运用了非常重要的思想就是模块化程序的设计,我们的交通灯系统设计中就设计了:初始化程序、检测非支线交通灯状态模块、定时、延时、按键中断子程序等模块。让自己对系统有了一个更加清晰的认识了解,更加认识到了在编制大程序的汇编语言程序时,采用模块化程序设计方法的必要性。 通过本次的课程设计我对为指令的设计和流

    25、程都有了更深的理解,进一步熟悉了计算机硬件技术原理的基本知识,同时也加深了解了模块化程序设计的基本过程,掌握了一些基本的软硬件设计知识并对其进行了基本的运用,在模块化程序设计中运用了很多知识,以及几块芯片8255、8254、8259来实现计数器、定时器、查询的功能等,即实现了对以往所学内容的复习,也让自己更加对他们的实际运用能力得到了增强,使自己比以前的动手能力与对课题的思考能力得到了增强。 这次的课程设计,我主要是负责检测非支线通车状态,支线车辆数还有延时程序的编程,虽然我们几个人负责了不同的模块,但是各个模块之间还是有关系的,所以必须在团队合作的基础之上我们才能够完成各个模块的无漏洞编程,

    26、比如非支线通车状态是我必须要涉及到报警模块,还有支线车辆数也涉及到延时程序,报警程序。虽然各个模块式独立的,但并非没有关系。所以对我这个编程不是很好的人来说通过实践,提高了我的实际操作能力,从以前所学理论上升到实践,真正做到了学有所用,同时也认识到了自己的不足之处,对转移指令、芯片工作方式等都不是很熟悉,但是自己受益匪浅。课程设计可以体现出团队合作程度,紧密合作加上明确分工,能够大大地提高设计速度,在动手设计之前,最好将设计所需要的数据,程序准备好,为了判断设计结果是否正确,有必要在准备阶段计算理论值。仔细分析指令的每一位,以及理清思路,在设计时做到胸有成竹。实验中个人的力量是不及群体的力量的

    27、,我们同组三个人分工合作,做事的效率高了很多。虽然有时候会为了一些细节争论不休,但最后得出的总是最好的结论。而且实验也教会我们在团队中要善于与人相处,与人共事,不要一个人解决所有问题。6.3 开学的第一周,我们接到了计算机硬件的课程设计任务,在经过简单的抽签分组后,确定了我们组的组长组员以及课程设计题目。我们组的题目是交通管理系统的设计。拿到任务书后,我们组组长和组员都对这次课程设计很重视,大家都明白这是我们对自己学习的一种检测,也是一次巩固的机会,同样也是一次理论结合实践的机会。第一天,我们拿到题目后,就各自查资料,理解题意,最后再汇合大家的思想,讨论中我们的意见有些冲突,期间难免有些争执,

    28、但我们各自呈现彼此的理由,最终得出整体流程图,并对附加的功能作了一些讨论,并且得出了最后的结果。在这之后,我们又确定了各自的分工,把每个人负责的模块进行了详细的分工,以确保我们组可以顺利的完成这次课程设计。讨论完之后,确定了我的任务是负责初始化函数。拿到任务之后。我便着手开始了程序的编写,由于很久没看书了,所以在开始着手做的时候,难免遇到很多困难,我不得不又回头把遗忘了的知识温习了一遍,有很多知识点都忘记了,幸好我们组的组员都很优秀,在我遇到不懂时,我也会求助他们,他们会很虚心的给我讲解,如果他们不知道的,大家就会一起翻书或者查阅其他资料。在经过了自己和组员们的一起努力后,我终于完成了我负责部

    29、分的程序的编写,经过这一次课程设计我深深的理解到了一只筷子容易被折断,而一把筷子不易被折断的道理。完成了程序的编写之后,接下来便是程序的运行调试,中间多少遇到了一些问题,但是在我们共同的努力下都一个个完美的解决了,看着大家编写的程序把任务书上的功能以及我们自己附加的功能一一完成,一股莫名的成就感油然而生,同时也让我感受到了自己所学知识的用武之地。这次课程设计,首先,让我学习和掌握计算机中常用接口电路及8255的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过实践,进一步加深了对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的

    30、知识的应用能力以及分析问题解决问题的能力得到全面提高。 经过此次的课程设计,我不但巩固了自己所学的知识,也学会了一些课外的知识,同时还体会到了团队合作的重要性,也加深了组员之间的相互了解。总的来说,这是一件一举多得的事,对我下学期的毕业设计也会有一定的帮助。在未来的工作中,我也必须不断的努力学习,才能把自己的事做的更好。6.4 这次课程设计分到的是交通灯系统的设计(在实验板上面实现),要求实现任务书上基本的要求,并在基本要求的基础上完成功能的自主创新。开始觉得这个项目就很难,果然实验的第一天就遇到了一些问题。开始对基本要求的理解上我们四个就出生了分歧,我们对在人行道绿灯结束后,是否需要先行主干

    31、线,然后再行驶支线,不过通过我们的讨论和请教,后面大家找到了最合理最优化的流程图设计方法,最后大家一起努力绘制出初步的设计流程图。基本思路出来之后,我们就开始着手编写各自负责的功能模块程序,我负责的是按键中断服务子程序,我参考计算机硬件技术基础来编写程序,但是由于我的原因,没能完成,最后交给其他同学编写。然后经过我们的讨论,决定加上报警系统扩展功能,我依旧在参考书籍和请教后写完子程序,但是组长给我指出了错误,蜂鸣器报警可以通过给蜂鸣器送入低电平使其报警。在所有子模块都编写完成后,组长做了最后的总程序编写和调试,然后我又进行了硬件连接和功能实现调试,并检查了功能实现是否完全和正确。最后我和同学一

    32、起撰写了设计报告。在这次课程设计中,在收获知识的同时,还收获了阅历,在此过程中,通过查找大量资料,请教同学,以及不懈的努力,同学间的相互协作,顺利圆满完成了题目要求。在此次实践中,我们学会了很多,不但学到某些平时没学到的知识,更是学会了一个做设计的有效思路和方法,对理论知识的更好理解就是把之用于实际运用中。而这些都是日后最实用的,对自己下学期的毕业设计也有一些启发,受益匪浅。未来更好的面对社会的挑战,只有不断的学习、实践,再学习、再实践。实验中个人的力量是不及群体的力量的,我们同组三个人分工合作,做事的效率高了很多。虽然有时候会为了一些细节争论不休,但最后得出的总是最好的结论。而且实验也教会我

    33、们在团队中要善于与人相处,与人共事,不要一个人解决所有问题。6.5总结在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。初拿到任务书的我们都不知所措,在第一天的查阅资料后稍稍得到了改善;第二天小组讨论确定了最终方案,组长分配任务;后面就是编写程序,编译调试,确定自己的那部分功能实现以后,变成子程序,和主程序放在一起看能否能正常运行。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高我们自己的

    34、实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到了解决。 7 附录7.1参考文献 1 仰天怡,邓亚平,黄勤 计算机硬件技术基础重庆大学出版社,2002 2 黄勤,高富强,杨天怡 计算机硬件技术基础实验教程重庆大学出版社,20027.2程序清单.486 CTR_8254EQU30CH ;8254控制端口CNT0EQU300H ;8254计数器CTR_8255EQU34CH ;8255A控制端口PORTAEQU340H ;8255A的A口地址PORTBEQU344H ;8255A的B口地址PORTCEQU348H ;8255A的C口地址ADDR0EQU

    35、320H ;8259偶地址ADDR1EQU328H ;8259奇地址INTQEQU40H ;定时中断类型号CODE SEGMENT USE16 ASSUME CS:CODE ORG 2000H BEG: JMP START SHIWEIDB0 ;待显示的时间的十位和个位 GEWEIDB0DAIXIANDB? ;待显的段代码DUANXUAN DD? ;4个三色LED的段选TIME0DB? ;倒计时秒数 TIMEDB0 ;时间 TIME_3DB0 ;定时3s到达标志TIME_10DB0 ;定时10s到达标志TIME_15DB0 ;定时15s到达标志JIEGUO DB 0 KEY DB 0 ;按键标

    36、志位 BAOJINGDB0 ;报警标志位 STADD? ;当前状态STA1DD050A0505H ;红绿红红STA2DD05000505H ;红黄红红STA3DD0A050505H ;绿红红红STA4DD00050505H ;黄红红红STA5DD05050A05H ;红红绿红STA6DD0505050AH ;红红红绿 TABDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H DB80H,90H,88H,83H,0C6H,0A1H,86H,8EH;三色8段LED灯字符码 START: CALLINIT AGN :MOVECX,STA1 MOVSTA,ECX MOV DX

    37、,208H OUT DX,EAX MOV TIME0,0 calldingshi CALLCLOR_LED CALL KEEY CMP KEY,0 JZ AGN CMP JIEGUO,0BEH ;用8键模拟干线有人要通过 JZ P1 JMP P22 P1:CALL G2R MOV KEY,0 JMP AGN ;跳到15S绿灯闪烁和3s黄灯处,并进一步切换到人行道 P22:CMP JIEGUO,0BDH ;用9键模拟有人闯红灯 JZ P2 JMP P33 P2: CALL RCBJ1 MOV KEY,0 JMP AGN P33:CMP JIEGUO,0BBH ;用A键模拟有人闯红灯 JZ P3 JMP P44 P3: CALL RCBJ1 MOV KEY,0 JMP AGN ;跳到人闯红灯并报警 P44:CMP JIEGUO,0B7H ;用B键模拟有车闯红灯 JZ P4 JMP P55 P4: CALL RCBJ1;报警 MOV KEY,0 JMP AGN P55:CMP JIEGUO,7EH ;用C键模拟支线有车闯红灯 JZ P5 JMP P66 P5:CALL G2R1 ;支线十秒人行 MOV KEY,0 JMP


    注意事项

    本文(交通灯计算机硬件课程设计.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922