交通灯设计 唐都实验箱_第1页
交通灯设计 唐都实验箱_第2页
交通灯设计 唐都实验箱_第3页
交通灯设计 唐都实验箱_第4页
交通灯设计 唐都实验箱_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录TOC\o"1-5"\h\z摘要 I\o"CurrentDocument"1设计内容 1\o"CurrentDocument"2设计器材、原理与说明 22.1设计器材 22.2原理与说明 22.3流程图及电路接线图 3\o"CurrentDocument"3设计过程 64设计过程 95设计结果与分析 10\o"CurrentDocument"6分析体会与建议 11\o"CurrentDocument"源代码 12\o"CurrentDocument"参考文献 16摘要:本报告主要介绍了微机原理与接口技术的应用之 交通灯控制器的设计与实现,主要是模拟十字路口的红绿灯,还介绍了交通灯控制器的原理以及电路接线,其中主要用到的芯片有可编程并行通信接口芯片8255A。在设计中所用到的编程语言是汇编语言,延时采用的是软件延时(即通过汇编指令)。设计所用到的备是由西安唐都科技仪器公司生产的TD-PIT+实验系统一套。在实验室将汇编程序调试通过后即可看到设计的结果。关键字:交通灯控制器,延时,并行接口1设计内容这次课程设计的题目是交通灯控制器的设计与实现,主要是模拟十字路口的红绿灯,如图1-1所示。交通灯控制器的设计与实现主要是通过编写汇编语言程序利用8255A的A口和B口对灯的亮与灭进行控制。首先,要了解的是8255A是如何工作的,包括它的A口、B口、C口和控制端口是如何写数据的,还包括芯片的初始化等。由于实验室的仪器上只有16个发光二极管,所以还得弄清楚是每个发光二极管所代表的灯的颜色及方向。最后要在实验室通过一个软件进行调试,调试通过后即可看到设计的结果。北红黄绿 ®®®绿0酉黄®红目000红黄绿南

图1-1十字路口交通灯2设计器材、原理与说明2.1设计器材PC微机一台、TD-PIT+实验系统一套。2.2原理与说明在本次课程设计当中,本次设计采用的是软件定时(即通过汇编指令)实现的。而灯的亮与灭以及闪烁是用8255的A口和B口控制的,工作在方式0,A口和B口均为输出。并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0—基本输入/出方式、方式1一选通输入/出方式、方式2—双向选通工作方式。8255的内部结构及引脚如图2-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2-2所示。ycs图2-18255的内部结构及引脚I/OPB7-PB0I/OPA7-PA01X0PC3-PC01X0PC7-TC4140239333437 C536 C635734g3393210§255311130122913221427152616251724122319222021A4A5A6A7T.JESQL234567CCB7B6B5B4B3已pxR出UREDDDDDDDDVFEPEPEPEFE不用置位复位。复位L置位。输出L不用置位复位。复位L置位。输出L输入…令选择。方式01方式1。口高4位。输出1输入色口。输出1输入初3 6MDOOOO1111口ZIC位01234567位选择D2D1001101100011011|D7|班|D5|D4|D3|D2DLD。D,|D6D5|D4|D3|D2|DI|D0「C口低4位。输出1输入方式选择00方式。01方式1lx方式2(a)工作方式控制字(b)(a)工作方式控制字图2-2 8255工作方式控制字和C口按位置位/复位控制字格式2.3流程图及电路接线图1、软件流程图如下:图2-3软件流程图2、电路接线图如下:开LE库O1234501234567S9111111DDDDDDDDDDDDDDDD01234567开LE库O1234501234567S9111111DDDDDDDDDDDDDDDD01234567io0痘日M^^l?

能PBPBPBPBPBPBPACPA^PA^PA55元82单76543210JL0压DS

DDDDDDDDAAVRIC图2-4电路接线图3、红、黄、绿灯的表示由于仪器上面只有16个发光二级管,且从高到低依次为:D15D14D13D12D11D10D9D8D7D6D5D4D3D2DlD0o在设计的过程中做了如下的规定:R表示红灯,G表示绿灯,Y表示黄灯,E表示方向东,W表示方向西,S表示方向南,N表示方向北,例如:ER表示东方向为红灯,WG表示西方向为绿灯,SY表示南方向为黄灯,其余的类似。所以在设计中采用如下的规定:D15D14表示ER,D13D12表示SR,D11D10表示EG,D9D8表示SG,D7D6表示WR,D5D4表示NR,D3D2表示WG,D1D0表示NG,D15D14D11D10表示EY,D7D6D3D2表示WY,D13D12D9D8表示SY,D5D4D1D0表示NY。具体连线及表示如图2-5所示(圆圈表示发光二极管)。ERTONRWGSREGSGERTONRWGSREGSG以丸皿D13D12D11II IIID10ID9ID8ID7ID6ID5ID4ID3ID2ID11DO11 1 11 1物PAS吸施PA31PA21PA11PA01PB71PB61PB51PB41PB31PB21FBI1PBO图2-5红黄绿灯的表示

