汇编语言 实验八交通灯控制实验
汇编语言设计方案交通灯控制系统
合肥学院电子系微机实验课程设计任务书摘要随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的作用。
多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。
本课程设计是基于微机原理与接口技术的简单应用。
运用所学的微机原理和接口技术知识完成交通灯系统。
通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代城市交通控制与管理问题的现状,结合交通的实际情况阐述了交通灯控制系统的工作原理,给出了一种简单实用的交通灯控制系统的硬件、软件电路设计方案。
该系统适用于单主干道的十字路口,。
现假定其主干道为东西方向,次干道为南北方向。
可随意进行更改双向的通行时间,该功能能实现加中断控制和手动控制的方式进行,红绿灯切换时有闪烁功能以警示车辆和行人将进行红绿灯切换。
当有交通堵塞或紧急状况时可进行中断手动控制,使交通安全与交通流畅度得以保证。
关键词:延迟 8255 交通灯控制设计AbstractWith the development of electronic technology, computers in the development of modern science and technology play an increasingly importantEffect Multimedia technology, network technology, intelligent information processing technology, control technology from the applicationData Mining and processing and so can not do without the computer. The course design is based on Microcomputer Principle and Interface Technology for simple applications.The use of the computer science principles and technical knowledge to complete the interface traffic light systemThrough a combination of hardware and software, We have just learned to use the assembly language program to simulate the conditions of modern urban traffic control and management of the status quo,The actual situation with traffic light control system described working principle,A simple and practical given the traffic light control system hardware, software The system is suitable for a single main road intersection,. It is assumed that the direction of the east-west trunk road, secondary roads for the north-south direction. Two-way free passage of time changesThis feature can achieve plus interrupt control and manual control of the way, Flashing traffic light switching functions as a warning to vehicles and pedestrians will be traffic lights switch.When there is traffic congestion or an emergency manual control can be interrupted, so that the degree of traffic safety and traffic flow can be guaranteed.Key words: Delayed Traffic Light Control Design 8255目录第一部分引言.......................................第二部分交通灯设计的简介......................第三部分交通灯的设计案.......................第四部分交通灯系统的安装与调试.................第五部分程序流程图.................................第六部分设计过程与总结...........................第七部分附源程序..................................第八部分参考文献资料..............................第一部分引言电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。
交通灯汇编语言课程设计资料
( 5)闯红灯报警系统(用开关代替红外设备进行模拟)
五、 结论与心得 通过这次课程设计,加深了对很多知识的理解,自己做一个东西的时候,才
会知道理论与实际的差别。 这过对交通灯的设计, 也学到了很多原来不熟悉或没 有掌握好的知识,像查询及其数码管的应用。 对于肯本上的指令理解的更深入了, 原来没有记住的指令,通过这次设计,都能熟悉的运用。
。
1、设计任务与要求的分析 对于具体过程的分析:东西南北红灯( 2S)东西绿南北红( 20S)东西绿灯 闪烁( 3S)东西黄灯亮( 1S)南北绿灯亮( 20S)南北绿灯闪烁( 3S)南北黄灯 亮( 2S) . 上述思路可分为两个循环:一个是在南北绿灯亮之前,南北红灯一直 亮着( 25S)随后是南北灯亮的过程中东西红灯一直亮着( 25S)。分别用数码管 定时 20S,25S 记录红灯和绿灯持续时间。 25 秒后南北方向的持续情况与东西对 调.这样就完成了一次整体循环。 二、 软件设计 1、显示原理 交通信号灯控制逻辑如下: 假设一个十字路口为东西南北走向。 开始为四个 路口的红灯全部亮之后 , 东西路口的绿灯亮 , 南北路口的红灯亮 , 延时一段时间后 , 东西路口的绿灯 , 闪烁若干次后( 3 秒),东西路口的绿灯熄灭,同时东西路口的 黄灯亮 , 延时一段时间后( 2 秒) , 东西路口的红灯亮 , 南北路口的绿灯亮 , 延时一 段时间后 , 南北路口的绿灯闪烁若干次后( 3 秒) , 南北路口的绿灯熄灭,同时南 北路口的黄灯亮,延时一段时间后( 2 秒) , 再切换到东西路口的绿灯亮 , 南北路 口的红灯亮 , 之后重复以上过程。
目录
一、设计任务与要求 ………………………………………………………………… .1
1、设计任务与要求的分析…………………………………………………… 1
汇编语言交通灯控制系统设计
交通灯控制系统一、设计要求1.东西方向车辆放行60秒钟。
即东西方向的绿灯和南北方向的红灯同时点亮1分钟;2.1分钟后,东西方向的黄灯闪烁5秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
在南北方向亮红灯期间,在2位数码管上显示计数值(每秒减1),从60减为0。
3.东西方向的黄灯闪烁5秒钟后,转为南北方向放行20秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮20秒钟;4.南北方向放行20秒钟后,转为南北方向的黄灯闪烁5秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的黄灯闪烁5秒钟后,再转为东西方向车辆放行1分钟。
如此循环重复。
二、设计目的⒈了解交通灯管理的基本工作原理⒉熟悉8259A中断控制器的工作原理和应用编程⒊熟悉8255A并行接口的各种工作方式和应用⒋熟悉8254计数器/定时器的工作方式及应用编程,掌握利用软硬件相结合定时的方法⒌掌握多位LED显示问题的解决三、程序设计流程图主程序流程图,如下图所示。
装入计数初值支路拐走四、总体设计和电路图Ⅰ.芯片选择及端口选择1.用实验系统8255A实现对信号灯的控制(所用端口自定);2位数码显示用8255A实现控制。
2. 用实验系统8254的计数器2定时向实验系统主片8259A的IRQ7请求中断,以实现要求的1分钟、5秒钟和20秒的定时。
实验系统8254的计数器2的CLK2接OPCLK,频率为1.19318MHZ;GATE2已接+5V;定时采用软硬件相结合的方式实现。
⒊用实验系统的发光二极管模拟红绿灯。
注:8259A的端口地址为:218H、219H8255A的端口地址为:端口A-200H、端口B-201H、端口C-202H、控制端口-203H8254的端口地址为:计数器0-208H、计数器1-209H、计数器2-20aH、控制寄存器0-20bH。
Ⅱ.设计电路图图2-1 交通灯实时控制系统8255原理图图2-2 中断服务原理图图2-3 中断服务电路接线图图2-4电路连线图Ⅲ..交通灯程序本次设计中,选用8254的计数器0定时向实验系统主片8259A的IRQ0请求中断。
单片机实验报告(汇编语言+交通灯+工业控制等)
单片机应用技术实验报告BCD码加法一、实验内容编写一个程序实现多位BCD码加法。
假设单片机RAM中20H和30H中放着BCD码加数和被加数,结果放在20H开始的单元中。
要求考虑进位问题。
二、实验源程序ORG0630HMOV R0,#20HMOV R1,#30HMOV A,R7;R7中放着加数的个数MOV R6,A;R6中放置最后结果CLR CLOOP:MOV A,@R0;取加数ADDC A,@R1DA A;十进制加法调整MOV@R0,A;把结果送回20H开始的单元INC R0INC R1DJNZ R7,LOOPJC NEXT1;如果最后一次加法有进位,跳转到NEXT1SJMP NEXT2NEXT1:MOV@R0,#1;R0中放置进位INC R6NEXT2:NOPEND三、实验小结这个BCD码加法实验在编程是,遇到些语法小问题,后来在同组同学的探讨下纠正了过来。
当程序运行正确时我们有一种成就感,很高兴。
实验名称:P3.3输入、P0口输出一、实验内容(1)P3.3口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加一。
(2)P1口做输出口,编写程序,使P1口接的8个发光二极管L1—L8按16进制加一方式点亮发光二极管。
二、实验说明(1)P1口是准双向口,它作为输出口时与一般的双向口使用方法相同,由准双向口结构可知:当P1口作为输入口时,必须先对它置高电平,使内部MOS管截止,因内部上拉电阻是20KΩ—40KΩ,故不会对外部输入产生影响。
(2)延时子程序的延时计算问题。
对于延时程序DELAY:MOV R6,#00HDELAY1:MOV R7,#80HDJNZ R7,$DJNZ R6,DELAY1MOV、DJNZ指令均需用两个机器周期,而一个机器周期时间长度为12/6.0MHZ,所以该段指令执行时间为:((80+1)×256+1)×2×(12÷6000000)=132.1ms三、实验步骤(1)P3.3用插针连至K1,P1.0—P1.7用插针连至L1—L8。
简单交通灯实验 C语言 汇编语言
值得和即为另外一个方向红灯的时长。
上述两个程序的写法可以相互结合,在汇编语言编写的程序中,使用的是对 位进行赋值的方式控制的,书写麻烦,但是易懂。C 语言使用的是对 P 口进行赋 值,书写简单,可读性稍差。
4
delay(nbhd); P2=0X2D; //东西绿灯,南北红灯
delay(dxld); P2=0X2B; //东西黄灯,南北红灯
delay(dxhd);
}
} 注意:因为一个方向绿灯与黄灯的时长正好等于另外一个方向红灯的时长,因此
在程序开头进行定义时,仅仅定义了东西和南北方向绿灯与黄灯的时长,这两个
1
在进行原理图搭建的过程中需要注意: 1 发光二极管的极性。如果发光二极管在电路中接反了,即使程序正确,也 无法点亮发光二极管。只有当发光二极管中的电流充阳极流到阴极的时候,才能 点亮发光二极管。可以将原理图中发光二极管的的三角形看做箭头,只有电流沿 着箭头方向流动,才可以点亮发光二极管。 2 分压电阻。发光二极管最好串联分压电阻,否则在仿真软件中,单片机引 脚的电平状态显示将错误(注意:即使不添加也不影响发光二极管的点亮状态, 最好添加)。在实物制作时,由于单片机引脚的驱动能力有限,因此即使不串联 分压电阻,也可以。另外分压电阻的阻值需要注意,不可以太大,太大会导致发 光二极管不亮或者发光较暗。在仿真软件中设置为 200Ω 就可以。 3 交通灯组件。在进行交通灯实验时,可以不适用带颜色的数码管,直接使 用交通灯组件,这样绘制电路图非常方便。交通灯组件的关键词是“traffic lights”。 该组件使用的是正逻辑驱动,也就是说当引脚的电平为高电平时,旁边对应的 LED 点亮。 在上述原理图中,我将发光二极管组成的交通灯以及交通灯组件组成的交通 灯放在一个仿真原理图中(东西方向用 LED 灯绘制,南北方向用交通灯组件绘 制),读者如果需要使用相同的交通灯组件,只需要直接修改原理就可以,程序 不需要修改。 虽然交通灯的点亮状态有 3 种,但是将东西和南北的点亮状态组合却又 4 种,在编程的时候需要注意。控制流程:东西红灯,南北绿灯→东西红灯,南北 黄灯→东西绿灯,南北红灯→东西黄灯,南北红灯→······
单片机交通灯实验汇编语言程序
单片机交通灯实验汇编语言程序经过几天的整理,终于将网络上得到交通灯仿真文件,用汇编自己编写了一个程序,实验结果完全符合本人的思路,实验成功。
程序比较长,估计还会用更好的办法重新写。
编写心得是:单片机编程,不一定要背指令,用时可以查,也不必去默写子程序,用时还是可以查,但是,很关键的就是,你的程序,你自己要清楚整个的执行过程,也就是单片机的执行流程。
而在实际的应用中,要注意驱动电路的设计,特别是单片机上电复位输出高电平可能造成的影响。
程序如下:如果网页显示格式错乱可从51hei/f/jtda.rar 处下载. ORG 0000HSTART:MOV R2,#30SU0:MOV P0,#00HMOV P1,#00HMOV P2,#00HMOV P3,#00111111BMOV A,R2MOV R4,AMOV A,R4MOV R0,AMOV B,#5DIV ABMOV B,#3MUL ABMOV R1,ASETB P0.4SETB P0.7SETB P2.2SETBP2.5AJMP KEYSU1A: DEC R0DEC R1SUL5: CJNE R1,#5,SUL6SETB P2.7SUL6: CJNE R1,#4,SUL7SETB P2.7SUL7: CJNE R1,#3,SUL1SETB P2.7SUL1: CJNE R1,#2,SUL2SETB P2.7SUL2: CJNE R1,#1,SUL3SETB P2.7SUL3: CJNE R1,#0,SUL4MOV A,R0MOV R1,ACLR P2.5CLR P0.7SETB P0.5SETB P2.4SUL4: CJNE R0,#0,KEYAJMP SU0BKEY: JB P3.5,KEY1 LCALL DELAY MOVR2,#45KEY1:JB P3.2,KEY2 LCALL DELAY MOV R2,#60KEY2:JB P3.3,KEY3 LCALL DELAY MOV A,R2 ADD A,#5 MOV R2,A CJNE R2,#95,DD MOVR2,#95KEY3:JB P3.4,DD LCALL DELAY MOV A,R2 SUBB A,#5 MOV R2,A CJNE R2,#0,DD MOV R2,#0DD:MOV R3,#50;数码1DD1: MOV P1,#00H MOV A,R0 MOV B,#10 DIV AB MOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,A SETB P0.0 LCALL DELAY1 CLR P0.0 MOV A,B MOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,A SETB P0.1 LCALL DELAY1 CLR P0.1;数码2 MOV。
8086汇编语言-模拟交通灯_实验报告
计算机接口技术实验模拟交通灯控制一、实验目的:综合运用接口芯片,提高实践能力。
二、实验设备:TDN86/51教学实验系统一台。
三、实验要求:自行设计实验电路,独立编写程序,实现模拟交通灯控制系统。
模拟交通灯有三个状态往复循环:1、初始时,东西方向的绿灯亮,同时,南北方向及人行道上的红灯全亮。
持续5S。
2、然后,南北方向的绿灯亮,同时,东西方向及人行道上的红灯全亮。
持续8S。
3、最后,人行道方向的绿灯亮,同时,东西方向及南北的红灯全亮。
持续6S。
四、实验步骤:1. 系统分析:根据TDN86/51教学实验系统中的LED单元进行的约定如下:状态1时LED单元的状态如下:即1000 0111B=87H状态2时LED单元的状态如下:2即0100 1011B=4BH状态1时LED单元的状态如下:即0011 1100B=D3H电路连接如下图:2. 芯片工作状态分析:8253:芯片端口地址:40H~43H。
工作在方式0,0号计数器,工作方式命令字:30H。
CLK0为1.19MHZ,故最大计数时间为:65536/(1.19x106) =55ms。
可令其产生50ms定时,计数初值约为:0.05x1.19x106=59500。
从而,5s定时外循环次数为100次,8s定时外循环次数为160次,6s定时外循环次数为120次。
8259:芯片端口地址:20H、21H实验IRQ0中断,初始化时需要开IRQ0中断。
8255:芯片端口地址:60H~63HA口工作在方式0状态,输出,工作方式控制字:80H。
3. 程序流程图:主程序流程图:IRQ0中断服务程序流程图:五、实验程序源代码:STACK SEGMENT STACKDW 64 DUP (?)STACK ENDSCODE SEGMENTASSUME CS:CODESTART:CLI ;关中断,开始填0中断矢量PUSH DSMOV AX,00H ;填偏移量MOV DS,AXMOV AX,OFFSET IRQ0ADD AX,2000HMOV SI,20HMOV [SI],AXMOV AX,00H ;填CS段基址MOV SI,22HMOV [SI],AXPOP DSIN AL,21H ;读8259中断屏蔽字AND AL,0FEH ;开中断0OUT 21H,ALMOV AL,80H ;初始化8255OUT 63H,ALMOV AL,30H ;初始化8253OUT 43H,ALMOV AL,0FFH ;循环前把所有的灯关闭OUT 60H,ALA0:MOV CX,100 ;开始进入1状态,CX初值为100A1:MOV AX,59500 ;8253载入初值OUT 40H,ALMOV AL,AHOUT 40H,ALMOV AL,87H ;状态1的数据存入AL,等待输出STI ;开中断HLT ;停机等待中断LOOP A1 ;根据CX的值循环本状态MOV CX,160 ;开始进入2状态,CX初值为160A2:MOV AX,59500 ;8253载入初值OUT 40H,ALMOV AL,AHOUT 40H,ALMOV AL,4BH ;状态2的数据存入AL,等待输出STIHLTLOOP A2MOV CX,120 ;开始进入3状态,CX初值为120 A3:MOV AX,59500OUT 40H,ALMOV AL,AHOUT 40H,ALSTIHLTLOOP A3JMP A0IRQ0: ;中断服务程序OUT 60H,AL ;输出AL数据到8255,改变灯状态MOV AL,20H ;发EOIOUT 20H,ALIRET ;中断返回CODE ENDSEND START。
交通信号灯控制系统(汇编语言课程设计)
汇编语言课程设计交通信号灯控制系统初始界面:实现功能齐全。
思路清晰~~~~~~~~~~~~一、设计要求利用PC机键盘和屏幕实现交通灯信号灯,控制系统。
二、设计内容与要求基本要求:1、完成一个十字路口的红绿灯正常状态的控制:实现日常生活中正常的交通路口的控制功能,实现南北、东西方向的切换。
2、显示时间,精确到秒;灯亮时间长短可变。
3、具有自动和手动控制功能。
提高要求:1、完成夜间状态的控制:由于夜间车辆和行人很少,实现南北、东西方向的黄灯闪烁,进入夜间控制状态。
2、完成紧急状态的控制:南北双方向都设置为红灯,利于执行紧急公务。
3、完成交通堵塞状态的控制:由于交通事故等原因出现南北或东西某一方向堵塞,可人为地调整每个方向的红灯时间,进入手动控制状态。
附加要求:必要的辅助功能(设置、修改等)。
三、编程提示要求用汇编语言进行编程,下面是编写过程中主要涉及的知识点(其中举例只是实现方法之一,同学可根据自己对知识的掌握情况进行设计并调试):1、视频显示程序设计:一般由DOS 或BIOS调用来完成。
有关显示输出的DOS功能调用不多,而BIOS调用的功能很强,主要包括设置显示方式、光标大小和位置、设置调色板号、显示字符、显示图形等。
用INT 10H即可建立某种显示方式。
用DOS功能调用显示技术,把系统功能调用号送至AH,把程序段规定的入口参数,送至指定的寄存器,然后由中断指令INT 21H来实现调用,例:要输出多于一个字符时,利用DOS功能调用9。
2、键盘扫描程序设计:检测键盘状态,有无输入,并检测输入各值。
例:利用DOS系统功能调用的01号功能,接受从键盘输入的字符到AL寄存器。
3、定时器中断处理程序:在此中断处理程序中,计数器中断的次数记录在计数单元count中,由于定时中断的引发速率是每秒18.2次,即计数一次为55ms,当count计数值为18时,sec计数单元加一(为1秒)。
例:在系统定时中断处理程序中,有一条中断指令INT 1CH指令,在ROM BIOS中,1CH的处理仅一条IRET指令,实际上它并没有做任何工作而只是为用户提供了一个软中断类型号,所以INT 1CH指令每秒也将执行18.2次,设计中可用这个定时周期性工作的处理程序来代替原有的1CH程序,实现定时。
简易交通灯报告(附源程序——汇编语言)
题目:简易交通灯一、设计目的利用TDN微机原理试验箱及单元电路,实现对一道路交通灯的控制。
当通过车辆计数达到50时,绿灯灭,红灯亮,同时数码块倒计时若干秒(此次设计中设为9秒)。
此时,车辆停止,行人可以通过。
二、参加人员及分工李——试验报告霍——调试程序洪——编写程序三、技术要求1、设计完成交通灯的电路2、采用TDN试验箱上的8255、8259、8253完成3、程序设计中采用软件延时四、试验器材TDN-MD86/51实验箱一台,8253一片,8255一片,8259一片,数码管一组,发光二极管一组。
五、设计和调试环境TDN-MD86/51教学试验系统六、题目分析、工作原理、设计思想题目分析我们所做的交通灯是控制单路口处车辆和行人的通过及停止的简易交通灯。
因此需要两个灯和一块用于显示倒计时的数码块来控制车辆和行人的通行、停留问题。
其中两个灯分为红绿色,主要根据两只灯的亮灭情况来控制车辆,当红灯灭绿灯亮的时候车辆可以通过,而红灯亮绿灯灭时车辆就要停止通行。
数码块用于显示倒计时的时间以控制人,当倒计时开始时人通行,倒计时结束后行人就要等待。
根据题目分析得出以下设计思想及工作原理:设计思想在一开始启动交通灯时设置为红灯灭绿灯亮,让车辆先通行,行人等待,当通过50辆车后,红绿灯都同时灭然后红灯亮绿灯灭且数码快开始倒计时,此时为行人通行时间。
然后当数码块倒计时到0时行人通行的时间结束。
转而红灯灭绿灯亮又改为车辆通行时间。
红绿灯和数码块如此反复工作就构成的交通灯。
工作原理通过向8259写入程序来控制其他器件的工作。
在程序一开始写入中断向量和各芯片的控制方式字,以确保发生中断是正确的响应中断及芯片正确的工作状态。
接下来的程序就是控制8255和8253,8255选择工作方式1,A、B、C、口都做基本的输入输出。
通过8255A 口先让红灯灭绿灯亮。
8253选择工作方式2:计数停止中断,通过8253对车辆的计数达到50辆车是就发出中断请求。
交通灯 (汇编语言)
——交通灯设计人:张玉印200800800439李娜200800800099一、设计目标:设计一个工作于支、干路交叉处的交通灯系统,支道和干道各有一组交通灯,依次为绿、黄、红。
主干道红灯20秒、黄灯4秒、红灯14秒,支干道绿灯10秒、黄灯4秒、红灯24秒。
主要功能:1、每一时间段内两组数码管都只有一个灯亮,并且颜色不同,能够实现数码管倒计时计时到零时能够自动的转换成下一个阶段,四个阶段交替周期进行。
2、在道路出现紧急情况时,能够手动中断控制使主道和支道的交通灯都变成红灯,并且紧急情况排除后能够手动控制恢复到原来中断前的状态有序执行。
3、能够报警,根据特殊情况的分类报警器(蜂鸣器)的发生的频率不一样,蜂鸣器的频率能够通过旋钮手动调节。
一、实验器材唐都TS-PITE试验箱,用到的芯片单元有8254单元.、8255单元、8259单元、LED显示单元、数码管显示单元、单脉冲产生单元、A/D 0809转换单元、蜂鸣器单元、时钟源。
二、实验原理与方法:1.、8259工作原理1、数据总线缓冲器:8259A与系统数据总线的接口,是8位双向三态缓冲器。
CPU与8259A之间的控制命令信息、状态信息以及中断类型信息,都是通过缓冲器传送的。
2、读/写控制逻辑:CPU通过它实现对8259A的读/写操作。
中断请求寄存器IRR:8位,用以分别保存8个中断请求信号,当响应的中断请求输入脚有中断请求时,该寄存器的相应位置1。
3、在试验中应用到8259的MIR7中断申请口,首先写入中断向量表中,将中断申请口接在KK1+上。
通过手动按下KK1+来决定是否产生中断。
4、中断子程序中必须用STI开中断否则会影响下一个中断的响应。
2、8254的工作原理1)8254是可编程的计数器/定时器,其内部有三个独立的16位计数器/定时器通道,每个计数器通道均可按6种不同的方式工作,并且都可以按二进制或十进制计数。
其CLK0~CLK2是计数器0~2的时钟脉冲输入端, GATE0~GATE2是门控脉冲输入端, OUT0~OUT2是输出端。
微机原理交通灯控制系统设计实验.
微机原理与汇编语言综合性实验交通灯控制系统设计学号姓名班级微机原理与汇编语言综合性实验任务书实验项目名称:交通灯控制系统设计课程名称:微机原理与汇编语言面向专业:信息与计算科学专业计划学时:4学时=实验课内2学时+实验课外2学时实验类型:√综合设计实验目的:掌握典型数字接口电路的应用技术原理,掌握常用接口芯片在应用系统中的硬件电路连接原理和软件编程方法。
实验要求:包括开发环境要求,技术文档要求两部分。
开发环境要求:软件环境:windows98/windowsXP/windows2000,emu8086环境硬件环境:计算机(Pen4CPU, 256MRAM,60G以上硬盘,输入输出设备)技术文档要求:按照实验报告编写要求进行。
要求流程图绘制规范,软、硬件功能描述清晰,实验总结深刻。
实验内容:1 熟悉并行接口、中断控制器、定时器的工作原理及相关芯片。
2 掌握数字接口电路设计应用原理,根据系统功能用汇编语言编写相关程序。
3 与单片机实验箱结合,选择合适的芯片,按照实验要求连接电路。
并在系统中输入程序,运行并观察结果。
也可在emu8086环境中运行编译好的的程序,通过系统模拟,在模拟窗口中观察交通信号灯的变化,得出相关结论。
实验方案(任务提示):按照时间控制原则,利用并行接口和定时器,采用时间中断方式设计电路。
按照系统板上硬件连线要求,在QTH-8086B16位微机教学实验仪上连好相关线路并将实验仪与PC机连好。
也可在proteus环境下设计硬件原理图,搭建硬件电路。
根据软件设计的程序流程编写源程序,可自行控制通行时间、禁止时间及准备时间,周而复始。
再将源程序在相应的环境中进行编译连接和运行,或者仿真调试,以实现控制交通灯的功能。
实验仪器设备:每个学生一台计算机、QTH-8086B 16位微机教学实验仪、或者emu8086实验模拟系统。
实验报告版式要求:A4纸张打印;上下页边距各2.5cm,左右页边距各3.0cm,页眉1.5cm页脚1.75cm;页码位于页脚居中打印;奇数页页眉“微机原理与汇编语言综合性实验”,偶数页页眉“交通灯控制系统设计”,页眉宋体小5号,一级标题:黑体三号粗体字;二级标题:黑体4号;三级标题黑体小4号,正文,宋体5号。
交通灯汇编语言课程设计资料
源程序如下: DISPLAY: ; 数码显示 MOV A, SECOND1东; 西秒寄存器 MOV B, #10; 拆成两个 10 进制数 DIV AB MOV DBUF+1,A MOV A,B MOV DBUF, A MOV A, SECOND2 MOV B, #10 ;16 进制数拆成两个 10 进制 DIV AB MOV DBUF+3, A MOV A,B MOV DBUF+2, A MOV R0,#DBUF MOV R7,#4 DP10: MOV DPTR,#LEDMAP MOV A,@R0 MOVC A,@A+DPTR MOV @R1,A INC R1 DJNZ R7,DP10 MOV R0,#TEMP MOV R1,#4 DP12: MOV R7,#8 MOV A,@R0 DP13: RLC A MOV DIN,C CLR CLK SETB CLK DJNZ R7,DP13
( 5)闯红灯报警系统(用开关代替红外设备进行模拟)
五、 结论与心得 通过这次课程设计,加深了对很多知识的理解,自己做一个东西的时候,才
会知道理论与实际的差别。 这过对交通灯的设计, 也学到了很多原来不熟悉或没 有掌握好的知识,像查询及其数码管的应用。 对于肯本上的指令理解的更深入了, 原来没有记住的指令,通过这次设计,都能熟悉的运用。
交通灯控制实验报告
一、实验目的1. 理解交通灯控制系统的工作原理和基本组成。
2. 掌握PLC(可编程逻辑控制器)编程和调试方法。
3. 学习交通灯控制系统的硬件连接和电路设计。
4. 提高实际应用中解决复杂问题的能力。
二、实验原理交通灯控制系统是城市交通管理的重要组成部分,其基本原理是通过对交通信号灯进行控制,实现交通流量的有序疏导。
本实验采用PLC作为控制核心,通过编写程序实现对交通灯的定时控制。
三、实验器材1. PLC主机2. 交通灯控制模块3. 电源模块4. 交通灯模型5. 连接线四、实验步骤1. 硬件连接:- 将PLC主机与交通灯控制模块、电源模块和交通灯模型连接。
- 将PLC主机与计算机连接,以便进行程序编写和调试。
2. 程序编写:- 根据交通灯控制要求,编写PLC程序。
- 程序主要包括以下部分:- 启动信号处理:检测启动开关状态,控制交通灯开始工作。
- 定时控制:根据设定的时间,控制交通灯的红、黄、绿灯亮灭。
- 紧急处理:检测紧急处理开关状态,实现交通灯的紧急控制。
3. 程序调试:- 在计算机上运行PLC程序,观察程序运行效果。
- 根据实际情况,对程序进行调试和优化。
4. 实验验证:- 在实际硬件环境中运行程序,观察交通灯控制效果。
- 验证程序是否满足实验要求。
五、实验结果与分析1. 实验结果:- 在实验过程中,成功实现了交通灯的控制,实现了红、黄、绿灯的定时切换。
- 在紧急情况下,能够实现交通灯的紧急控制。
2. 结果分析:- 通过实验,掌握了PLC编程和调试方法,提高了实际应用中解决复杂问题的能力。
- 实验结果表明,所设计的交通灯控制系统具有良好的稳定性和可靠性。
六、实验总结本次实验成功实现了交通灯控制系统的设计与实现,达到了预期目标。
通过实验,我们掌握了以下知识点:1. 交通灯控制系统的工作原理和基本组成。
2. PLC编程和调试方法。
3. 交通灯控制系统的硬件连接和电路设计。
本次实验提高了我们的实际应用能力,为以后从事相关领域工作奠定了基础。
实验八交通灯控制电路的设计
特殊灯光信号
在某些情况下,交通灯还具 有特殊的灯光信号,如左转 箭头、行人过街等,以满足 不同交通需求。
控制电路设计思路
微控制器核心
采用微控制器作为控制核心,通过编程 实现交通灯灯光信号的时序控制。
输出驱动电路
设计合适的输出驱动电路,以驱动交 通灯的LED或灯泡,确保灯光信号的
稳定性和亮度。
输入信号处理
经验教训分享
电路设计需严谨
在电路设计时,应充分考虑元器件的选型、布局 和连接方式,确保电路的稳定性和可靠性。
调试过程需耐心
在电路调试过程中,遇到问题时需保持冷静,耐 心分析并逐一排查故障,确保电路的正常运行。
团队协作很重要
在实验过程中,团队成员之间应充分沟通、协作 配合,共同解决问题,提高工作效率。
问题诊断及优化措施
问题诊断
针对仿真结果中不符合设计要求的部分,进行问题诊断,找出 可能的原因,如元器件参数不合适、电路连接错误等。
优化措施
根据问题诊断的结果,采取相应的优化措施,如调整元器件参数、修 改电路连接方式等,以提高交通灯控制电路的性能和稳定性。
再次仿真测试
对优化后的交通灯控制电路进行再次仿真测试,验证优化 措施的有效性,并记录优化后的仿真结果。
06
实验总结与展望
实验成果总结
交通灯控制电路的成功设计
通过合理的电路设计和元器件选择,成功实现了交通灯的红黄绿 灯光控制,且运行稳定可靠。
实Hale Waihona Puke 了定时控制功能通过内置的定时器模块,实现了交通灯的定时控制,使得灯光能够 按照设定的时间间隔进行切换。
完成了实验报告与演示
详细记录了实验过程、数据分析、电路图及实验结果,并进行了实 验演示,验证了交通灯控制电路设计的可行性。
单片机之交通灯汇编语言设计
单片机控制交通灯源程序:DISPLAY11 EQU 40H ; 东西显示码缓冲区1 DISPLAY12 EQU 41H ; 东西显示码缓冲区2 DISPLAY21 EQU 42H ;南北显示码缓冲区1 DISPLAY22 EQU 43H ;南北显示码缓冲区2 ORG 0000H SJMP MAIN ORG 0003H ;外部中断0入口入口LJMP PINT0 ORG 0013H ;外部中断1入口入口LJMP PINT1 MAIN:MOV SP,#60H ;设栈底;设栈底MOV IE,#85H ;外部中断0、外部中断1设置设置 S0:MOV R0,#20 MOV R1,#80 MOV P1,#21H ;点亮东西左转绿灯;点亮东西左转绿灯SETB P3.0 CLR P3.1 CLR P3.4 SETB P3.5 LP0:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R0,#6, LP0 ;R0﹥6,转LP0 MOV R3, #0 LP1:CPL P1.0 ;绿灯闪烁3次LCALL DISP LCALL DELAY1 INC R3 CJNE R3,#2, LP1 MOV R3, #0 DEC R0 DEC R1 CJNE R0,#3, LP1 ;R0﹥3,转LP1 S1:MOV P1,#22H ;点亮东西左转黄灯点亮东西左转黄灯LP2:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R0,#0, LP2 ;R0﹥0,转LP2 S2:MOV P1,#0CH ;点亮东西绿灯点亮东西绿灯MOV R0,#60 LP3:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R0,#6, LP3 ;R0﹥6,转LP3 MOV R3, #0 LP4:CPL P1.0 ;绿灯闪烁3次LCALL DISP LCALL DELAY1 INC R3 CJNE R3,#2, LP4 MOV R3, #0 DEC R0 DEC R1 CJNE R0,#3, LP4 ;R0﹥3,转LP4 S3:MOV P1,#14H ;点亮东西黄灯点亮东西黄灯LP5:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R0,#0, LP5 ;R0﹥0,转LP5 S4:MOV R0,#60 MOV R1,#20 MOV P1,#64H ;点亮南北左转绿灯点亮南北左转绿灯CLR P3.0 CLR P3.1 CLR P3.4 SETB P3.5 LP10:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R1,#6, LP10 ;R1﹥6,转LP10 MOV R3, #0 LP11:CPL P1.6 ;绿灯闪烁3次LCALL DISP LCALL DELAY1 INC R3 CJNE R3,#2, LP11 MOV R3, #0 DEC R0 DEC R1 CJNE R1, #3, LP11 ;R1﹥3,转LP11 S5:MOV P1, #0A4H ;点亮南北左转黄灯点亮南北左转黄灯LP12:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R1, #0, LP12 ;R1﹥0,转LP12 S6:MOV P1, #24H ;点亮南北绿灯点亮南北绿灯SETB P3.0 SETB P3.1 CLR P3.4 CLR P3.5 MOV R1, #40 LP13:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R1,#6, LP13 ;R1﹥6,转LP13 MOV R3, #0 LP14:CPL P1.0 ;绿灯闪烁3次LCALL DISP LCALL DELAY1 INC R3 CJNE R3,#2, LP14 MOV R3, #0 DEC R0 DEC R1 CJNE R1,#3, LP14 ;R0﹥3,转LP14 S7:MOV P1, #24H ;点亮南北黄灯点亮南北黄灯SETB P3.0 CLR P3.1 SETB P3.4 CLR P3.5 LP15:LCALL DISP LCALL DELAY DEC R0 DEC R1 CJNE R1,#0, LP15 ;R0﹥0,转LP15 LJMP S0 DISP :MOV A,R0 ;东西时间显示(CD4511) MOV B,#1 0 DIV AB SW AP A MOV DISPLAY11, A MOV DISPLAY12, B ANL DISPLAY11, 0F0H ANL DISPLAY12, F0H MOV A, DISPLAY11 ORL A, DISPLAY12 MOV P0, A MOV A, R1 ;南北时间显示(CD4511) MOV B,#1 0 DIV AB SW AP A MOV DISPLAY21, A MOV DISPLAY22, B ANL DISPLAY21, 0F0H ANL DISPLAY22, F0H MOV A, DISPLAY21 ORL A, DISPLAY22 MOV P2, A RET DELA Y:MOV R5,#05H ;1S延时(6MH Z晶体)晶体)K1:MOV R6,# 200 K2:MOV R7,#248 NOP K3:DJNZ R7, K3 DJNZ R6, K2 DJNZ R5, K1 RET DELAY1:MOV R5, #05H ;0.5S延时延时K11:MOV R6, #100 K12:MOV R7, #248 NOP K13:DJNZ R7, K13 DJNZ R6, K12 DJNZ R5, K11 RET PINT0:PUSH 90H ;中断子0程序,紧急情况(东西通行),保存P1口原来状态口原来状态 PUSH B0H ;保存P3口原来状态口原来状态MOV P1,#0CH ;点亮东西绿灯点亮东西绿灯SETB P3.0 CLR P3.1 CLR P3.4 SETB P3.5 POP B0H POP 90H PINT1:PUSH 90H ;中断子1程序,紧急情况(南北通行),保存P1口原来状态口原来状态PUSH B0H ;保存P3口原来状态口原来状态 MOV P1, #24H ; 点亮南北绿灯点亮南北绿灯 SETB P3.0 SETB P3.1 CLR P3.4 CLR P3.5 POP B0H POP 90H RETI END S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 P1= 21H P1= 2 P1= 2 P1= P1= P1= P1= P1= P1= P1= P1= P1= P3= 9FH P3= 9FH P3= 9FH P3= 9FH P3= 9FH P3= 9FH P3= 8FH P3= 8FH P3= 8FH P3= 3FH P3= P3= 5FH S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 P1.0 1 闪0 0 0 0 0 0 0 0 0 0 P1.1 0 0 1 0 0 0 0 0 0 0 0 0 P1.2 0 0 0 1 1 1 1 1 1 1 1 1 P1.3 0 0 0 1 闪0 0 0 0 0 0 0 P1.4 0 0 0 0 0 1 0 0 0 0 0 0 P1.5 1 1 1 0 0 0 1 1 1 1 1 1 P1.6 0 0 0 0 0 0 1 闪0 0 0 0 P1.7 0 0 0 0 0 0 0 0 1 0 0 0 P3.4 1 1 1 1 1 1 0 0 0 1 1 1 P3.5 0 0 0 0 0 0 0 0 0 1 闪0 P3.6 0 0 0 0 0 0 0 0 0 0 0 1 P3.7 1 1 1 1 1 1 1 1 1 0 0 0 初始值:P1=21H P3=9FH 。
汇编语言交通灯程序及专周报告
一、实验名称:单片机设计交通灯二、实验目的1、巩固单片机基础,利用所学单片机知识编写程序。
2、掌握单片机的编程调试过程。
三、设计要求:1、A、B 两路各放行60S,并在数显管上显示各路通行标。
2、绿灯最后5S闪烁。
3、绿灯到红灯间有黄灯并闪4S。
4、在数显管上显示剩余时间。
四、硬件、软件的设计原理1、硬件设计图:见附页。
2、硬件设计说明:(1)、用单片机的P1口接6只二极管模拟交通灯,P1口先输入高电平熄灭星号灯,输出低电平点亮信号灯。
P1口线控制功能及相应控制码如表:(2)用单片机P0口皆数显管闲事剩余时间。
3、软件设计说明;(1)、软件设计思路1)、主程序主要采取调用子程序,由R7寄存器确定交通灯的各时间,并用它来做子减一坐到倒计时和各红灯的剩余时间是否到0,并用RS1中的R1控制A绿B红的倒计时5S时绿灯闪的状态,R4控制A黄灯闪的状态,R5控制A红B绿闪的状态,R6控制B黄灯闪的状态。
利用定时器查询方式定时1S。
2)、程序流程图:见附页五、程序及说明;见附页六、心得这个专周从刚开始的没头绪,到最后终于明白。
下面就是我在专周过程周遇到的一些困难的描述。
1.分析交通灯的状态的时候少了两种状态,导致最后的程序是红灯和黄灯后都有黄灯,最后在老师的提醒下,我又加了倒数5S时绿灯闪的状态。
2.硬件设计好后,开始编程。
3.编程时,我先画好大概的流程图,以致编程时不容易混乱。
4.编好程后就开始调试,通过不断的改程序,以致程序无误,调试过程中,开始的时候用中断定时,但最后数显闪得太快,经过反复的修改,最后定位定时器查询方式。
在此过程中,通过看书,反复改错,问同学、老师,终于完成了专周。
通过这次专周,我更进一步熟悉了单片机,也明白了如何去设计一个东西的思路,如何改错。
在以后的学习生活中我会更加努力,学更多的东西。
汇编程序模拟交通灯实验
模拟交通灯一、实验名称:模拟交通灯二、实验目的:用单片机上的LED灯模拟红绿的工作过程三、实验仪器与设备:1、联想Z560(ITH)笔记本一台(带KEIL4与STC-ISP)2、铁牛单片机3、USB供电线一条4、USB转串口通信线一条四、实验原理流水灯是共阳的,付给相应的位“0”,这个灯就亮,然后加上一些延时程序就可以实现红绿灯变化过程。
以下为原程序:ORG 0000HAJMP MAINMAIN:MOV P2,#0BDHMOV R7,#40PROGRAM1:LCALL DELAYDJNZ R7,PROGRAM1MOV R7,#5PROGRAM2:MOV P2,#0B7HLCALL DELAYMOV P2,#0BFHLCALL DELAYDEC R7MOV A,R7JNZ PROGRAM2MOV P2,#0DBHMOV R7,#40PROGRAM3:LCALL DELAYDJNZ R7,PROGRAM3MOV R7,#00PROGRAM4:MOV P2,#7BHLCALL DELAYMOV P2,#0FBHLCALL DELAYINC R7CJNE R7,#05H,PROGRAM4AJMP MAINDELAY:MOV R3,#5D1:MOV R2,#66D2:MOV R1,#251D3:DJNZ R1,D3DJNZ R2,D2DJNZ R3,D1RETEND五、实验步骤:1、编写汇编程序,并编译产生HEX文件2、实验板连接笔记本,用STC下载软件烧写HEX文件到单片机六、实验结果与分析:通电下载程序后,A线绿灯亮,B线红灯亮,持续10秒后,A线绿灯灭黄灯闪烁5次,B线红灯亮,然后A线红灯亮,B线绿灯亮,持续10秒,A线红灯亮,B线绿灯灭黄灯闪烁5次。
然后重复上述过程。
实验结果达到预期效果,很好地模拟了交通灯工作过程七、实验体会:生活中很多与控制有关的现象都可以用单片机控制实现,在控制领域里,单片机起到很大的作用。
交通灯汇编程序(带流程图及分析)
交通灯实验要求:以74LS273或p1口作为输出口,控制4个双色LED灯(可发红,绿,黄光)模拟交通灯管理。
按照交通灯的显示规律,相对的两个分别显示红、绿、黄。
当外部中断到来时,四个LED全部显示红色,维持1秒钟后恢复中断前的状态。
本实验是交通灯是控制实验,所以要先理解实际交通灯的变化规律.假设一个十字路口为东西南北走向.初始状态0为东西红灯,南北红灯.然后转状态1南北绿灯通车,东西红灯.过一段时间转状态,南北绿灯闪几次转两黄灯,延时几秒,东西仍然红灯,再转状态3,东西绿灯通车,南北红灯.过一段时间转状态4.东西绿灯山几次转黄灯,延时几秒,南北仍然红灯,,最后循环至状态1。
在前面内容的基础上增加允许急救车先通过的要求.有急救车到达时,两项交通信号为全红,以便让急救车通过.假定急救车通过路口时间为10秒,急救车通过后,交通恢复中断前状态.被实验已按键为终端申请,表示有急救车通过.实验原理:可以通过对P1口赋值实现状态的改变,并采用延时使状态的时间达到要求,闪烁通过多次赋值并调用短延时实现,初始状态的全红也采用此方法,特殊情况考虑用外部中断实现。
实验硬件图:实验流程图:实验程序:ORG 0000HLJMP MAINORG 0003HLJMP WINTORG 0030H MAIN:SETB EX0SETB IT0SETB EAMOV P1,#0FHLCALL LOOP LOOP:MOV P1,#96HLCALL DELAYMOV P1,#06HLCALL DELAYMOV P1,#69HLCALL DELAYMOV P1,#09HLCALL DELAYSJMP LOOP DELAY:MOV R2,#100 LOP1:MOV R3,#100 LOP0:MOV R4,#100DJNZ R4,$DJNZ R3,LOP0DJNZ R2,LOP1RETWINT:MOV P1,#0FHLCALL DELAYRETIEND。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息学院
实验报告
学号:114100136 姓名:熊忠飞班级:11B
课程名称:微机原理、汇编与接口技术实验名称:8255交通灯控制
实验性质:验证性实验
实验时间: 2013 年 5 月 31 日实验地点:睿智4号楼
一、实验目的
通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。
二、实验内容及要求
如图1,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。
编程使六个灯按交通灯变化规律亮灭。
注意:
十字路口交通灯的变化规律要求:
(1)南北路口的绿灯、东西路口的红灯同时亮30秒左右。
(2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。
(3)南北路口的红灯、东西路口的绿灯同时亮30秒左右。
(4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。
(5)转(1)重复。
实验的流程图如下:
设置8255A口输出C口输出
开 始
南北路口黄灯闪,东西路口红灯亮
南北路口绿灯亮,东西路口红灯亮
长延时
南北路口红灯亮,东西路口绿灯亮
长延时
是否有键按下
N Y
返回DOS
南北路口红灯亮,东西路口黄灯闪
三、实验步骤及结果
1、代码如下:
stack segment stack'stack'
dw 32 dup(0)
stack ends
data segment
outp0 equ 0ec00h-280h+28Bh
outpC equ 0ec00h-280h+28Ah
data ends
code segment
assume cs:code,ds:data,ss:stack
start: mov ax,data
mov ds,ax
start1:mov dx,outp0
mov al,80h
out dx,al ;控制字10000000
mov dx,outpC
mov cx,0ffffh
mov bx,30h
lx1 : mov al,24h ;00100100B,南北绿灯、东西红灯亮 out dx,al
dec cx
jne lx1
dec bx
jne lx1
mov cx ,3
push cx
lx2 : mov al,44h ;01000100B, 南北黄灯亮,红灯继续亮 out dx,al
mov cx,0ffffh
mov bx,3000h
lx21: dec cx
jne lx21
dec bx
jne lx21
mov al,04h ;00000100B, 南北黄灯暗,红灯亮
out dx,al
mov cx,0ffffh
mov bx,3000h
lx22 : dec cx
jne lx22
dec bx
jne lx22
pop cx
dec cx
push cx
jne lx2
mov cx,0ffffh
mov bx,30h
lx3: mov al,81h ;10000001B,南北红灯亮,东西绿灯亮 out dx,al
dec cx
jne lx3
dec bx
jne lx3
mov cx ,3
push cx
lx4 : mov al,82h ;10000010B,南北红灯亮,东西黄灯亮 out dx,al
mov cx,0ffffh
mov bx,3000h
lx41 : dec cx
jne lx41
dec bx
jne lx41
mov al,80h ;10000000B,南北红灯亮,东西黄灯暗
out dx,al
mov cx,0ffffh
mov bx,3000h
lx42 : dec cx
jne lx42
dec bx
jne lx42
pop cx
dec cx
push cx
jne lx4
mov dl,0ffh
mov ah,06h
int 21h
jz start1
ext: mov ah,4ch
int 21h
code ends
end start
四、实验小结
通过本实验,更进一步对8255的了解,特别是加深了对初始化程序的书写和理解。
但在一些方面还是有不足之处,比如在各端口控制的时候理解的不是很清楚,导致了实验中出现不了结果。
在以后的学习要更加认真思考。
五、教师评价
年月日
注:每学期至少有一次设计性实验。
每学期结束请任课老师按时按量统一交到教学秘书处。