3详细设计由于实验中所用到的发光二极管是共阳极的,所以在为8255的A口和B口写数据时,对应的每一位有:1代表灯亮,0代表灯灭。1、 芯片初始化,写8255的方式字MOVDX,MY8255JIODE ;定义8255工作方式MOVAL,80H ;工作方式0,A口和B口为输出OUTDX,AL2、 延时,延时是通过设置指令的循环次数实现的D3:CALLDALLYD3:CALLDALLYDALLYPROCNEAR;软件延时子程序PUSHCXPUSHAXMOVCX,OFFFH;循环次数DI:MOVAX,OFFFFHD2:DECAXJNZD2LOOPDIPOPAXPOPCXRETDALLYENDPDALLY1PROCNEAR;软件延时子程序,延时20秒PUSHCXPUSHAXMOVCX,1EH ;循环次数

LOOPD3POPAXPOPCXRETDALLY1ENDPDALLY2PROCNEAR;软件延时子程序,黄灯闪烁(即亮与灭)的时间间隔,PUSHCXPUSHAXMOVCX,02H;循环次数D4: CALLDALLYLOOPD4POPLOOPD3POPAXPOPCXRETDALLY1ENDPDALLY2PROCNEAR;软件延时子程序,黄灯闪烁(即亮与灭)的时间间隔,PUSHCXPUSHAXMOVCX,02H;循环次数D4: CALLDALLYLOOPD4POPAXPOPCXRETDALLY2ENDP3、东西方向绿灯亮,3、东西方向绿灯亮,南北方向红灯亮20秒L00P1:MOVDX,MY8255.A;写A口发出的数据,东方向绿灯亮,南方向红灯亮MOVAL,3CHOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,西方向绿灯亮,北方向红灯亮MOVAL,3CHOUTDX,ALCALLDALLY1 ;延时20秒4、 东西方向黄灯闪烁,南北方向红灯亮5秒MOVCX,08H;黄灯闪烁的次数MOVCX,08H;黄灯闪烁的次数LI: MOVDX,MY8255_A;写入口发出的数据,东方向黄灯亮,南方向红灯亮MOVAL,OFCHOUTDX,ALMOVDX,MY8255_B;写入口发出的数据,西方向黄灯亮,北方向红灯亮MOVAL,OFCHOUTDX,ALCALLDALLY2MOVDX,MY8255_A;写A口发出的数据,东方向黄灯灭,南北方向红灯亮MOVAL,30HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,西方向黄灯灭,南北方向红灯亮MOVAL,30HOUTDX,ALCALLDALLY2LOOPLI5、 东西方向红灯亮,南北方向绿灯亮20秒MOVDX,MY8255_A;写0口发出的数据,东方向红灯亮,南方向绿灯亮MOVAL,0C3HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,西方向红灯亮,北方向绿灯亮MOVAL,0C3HOUTDX,ALCALLDALLY16、 东西方向红灯亮,南北方向黄灯闪烁5秒MOVCX,08H ;黄灯闪烁的次数L2:MOVDX,MY8255_A;写A口发出的数据,南方向黄灯亮,东方向红灯亮MOVAL,0F3HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,北方向黄灯亮,西方向红灯亮MOVAL,0F3HOUTDX,ALCALLDALLY2MOVDX,MY8255_A;写A口发出的数据,南北方向黄灯灭,东方向红灯亮MOVAL,OCOHOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,南北方向黄灯灭,西方向红灯亮MOVAL,OCOHOUTDX,ALCALLDALLY2LOOPL27、判断是否有键按下MOVAH,1;1号功能调用INT16H;ROMBIOS功能调用JZLOOP1;无按键则跳回继续循环,有则退出,返回到DOSMOVAX,4C00H;结束程序退出INT21H:DOS系统功能调用4设计过程1、 明确系统的设计任务要求,合理选择设计方案根据选择题目的要求,结合所参考的资料,做出合适的设计方案,选择好要使用到的芯片以及其它的电路元件。2、 完成单元电路的设计及参数计算8255的A口地址是:0DA00H+00H*4,B口地址是:0DA00H+01H*4,C口地址是:0DA00H+02H*4,控制端口地址是:0DA00H+03H*4。3、 电路元器件的选择可编程并行通信接口芯片8255Ao4、 软件流程图的绘制如图2-3所示。5、 电路接线图的绘制如图2-4所示。6、 软件的设计(程序)程序源代码见附件。7、 进行软,硬件调试将己写好的完整程序在汇编环境下进行编译,若无错误即可在TD-PIT+实验系统上进行调式。5实验结果与分析在实验室的实验台上可以看到如下的结果:1、 即东西方向的绿灯和南北方向的红灯同时点亮20秒钟;2、 20秒钟后,东西方向的黄灯闪烁5秒钟,。此时南北方向仍维持红灯点亮。3、 东西方向的黄灯闪烁5秒钟后,转为东西方向的红灯和南北方向的绿灯同时点亮20秒钟;4、 20秒钟后,转为南北方向的黄灯闪烁5秒钟,此时东西方向仍维持红灯点亮。5、 南北方向的黄灯闪烁5秒钟后,东西方向的绿灯和南北方向的红灯同时点亮20秒钟。如此循环重复。在设计过程中,由于延时是通过编写程序实现的,而程序里面是通过执行指令的次数以达到延时,切执行一条指令的时间有很难计算,所以本次设计只是大概地估计了一下延时的时间,这是一点不足之处,若采用硬件延时(比如用8253定时器)的话,也许会使延时的时间相对的准确些。6分析体会与建议通过此次课程设计,结合所学的《微机原理与接口技术》这门课程的知识,对其应用之 交通灯控制器进行设计与实现。总体感觉收获比较多,因为可以将书本上的知识应用到实践当中。刚开始的时候,翻阅了一些资料,还是没有什么头绪,后来在老师和同学的帮助下,终于找到了入口点,接下来的事情就相对的容易一些了。首先,把握整个的设计的大概的流程,然后再对每一个分快进行设计,最后进行调试。在设计的过程中,很重要的一点是要熟悉可编程并行通信接口芯片8255A的初始化及其端口的使用。此次课程设计感觉收获很多,比如,翻阅资料提高了自学能力,和同学一起讨论汲取别人的长处。希望老师能够引导学生应该如何去把握、分析课程设计的主题,找出突破点,让学生积极主动进行课程设计,以使学生更好地提高自学的能力。源代码:;8255交通灯显示实验,A口表示东、南方向,B口表示西、北方向,绿灯和红灯共同表示黄灯;****************根据查看端口资源修改下列符号值*******************IOYOEQUODAOOH;片选IOYOEQUODAOOH;片选IOYO对应的端口始地址DW256DUP(?)■.・ *^T・ *^T・ ■■・ *^T・ ^T・DW256DUP(?)MY8255.AEQUI0Y0+00H*4;8255的A口地址MY8255_BEQUI0Y0+01H*4;8255的B口地址MY8255_CEQUI0Y0+02H*4;8255的C口地址MY8255_M0DEEQUI0Y0+03H*4;8255的控制寄存器地址STACK1SEGMENTSTACKSTACK1ENDSDATASEGMENTLADB?;DATASEGMENTLADB?;定义数据变量LBDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDX,MY8255JIODE;定义8255工作方式MOVAL,80H;工作方式0,A口和B口为输出OUTDX,ALL00P1:MOVDX,MY8255_A;写LBDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDX,MY8255JIODE;定义8255工作方式MOVAL,80H;工作方式0,A口和B口为输出OUTDX,ALL00P1:MOVDX,MY8255_A;写A口发出的数据,东方向绿灯亮,南方向红灯亮MOVAL,3CHOUTDX,ALMOVDX,MY8255_B;写B口发出的数据,西方向绿灯亮,北方向红灯亮MOVAL,3CHOUTDX,ALDB?CALLDALLY1L1:MOVMOVMOVOUTMOVMOVOUTCX,08HDX,MY8255_AAL,OFCHDX,ALDX,MY8255_BAL,OFCHDX,AL;写AL1:MOVMOVMOVOUTMOVMOVOUTCX,08HDX,MY8255_AAL,OFCHDX,ALDX,MY8255_BAL,OFCHDX,AL;写A口发出的数据,东方向黄灯亮,南方向红灯亮;写A口发出的数据,西方向黄灯亮,北方向红灯亮CALLDALLY2MOVDX,MY8255_A;写A口发出的数据,东方向黄灯灭,南北方向红灯亮MOVAL,30HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,西方向黄灯灭,南北方向红灯亮MOVDX,MY8255_A;写A口发出的数据,东方向黄灯灭,南北方向红灯亮MOVAL,30HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,西方向黄灯灭,南北方向红灯亮MOVAL,30HOUTDX,ALCALLDALLY2LOOPLIMOVDX,MY8255_A;写入口发出的数据,东方向红灯亮,南方向绿灯亮MOVAL,0C3HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,西方向红灯亮,北方向绿灯亮MOVAL,0C3HOUTDX,ALCALLDALLY1MOVCX,08HL2: MOVDX,MY8255_A;写入口发出的数据,南方向黄灯亮,东方向红灯亮MOVAL,0F3HOUTDX,ALMOVDX,MY8255_B;写8口发出的数据,北方向黄灯亮,西方向红灯亮MOVAL,0F3H

OUTDX,ALCALLDALLY2MOVDX,MY8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论