微机原理课程设计——交通灯控制系统
《微机原理与接口技术》课程设计-交通灯
信息工程系计算机科学与技术12计本1班1214110214黄 福朱 茜 2015年06月29日院 系: 专 业: 年级班级: 学 号: 姓 名: 指导教师: 设计日期:目录一.课程设计目的 (3)二.课程设计任务 (3)三.总体设计方案 (3)五.程序设计流程图 (4)六. 程序连接图 (5)七.程序清单 (5)八.实验结果 (8)九.课程设计总结和体会 (8)一.课程设计目的用汇编语言和微机原理实验箱完成实现双方向交通信号灯控制系统,以达到熟练运用汇编语言编程以及实验箱上各个芯片的灵活运用。
⒈了解交通灯管理的基本工作原理⒉熟悉8253定时计数器的工作方式和编程应用⒊熟悉8255A并行接口的工作方式和编程应用二.课程设计任务本次课程设计的内容为双方向交通信号灯的控制和管理。
具体要求如下:1.东西方向车辆放行20秒钟。
即东西方向的绿灯和南北方向的红灯同时点亮25秒钟和黄灯点亮3秒钟。
2.南北方向车辆放行20秒钟后,转为南北方向的黄灯点亮3秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
3.循环重复执行1和2两步骤。
三.总体设计方案1、用实验系统8255A实现对信号灯的控制(B端口),A端口的PA6、PA7口用来和8253共同控制信号灯点亮的时间。
2、实验中,8255选用(10010000)方式选择字,A组工作0方式,A端口输入,PC4-PC7输出,B组0方式,B端口输出,PC3-PC0输出3、实验中,8253采用两个计数器级联的方式达到定时的效果,8253计数器0的CLK0输入1MHZ的时钟脉冲,工作在模式3即方波发生器,理论设计OUT0 输出周期为0.01S的方波,则计数器0的初值为10000;OUT0输出的方波分别作为计数器1、计数器2的CLK1和CLK2的输入时钟脉冲,计数器1和计数器2工作方式为模式1,计数器1的初值为2500,即OUT1输出25秒,控制红绿灯的时间;计数器2初值为300,即OUT2输出3秒,控制黄灯的时间。
微机原理课程设计说明(交通灯)
2、有急救车通过时:(用中断实现)
两个方向的交通灯全为红(10S),急救车通过后恢 复正常信号。
3、 制作交通灯控制硬件电路板,编写软件
在XL1000-2000仿真仪实现交通信号灯控制。
(二)提高部分:实现智能交通灯控制
1、考虑左转灯控制
2、红绿灯点亮时间用键盘设定,用数码管
减“1”操作显示时间变化。。
附录:1、kerl-uvision集成调试软件的操作
操作步骤:
(1)双击桌面上的UV2快捷图标,启动软件。 (2)点击P工程 N新建工程 输入文件名并选择 存入的盘(如E:)点击保存。出现CPU屏幕,选Atmel AT89C51 点确定。屏幕左上方出现图标目标1, 原则上一个程序可建一个工程。 (3)点击文件 新建文件 出现汇编语言输入区。 输入汇编语言程序,点击文件中的保存,输入:程序 名.ASM 并选择存入的盘(如E:)点击保存。(输入的程 序名一般不超过6个字母数字,以字母打头)
③为了简化操作步骤,第一次使用时, 应当确认一 下软件的设置。首先点击下图的“设置”对话框在 自动编程的选项中选择: “擦除” “写入”“运 行目标板” (下图打钩的地方)然后点确定。由于 一般情况下,检测芯片,查空,校对,写加密等等 选项没有必要选择,会浪费编程时间。 ④在芯片类型的对话框中选择 MCU\ATMEL_51\AT89S52 然后点确定。 ⑤点击主界面的“打开”,找到要烧录的程序的 .HEX文件,然后点确定。
《微机原理机接口技术》课程设计
一、课程设计的目的: 1、加深对单片机的基本概念、基本原理、基 本结构的理解; 2、通过课程设计提高学生单片机的开发能力,
包括硬件设计和软件编程的能力。
二、课程设计的内容:
用单片机控制十字路口的交通灯,要求能
微机原理实验交通灯控制实验(DOC)
课程设计课程设计名称:交通灯控制实验专业班级:学生姓名:学号:指导教师:课程设计时间:2014.12.22---2015.1.2微机原理专业课程设计任务书学生姓名专业班级学号题目交通灯控制实验课题性质工程设计课题来源自拟课题指导教师同组姓名主要内容L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连.L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。
编程使六个灯按交通灯变化规律亮灭。
任务要求1:掌握并理解芯片8255和8253计时器工作原理2:掌握并理解源程序和程序中的函数3:熟悉8255内部结构和与单片机的接口逻辑,掌握8255芯片的3种工作方式。
4:了解单片机外围芯片8255的工作原理、初始化编程以及输入、输出程序设计方法参考文献《微型计算机原理及运用》谭浩强清华大学出版社《16/32位微机原理、汇编语言及接口技术》陈涛机械工业出版社《微机接口技术应用》审查意见指导教师签字:教研室主任签字:年月日一:设计的目的和内容1 目的:通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。
2 内容:如图1.L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连.L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。
编程使六个灯按交通灯变化规律亮灭。
图1二:设计思想:在选择循环的时间上.老师上课时说过.长延时可以采用双层嵌套.外层嵌套为0FFFFH.内层嵌套为4000H.我在编程时外层送进了0.相当于初值为65536.内层送进了4000H。
为了达到闪烁和延时的区别.我在编闪烁的程序时.给外层嵌套送入初值3000H.内层0100H(这是我通过实验的结果)。
人眼感觉闪烁的效果只是短延时的结果此方案是通过并行接口芯片8255A和8086计算机的硬件连接.以及通过8253延时的方法.来实现十字路口交通灯的模拟控制。
如上图所示.红灯(RLED).黄灯(YLEDD)和绿灯(GLED)分别接在8255的A.B.C口的低四位端口.PA0.PA1.PA2.PA3分别接南.东.北.西路口的红灯.B.C口类推。
微机系统课程设计实验报告交通信号灯自动控制模拟指示系统
微机系统课程设计实验敷陈课题:交通信号灯自动控制模拟指示系统一、课程设计目的1.掌握CPU与各芯片管脚连接方式,提高借口扩展硬件电路的连接能力。
2.加深对按时器、计数器和并行借口芯片的工作方式和程方式的理解。
3.掌握交通信号灯自动控制系统的设计思路和实现方式。
二、课程设计内容设计并实现十字路口通信号自动控制模拟指示系统。
设该路口由A、B两条通行相交而成,四个路口各设一组红、黄、绿三色信号灯,用两位数码管作倒计时显示。
三、应用系统设计方案交通信号灯的亮灭时间及数码管显示时间可以通过8253来控制,8253的时钟源采用时钟信号发生器与分频电路提供,通过计算获得计数初值为1000。
按照需要设定工作在方式3.交通信号灯及数码管可以采用系统提供的相应模块,控制可以通过8255可程并行借口,PA口控制红黄绿交通灯的亮灭,PB口和PC口控制时间显示数码管的段和位。
PC0作为OUT1的输入。
四、系统测试结果1.根本功能实现(1)以秒为计时单位,两位数码管以十进制递减计数显示通行剩余时间,在递减计数为零瞬间转换。
即南北的绿灯、东西的红灯同时亮30秒,同时南北路口数码管递减显示绿灯剩余时间;为0时,南北的黄灯闪烁5秒钟,同时东西的红灯继续亮;南北的红灯、东西的绿灯同时亮30秒,同时东西路口数码管递减显示绿灯剩余时间;为0时,南北红灯继续亮,同时东西的黄灯闪烁5秒;假设不完毕,那么开场循环。
(2)通过键盘可以对红、黄、绿三色信号灯所亮时间再0~99内任意设定。
(3)十字路口的通行气势状态可自行设定,系统启动后自动运行,按“Q〞退出。
2、发挥局部实现〔1〕增加人工干预干与模式,在特殊情况下可通过人工干预干与,手动控制A、B交通灯的切换时间,并可以随时切换为自动运行模式。
〔2〕增加夜间控制功能,交通灯在进入夜间模式后,A、B干道上红、绿灯均不亮,黄灯信号灯闪烁。
〔3〕增加红灯倒计时显示。
五、课程设计中遇到的问题及解决法子1.8253的两个计时器的连接及工作方式选择,在查找相关资料后,将两个计时器串联,并工作在方式3下,初始值为1000。
微机原理课程设计交通灯
课程设计任务书图1 8086CPU的内部功能结构图(1)8086的主要特性Intel8086/8088CPU是Intel公司推出的高性能的微处理器,具体如下主要特性:(a)8086CPU数据总线为16位,8088CUP数据总线为8位。
(b)地址总线都是20位,低16位用于数据总线复用,可直接寻址为1MB的存储空间。
(c)有16位的端口地址,可以寻址64KB的I/O端口。
(d)有99条基本指令,指令功能强大。
(e)有9种基本寻址方式。
(f)可以处理内部和外部中断,外部中断源多达256个。
(g)兼容性好,8086、8085在源程序一级兼容。
(h)8086/8088标准主频为5MHz,8086/8088-2主频为8MH【3】。
(i)支持单处理器或多处理器系统工作。
课程设计说明书N O.5图4 8255内部结构及引脚图 8255内部结构及引脚图具体的各引脚功能如下【3】:D0~D7为双向数据信号线,用来传送数据和控制字。
RD为读信号线,与其它信号线一起实现对8255接口的读操作通常接系统总线的IOR 信号。
WR为写信号线,与其它信号一起实现对8255的写操作,通常接系统总线的IOW。
课程设计说明书课程设计说明书N O.7图图2 置位/复位控制字格式8255的寻址:8255占外设编址的4个地址,即A口,B口,C口和控制寄存器各占一个外设接口地址。
对同一个地址分别可以进行读写操作。
例如,读A口可将A口的数据读出;写A口可将CPU的数据写入A口并输出【8】。
如表2为方式0下系统的输入输出组合,其中分为A,B组,A组分为A口和C口,B组分为B口和C口。
8255的工作方式主要有工作方式0、工作方式1和工作方式2。
其中端口A可以工作在三种方式中的任一种;端口B只能工作在方式0和方式1;端口C通常作为控制信号使用,配合端口A和端口B的工作。
在交通灯控制的设计中只用到了工作方式0。
课程设计说明书课程设计说明书3.2 8253简介intel8253是NMOS工艺制成的可编程计数器/定时器,有几种芯片型号,外形引脚及功能都是兼容的,只是工作的最高计数速率有所差异。
微机原理课程设计交通灯
二○一一~二○一二学年第二学期信息科学与工程学院课程设计报告书课程名称:微机原理课程设计班级:电子信息工程2009级 6 班学号:200904135150姓名:张强指导教师:徐守明二○一二年二月二十日十字路口交通灯控制系统设计一、摘要随着现代科学技术的进步,自动化控制技术越来越多地被运用到生产生活当中。
现代交通的发展,对自动化控制技术也提出了较高的要求,如何科学有效对交通流量进行管理,已成为一项社会课题。
在课程设计的背景下,本系统运用了8255和8253芯片,基于8086CPU实现了通过B口控制南北东西方向的红绿灯的循环点亮,实现了对交通流量的模拟协调调度。
另外,本系统还有手动测试功能。
关键词:交通灯;8255;8253;LED;模拟控制Keywords:traffic light;8253;8255;LED;analog control二、设计任务及要求利用“微机实验系统”的8255可编程接口的A口(PA7-PA0)、B口(PB7-PB0)、C口(PC7-PC0)控制发光二级管(红、绿灯)的L1-L8和开关KK1- KK2,使发光二级管按照十字路口交通灯的规律交替发光,模拟交通信号灯的工作。
●发光二级管(LED) 显示电路①8个LED L1-L8,4个红灯、4个绿灯②L=0 LED亮; L= LED灭●开关对交通灯的控制①开关KK2=0 红灯皆亮;开关KK2=1 绿灯皆亮②开关KK1=0 启动交通灯的亮灭;开关KK1=1停止交通灯的亮灭(所有发光二级管皆灭)●交通灯亮灭规律参考②北方向绿灯亮、东西方向红灯亮20秒②南北方向红灯亮、东西方向绿灯亮20秒●适当地加一些额外功能重复上述过程注:20秒定时由8253控制三、总体设计思路北(红绿灯)东(红绿灯)西(红绿灯)南(红绿灯)说明:其中KK3用于管理开关KK1、KK2;分析题意,红绿灯可直接接在8255的A 、B 、C 任意一个口上,灯的亮灭可直接由8086输出0,1控制;开关用于控制红绿灯的工作状态,可以从A 、B 、C 任意一个口进行读进判断;八段数码管的倒计时显示部分的位码有74LS273进行输入,段码则是经过8255端口输出。
微机原理课程设计-交通灯控制系统
福建工程学院计算机与信息科学系微机原理课程设计报告书课题名交通灯控制系统班级网络1001姓名指导教师日期 2012-6-13目录1 、设计任务 (1)2 、总体方案设计与方案论证 (1)3 、总框图及总体软件设计说明 (2)4 、接口电路逻辑图及硬件设计说明,或系统资源使用说明 (3)5 、局部程序框图及其设计说明 (4)6 、源程序清单(详细注释) (4)7 、系统功能与操作说明 (9)8、调试记录及调试结果 (10)9 、设计总结与体会 (10)10 、参考文献 (10)1 、设计任务交通信号灯控制系统:要求能显示剩余时间和控制红、黄、绿三色灯的显示。
并且能够显示倒计时时间,并且能都手动控制紧急情况。
2 、总体方案设计与方案论证方案一:利用8279显示数码管倒计时、8255等接口,利用软件延时,设计电路,模拟十字路口交通灯控制。
能实现自动控制和手动应急控制。
方案二:利用8253定时,8255控制灯的状态和控制数码管输出,8259中断来控制紧急情况。
模拟十字路口交通灯控制。
能实现自动控制和手动应急控制。
通过比较,方案二用到了8259比较麻烦,并且用8255控制数码管的输出倒计时硬件连接比较麻烦,没有使用8279方便。
8253定时虽然比较准确,到时多用到了一块芯片,增加了连线和成本,用软件延时的方法也基本可以做到。
所以综合考虑,我们小组决定实施方案一。
3 、总框图及总体软件设计说明软件流程图:8279芯片引脚图4 、接口电路逻辑图及硬件设计说明,或系统资源使用说明(1)8255A 的控制字:8255A 方式选择控制字8255芯片引5 、局部程序框图及其设计说明6 、源程序清单(详细注释)code segmentassume cs:code,ds:codestart: mov ax,csmov ds,axcall I8255 ;8255初始化Call I8279 ;8279初始化last1: mov si,offset mesg ;mov di,offset timelast2: cmp byte ptr[si],-1 ;检测是否到最后一个je last1 ;是,跳转到last1从第一个开始 mov al,[si] ;否则开始送数mov dx,A_8255 ;数据->8255A口out dx,al ;把al中的内容送往8255A口mov cx,[di] ;时间送往cx寄存器push di ;保存现场lp3: lea di,num ;显示倒计时时间内容,通过num表查表lp: call delay2 ;延时mov dx,221H ;检查B0口是否低电平in al,dxtest al,01hjnz nex ;若高电平按正常情况进行,否则紧急情况be: mov dx,220H ;出现紧急情况mov al,36h ;把36送往A口out dx,al ;即南北红灯全部亮mov dx,221Hin al,dx ;检查B0是否高电平到来test al,01Hjz be ;没有,还是处于紧急情况,继续执行南北红灯亮jmp last1 ;紧急情况解除,重新开始nex: cmp byte ptr[di],00h ;检测是否是否到了最后一个,jz lp3 ;是从头开始mov al,[di] ;吧num中的内容送往alcall disp ;调用子程序 disp 显示alinc di ;吧 di指向下一个数loop lppop diinc siadd di,2jmp last2return: mov ah,4chint 21h;-----------------------I8255 proc ;8255初始化程序mov dx,CON_8255mov al,10000010B;设置82555工作状态D7为1方式控制字,A口输出 out dx,alretI8255 endp;-------------------------I8279 proc ;8279初始化程序push axpush dxpush cxmov al,ledmod ;设定8279工作模式out dx,al ;左边输入,8位显示mov al,ledfeqout dx,al ;扫描频率mov cx,8Xz: mov dx,d8279mov al,0out dx,al ;清空显示loop xzpop cxpop dxpop axretI8279 endp;-------------------------delay proc near ;延时子程序,延时一秒push cx,mov cx,0ffffhloop $pop cxretdelay endpdelay0 proc nearpush cxmov cx,0ffffhcall delayloop $pop cxretdelay0 endpdelay1 proc nearpush cxmov cx,0ffffhcall delay0loop $pop cxretdelay1 endpdelay2 proc nearpush cxmov cx,0ffffhcall delay1loop $pop cxretdelay2 endp;-----------disp proc near ;显示子程序;要显示的十进制数放在al中push bxpush cxpush dxmov ch,al ;把 al放在 cl 中保存mov cl,4 ;ror al,cl ;把 al 循环右移 4 位,既高位和低位调换and al,0fh ;高位清零,低位保存的是十位的内容不变push ax ;保护现场mov dx,z8279 ;8279控制端口mov al,81h ;选择81 号既右数第二个数码管out dx,al ;在第二个数码管上输出al既高位的内容pop ax ;还原现场lea bx,Led ;数据段地址xlat ;查表把[bx,al]中的内容送往 almov dx,d8279 ;8279数据端口out dx,al ;显示转换结果高4位mov al,ch ;b把保存的al内容输出and al,0fh ;高位清零push axmov dx,z8279mov al,80h ;选择第一个数码管输出out dx,al ;显示个位pop axlea bx,Ledxlatmov dx,d8279 ;显示转换结果低4位out dx,alpop dxpop cxpop bxretdisp endp;--------Led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fhnum db30h,29h,28h,27h,26h,25h,24h,23h,22h,21h,20h,19h,18h,17h,16h,15h,14h,13h,12h,11h ,10h,09h,08h,07h,06h,05h,04h,03h,02h,01h,00h,-1;-----------mesg db 35h,33h,2eh,1eh,-1 ;灯的状态表time dw 1eh,1h,1eh,1h ;延时时间表LEDMOD EQU 00h;左边输入.八位显示外部译码八位显示LEDFEQ EQU 38H;扫描频率Z8279 EQU 20Ah;8279控制口地址D8279 EQU 208h;8279数据口地址A_8255 equ 220HB_8255 equ 221HCON_8255 equ 223Hcode endsend start7 、系统功能与操作说明程序运行结果:1.东西红灯亮,南北绿灯亮,延时29秒。
微机原理课设交通信号灯模拟控制系统
南京工程学院通信工程学院课程设计说明书(论文) 题目交通信号灯模拟控制系统课程名称微型计算机原理与接口技术专业班级学生姓名学号设计地点指导教师设计起止时间:2013年12月23日至2013年12月27日目录第一章概述在实际生活中,交通信号灯控制着交通的秩序安全。
本次微机原理课程设计就是模拟实际十字路口交通灯的运行规则,用汇编语言来设计交通信号灯。
本次设计主要是实现对十字路口交通信号灯的控制而进行的编程,用8255A的A口控制东西方向的交通灯,用8255A的B口控制南北方向的交通灯。
当程序正常运行时,依次为东西方向的绿灯和南北方向的红灯闪烁25s,东西方向的绿灯灭后东西方向的黄灯亮5s,随后东西方向的红灯和南北方向的绿灯亮并闪烁15s,南北方向的黄灯亮5s,之后同理往复循环。
用8255A的C口控制紧急情况时东西、南北方向的红、黄、绿灯的亮灭,通过读C口输入的数据并进行测试查询,从而对紧急情况进行及时处理。
用LED(发光二极管)模拟信号灯,8255A实现对信号灯的控制(PC0~PC6分别接D0~D6),8253的计数器2实现基本单位定时(如10ms)信号的输出;再用8255A的PA口查询定时信号的变化,并统计脉冲数,以实现25s、15s和5s的定时。
十字路口交通信号灯设计充分利用了可编程的并行接口芯片8255A各引脚的功能,选定工作方式0,通过改变控制字来实现交通信号灯的状态转换。
另外,通过调用延时子程序来实现交通信号灯某一状态的持续,调用循环子程序来实现对交通信号灯状态循环的控制,通过控制开关来实现紧急情况下各路口红灯全亮的功能。
综合各部分功能来实现较为完善的程序,运行程序来模拟十字路口交通信号灯。
第二章设计介绍功能描述当东西方向(A道)和南北方向(B道)均有车辆要求通过时,A道和B 道轮流放行。
A道放行25S,B道放行15S,依次轮流。
绿灯转换红灯时黄灯亮5S。
一道有车,另一道无车时(用开关K5、K6状态模拟),控制系统能立即让有车道放行。
微机原理课程设计城市交通灯的设计
微机原理课程设计——城市交通灯控制系统设计学院:电气信息工程学院班级:通信工程07-1班姓名:学号:目录交通灯设计课题简介....................................................................- 2 -1.1交通的控制系统概述.................................................................................. - 2 -1.2设计要求及其目的...................................................................................... - 3 -1.3设计思想...................................................................................................... - 3 - 2.硬件电路元件介绍..................................................................- 4 -2.1核心芯片8088/8086微型计算机............................................................... - 4 -2.2可编程并行接口8255 ................................................................................. - 6 - 3.硬件电路设计 ...........................................................................- 7-3.1设计的总方案.............................................................................................. - 8 -3.2 LED显示电路设计................................................................................... - 10 -3.3发光二极管组成的灯控电路设计............................................................ - 10 -3.4键盘电路设计............................................................................................ - 10 - 4.软件设计 ........................................................................... ....- 13 -4.1软件设计思路............................................................................................ - 11 -4.2流程图........................................................................................................ - 11 -4.3程序清单.................................................................................................... - 13 - 5.课程设计心得体会............................................................... - 14 - 6.参考文献 ............................................................................... - 15 -交通灯设计课题简介1.1交通的控制系统概述十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
微机原理课程设计-交通信号灯模拟控制系统的设计
南京工程学院课程设计任务书课程名称微机原理及应用A 院(系、部、中心)电力学院专业电气工程及其自动化班级电力093 起止日期 2012.6.4 ~ 2010.6.12 指导教师鞠阳徐懂礼5.课程设计进度安排起止日期工作内容2012年6月4日(第16周)之前第16周,星期一第16周,星期二、三第16周,星期四第16周,星期五第16周,星期六预习消化理解设计任务,设计程序流程图,编写源程序。
预习星研微机实验系统的仿真调试操作界面学习STAR86/88实验系统的使用和操作,进行实验8255测试和8253测试基本实验完成基本要求的内容完成中级和高级要求的内容验收撰写课程设计报告6.成绩考核办法总评成绩由三部分组成,分别是:成果演示占40%,测试成绩占30%,设计报告占30%。
1、成果演示(根据程序运行演示确定基础分);2、口试或笔试测验(与本设计有关的问题,目的是考查设计成果是否经过自己思考独立完成);3、课程设计报告(格式、内容、质量)。
教研室审查意见:教研室主任签字:年月日院(系、部、中心)意见:主管领导签字:年月日设计说明书课程设计要求:设计一个十字路口的交通信号灯。
采用8255 PA口输出控制信号灯,8255 PC0输入K8控制开关信号,用8253硬件定时,软件查询方式实现如下功能。
白天模式:①东西方向和南北方向各放行10秒。
绿灯转红灯前黄灯闪烁4秒。
②LED数码显示器显示倒数计时,从9倒数到0;倒数到4时黄灯亮。
夜间模式:两个方向黄灯闪烁,绿灯和红灯不亮。
1、设计思路与功能描述(1)设计思路①8255交通信号灯的灯光变化和数码显示通过8255实现控制。
8255是一种具有多种功能的可编程并行通信接口电路芯片。
芯片包括A、B、C三个数据端口、A组控制部件、B组控制部件、读写逻辑控制电路、数据总线缓冲器。
8255有三种工作方式,其中方式0是基本输入/输出方式,适用于无条件传送和查询方式的接口电路。
本设计中,PA口用于输出信号控制灯光的变化(D6D5=00,D4=0),PB口用于输出信号控制数码管的显示(D2=0,D1=0),PC0用于输入K8的控制开关信号,PC1用于输入用于硬件延时的方波信号(D0=1)。
微机原理交通灯课程设计
微机原理交通灯课程设计一、课程目标知识目标:1. 理解微机原理在交通灯控制系统中的应用,掌握交通灯控制系统的基本组成和工作原理。
2. 学会使用微控制器进行交通灯程序的编写,理解程序中各个模块的功能和实现方法。
3. 掌握交通灯控制中的时间计算方法,学会根据实际需求调整信号灯的变换周期。
技能目标:1. 能够运用所学知识设计并实现一个简单的交通灯控制系统,具备实际操作和调试的能力。
2. 培养学生运用编程语言解决实际问题的能力,提高编程技巧和逻辑思维能力。
3. 培养学生团队协作和沟通能力,能够共同分析问题、讨论解决方案并完成任务。
情感态度价值观目标:1. 激发学生对微机原理和交通工程学科的兴趣,培养探究精神和创新意识。
2. 培养学生关注社会热点问题,认识到科技在解决现实问题中的作用,提高社会责任感。
3. 培养学生严谨、认真的学习态度,树立良好的学术道德观念。
课程性质:本课程为实践性较强的学科课程,结合微机原理和交通工程知识,培养学生实际操作和创新能力。
学生特点:学生具备一定的微机原理和编程基础,对实际操作和动手实践有较高的兴趣。
教学要求:注重理论与实践相结合,引导学生通过实际操作掌握知识,提高解决实际问题的能力。
教学过程中,关注学生的个体差异,鼓励学生积极参与,充分调动学生的主观能动性。
通过课程学习,使学生能够达到上述设定的知识、技能和情感态度价值观目标。
二、教学内容1. 交通灯控制系统原理:介绍交通灯控制系统基本组成,包括信号灯、控制器、传感器等,解析各部分功能及相互关系。
参考教材章节:第三章 微控制器应用实例,第四节 交通灯控制系统。
2. 微控制器编程:讲解微控制器编程基础知识,以C语言为例,教授交通灯程序编写方法,包括程序结构、模块化编程等。
参考教材章节:第二章 微控制器编程基础,第三节 C语言编程。
3. 交通灯控制算法:介绍时间计算方法,教授如何根据实际需求调整信号灯变换周期,实现交通优化。
参考教材章节:第三章 微控制器应用实例,第五节 交通灯控制算法。
微机原理课程设计--交通灯控制系统设计
交通灯控制系统设计学生姓名学号12011244164所在院宁夏大学物电学院专业名称班级2011级网络工程1班指导教师二○一三年十一月交通灯控制系统设计学生:王彦斌指导教师:庄红内容摘要:因为社会经济的发展,城市交通问题越来越引起人们的关注。
人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。
城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。
实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器PLC、单片机等方案来实现。
其中用标准逻辑器件来实现电路在很大程度上要受到逻辑器件如门电路等的影响,调试工作极为不易,而笔者对单片机运用来进行系统的设计开发也不是很熟悉,因此,最终笔者选择了用可编程的控制器PLC来实现系统功能的设计,完成本次课设的题目。
关键词:PLC 交通灯程序报告设计Traffic light control system designAbstract:Along with the development of the society economy, the city transportation problem causes people's concern more and more. The coordination of the person ,car , the road threes relation, have become one of the important problems that the transportation management section demand resolve. The city transportation control system is the calculator that used for the city transportation data monitor. The transportation signal beacon control and transportation to appease comprehensive management system, it is in the modern city transportation supervision conductor system to constitute part most importantly.Carry out the control method of the street corner transportation light system a lot of, can carry out with the standard logic spare part. Programmable prefacecontroller PLC, single slice machine etc. Carries out the influence that the electric circuit wants to be subjected to the logic spare part, such as door, electric circuit to a large extent etc. with the standard logic spare part among them, adjust to try a work extremely not easy, and writer to single slice the luck use is not very either to acquaint with to the design development of carry on the system, therefore, the end writer chooses to use programmable controller PLC to carry out the design of the system function, completion originally time the lesson establish of topic.Keywords: The PLC transportation light procedure report design.目录前言 (1)1交通信号灯的设计目的以及要求 (1)2交通信号灯基本原理及设计方法 (2)3主控制器 (4)3.174LS90引脚排列图与逻辑图 (4)3.274LS90的功能表及引脚功能 (5)4计数器 (6)4.1计数器的作用 (6)4.2计数器的工作情况 (6)4.3控制信号灯的译码电路的真值表 (7)4.5状态译码电路 (9)5译码显示电路 (9)5.1共阳极LED七段数码管 (9)5.274LS247译码器 (11)5.2.1以下介绍各引脚的功能: (11)5.2.2数码连接译码电路 (11)5.2.3真值表 (12)6555振荡器构成的秒脉冲电路 (13)6.1555定时器的引脚 (13)6.2555定时器构成的多谐振荡器 (14)6.3555定时器工作原理 (15)7组装和调试过程 (16)8结束语 (17)参考文献 (18)交通灯控制系统设计前言黄色信号灯的发明者是我国的胡汝鼎,他怀着“科学救国”的抱负到美国深造,在大发明家爱迪生为董事长的美国通用电器公司任职员。
微机原理及机电接口技术课程设计红绿灯
微机原理及机电接口技术课程设计红绿灯微机原理及机电接口技术课程设计第五组题目十字路口交通灯控制系统一.明确任务1.任务要求1)、模拟十字路口交通灯变化规律能实现通行时间的倒计时显示;当特种车(消防、警车等)通过时,中断保护现场并使四个口红灯全亮,中断消除后恢复现场。
2)、用开关控制中断信号2.任务分析1)南北东西道路有信号灯显示2)2位7段数码管显示通行和禁行倒计时3)针对特种车经过要设计相应的中断程序,并且中断返回后能信号灯按原来的状态继续进行道路控制。
二.总体设计1. 设计方案十字路口有南北方向和东西方向,每个方向都设有红、黄、绿三色交通信号灯12盏,并配有相应的亮灯倒计时显示4组。
当南北为绿灯或黄灯时,东西向一定是红灯,即南北绿灯时间加南北黄灯时间应等于东西红灯时间。
系统开始工作,南北路口绿灯亮,南北方向数码管进行绿灯50S倒计时显示,东西路口的红灯亮,东西方向数码管进行红灯55S倒计时显示。
当东西禁行方向剩5S时,南北通行方向的绿灯灭黄灯亮,同时数码管进行5S黄灯倒计时显示,5S后黄灯熄灭红灯亮,并进行南北红灯倒计时,同时东西方向红灯55S计时时间到红灯灭绿灯亮,东西向开始通行南北向禁行。
同样东西向绿灯50S计时时间到后转为黄灯,黄灯5S计时时间到再转为红灯,之后重复上述过程。
另设有点动按钮用来发出特种车经过时的中断信号2.单片机选型选择89C51系列单片机3.划分系统软、硬件功能数码管采用共阴极七段码动态显示4.确定系统结构组成时钟电路,复位电路,红绿黄灯指示电路(采用各色发光二极管代替),动态显示电路和简单按键电路三.硬件电路设计P0示位选控制。
P3.3作为外部中断输入口P1.0:南北向红灯,高电平点亮P1.1:南北向黄灯,高电平点亮P1.2:南北向绿灯,高电平点亮P1.3:东西向红灯,高电平点亮P1.4:东西向黄灯,高电平点亮P1.5:东西向绿灯,高电平点亮P2.7:南北向十位数码管位选信号P2.6:南北向个位数码管位选信号P2.5:东西向十位数码管位选信号P2.4:东西向个位数码管位选信号P0.0:数码管a P0.1:数码管b P0.2:数码管c P0.3:数码管d P0.4:数码管e P0.5:数码管f P0.6:数码管gP3.3:中断按钮,点动南北东西全部禁行,特种车通过四.软件设计1.片内RAM的定义A_BIT EQU 20H :用于存放南北十位数B_BIT EQU 21H :用于存放南北个位数C_BIT EQU 22H :用于存放东西十位数D_BIT EQU 23H :用于存放东西个位数TEMP1 EQU 24H :南北方向要显示的时间TEMP2 EQU 25H :东西方向要显示的时间SEC EQU 30H:1S计时标志2.程序设计由设计方案描述交通灯的显示可以分为以下4状态一:南北绿灯亮并从50S开始倒计时显示,东西红灯亮并从55S开始倒计时显示状态二:南北黄灯亮并从5S开始倒计时显示,东西红灯亮并继续55S倒计时显示状态三:南北红灯亮并从55S开始倒计时显示,东西绿灯亮并从50S开始倒计时显示状态四:南北红灯亮并继续55S倒计时显示,东西黄灯亮并从5S开始倒计时显示3.设计流程图主程序流程图INT1中断程序流程图4.源程序:A_BIT EQU 20H ;用于存放南北十位数B_BIT EQU 21H ;用于存放南北个位数C_BIT EQU 22H ;用于存放东西十位数D_BIT EQU 23H ;用于存放东西个位数TEMP1 EQU 24H TEMP2 EQU 25HSEC EQU 30H ;1S计时标志ORG 0000H AJMP MAIN ORG 0013HAJMP INT ORG 0100H MAIN:MOV SP,#45HMOV IE,#84H ;开INT0中断SETB IT1 ;下降沿触发MOV TMOD,#01H ;定时器初始化MOV TH0,#3CH ;50ms定时初值MOV TL0,#0B0HSETB TR0 ;启动定时器T0 MOV SEC,#20 ;1S循环常数MOV R7,#50 ;绿灯时间MOV R6,#5;黄灯时间MOV R5,#55 ;红灯时间MOV R4,#10 ;全部红灯的时间STA1:MOV P1,#00001100B ;南北绿灯东西红灯ST1:MOV TEMP1,R7 MOV TEMP2,R5ACALL CONVERT ;调用BCD码转换子程序STLOP1: ACALL DISPLAY ;调用显示子程序JNB TF0,STLOP1 CLR TF0 DEC SEC MOV A,SEC CJNE A,#0,STLOP1 MOV SEC,#20 DEC R5;东西倒计时数减一;南北倒计时数减一;1S定时未到转到STLOP1;50MS定时未到,转到STLOP1DJNZ R7,ST1 MOV R7,#50STA2:MOV P1,#00001010B ;南北黄灯东西红灯ST2:MOV TEMP1,R6 MOV TEMP2,R5ACALL CONVERT ;调用BCD码转换子程序STLOP2: ACALL DISPLAY ;调用显示子程JNB TF0,STLOP2 CLR TF0 DEC SEC MOV A,SEC CJNE A,#0,STLOP2 MOV SEC,#20 DEC R5 DJNZ R6,ST2 MOV R6,#5 MOV R5,#55 STA3:MOV P1,#00100001B ;ST3:MOV TEMP1,R5 MOV TEMP2,R7ACALL CONVERT ;STLOP3: ACALL DISPLAY ;JNB TF0,STLOP3 CLR TF0 DEC SEC MOV A,SEC CJNE A,#0,STLOP3 MOV SEC,#20 DEC R5 DJNZ R7,ST3南北红灯东西绿灯调用BCD码转换子程序调用显示子程MOV R7,#50STA4:MOV P1,#00010001B ;南北红灯东西黄灯ST4:MOV TEMP2,R6 MOV TEMP1,R5ACALL CONVERT ;调用BCD码转换子程序STLOP4: ACALL DISPLAY ;调用显示子程JNB TF0,STLOP4 CLR TF0 DEC SEC MOV A,SEC CJNE A,#0,STLOP4 MOV SEC,#20 DEC R5 DJNZ R6,ST4 MOV R6,#5 MOV R5,#55 AJMP STA1INT: PUSH 90H PUSH PSW PUSH 00H PUSH 01H PUSH02H PUSH 05H PUSH 06H PUSH 07H PUSH 20H;中断子程序;存入46H中PUSH 21H PUSH 22H PUSH 23H PUSH 24H PUSH 25H PUSH 30H PUSH TH0 PUSH TL0MOV P1,#09H CLR TF0MOV TH0,#3CH MOV TL0,#0B0H MOV SEC,#20 L3:MOV TEMP1,R4 MOV TEMP2,R4ACALL CONVERT ;L4:ACALL DISPLAY JNB TF0,L4 CLR TF0 DEC SEC MOV A,SEC CJNE A,#0,L4 MOV SEC,#20 DJNZ R4,L3 MOV R4,#10 POP TL0 POP TH0 POP 30H POP 25H全部红灯调用BCD码转换子程序调用显示子程;;POP 24HPOP 23HPOP 22HPOP 21HPOP 20HPOP 07HPOP 06HPOP 05HPOP 02HPOP 01HPOP 00HPOP PSWPOP 90HRETI转换子程序CONVERT:MOV A,TEMP1 ;将南北要显示的数存放到 A MOV B,#10DIV AB ;A除以B商存A,余数存B MOV A_BIT,A ;将A 放到20HMOV B_BIT,B ;将B放到21HMOV A,TEMP2 ;将东西要显示的数存放到A MOV B,#10 DIV AB ;A除以B商存A,余数存B MOV C_BIT,A ;将A 放到22HMOV D_BIT,B ;将B放到23HRETDISPLAY: MOV DPTR ,#TAB ;显示子程序DPLOP1: MOV A,A_BIT ;将南北要显示的10位数送A MOVC A,@A+DPTR ;查表MOV P0,ACLR P2.7 ;显示南北10位数ACALL D1MS ;延时1MS SETB P2.7 ;灭南北10位数MOV A,B_BIT ;MOVC A,@A+DPTR ;MOV P0,ACLR P2.6 ;ACALL D1MS ;SETB P2.6 ;MOV A,C_BIT ;MOVC A,@A+DPTR ;MOV P0,ACLR P2.5 ;ACALL D1MS ;SETB P2.5 ;MOV A,D_BIT ;MOVC A,@A+DPTR ;MOV P0,ACLR P2.4 ;ACALL D1MS ;SETB P2.4 ;RETD1MS:MOV R3,#250D2:NOPNOP 将南北要显示的个位数送A 查表显示南北个位数延时1MS 灭南北个位数将东西要显示的10位数送A 查表显示东西10位数延时1MS 灭东西10位数将东西要显示的个位数送 A 查表显示东西个位数延时1MS 灭东西个位数延时子程序;1MSDJNZ R3,D2RETTAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END。
《微机原理与接口技术》课程设计--交通灯系统设计
华夏学院《微机原理与接口技术》课程设计题目:交通灯系统设计学院(系):信息工程系年级专业:自动化1073班学号:学生姓名: r r指导教师: r r课程设计任务书学生姓名:专业班级:自动化1073 指导教师:工作单位:题目:交通灯系统设计初始条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。
要求完成的主要任务:(包括课程设计工作量及其技术要求以及说明书撰写等具要求)该课程设计要求采用定时加中断控制的方式进行,对两个方向车辆的通行时间分别计时,可随意进行更改双向的通行时间。
具体要求如下:1.东西方向车辆放行60秒钟。
即东西方向绿灯和南北方向的红灯同时点亮1分钟;2.1分钟后,东西方向的红(绿)灯闪烁5秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
3.东西方向的红(绿)灯闪烁5秒钟后,转为南北方向放行60秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮60秒钟;4.南北方向放行60秒钟后,转为南北方向的红(绿)灯闪烁5秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的红(绿)灯闪烁5秒钟后转为东西方向放行1分钟。
如此循环重复。
6.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:指导教师签名:年月日系主任(或责任教师)签名:年月日基于微机原理交通灯的设计摘要城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。
本系统是一个在PC机中用软件模拟交通灯控制电路的一个屏显系统,才用汇编语言在CRT显示环境下实现,界面简单明了,能够实现简单交通灯的模拟。
运用所学的微机原理和接口技术知识完成交通灯系统。
通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代城市交通控制与管理问题的现状,结合交通的实际情况阐述了交通灯控制系统的工作原理,给出了一种简单实用的交通灯控制系统的硬件、软件电路设计方案。
微机原理课程设计交通灯控制系统设计
交通灯控制系统设计一、设计目的⒈ 了解交通灯管理的基本工作原理⒉ 熟悉8259中断控制器的工作原理和应用编程⒊ 熟悉8255并行接口的各种工作方式和应用⒋ 熟悉8253计数器/定时器的工作方式及应用编程,掌握利用软硬件相结合定时的方法⒌ 掌握多位LED显示问题的解决二、设计要求1.东西方向车辆放行60秒钟。
即东西方向的绿灯和南北方向的红灯同时点亮1分钟;2.1分钟后,东西方向的黄灯闪烁5秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
在南北方向亮红灯期间,在2位数码管上显示计数值(每秒减1),从65减为0。
3.东西方向的黄灯闪烁5秒钟后,转为南北方向放行20秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮20秒钟;4.南北方向放行20秒钟后,转为南北方向的黄灯闪烁5秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的黄灯闪烁5秒钟后,再转为东西方向车辆放行1分钟。
如此循环重复。
三、电路及连线设计在本次课程设计当中,本次设计采用的是软件定时(即通过汇编指令)实现的。
而灯的亮与灭以及闪烁是用8255的A口和B口控制的,工作在方式0,A口和B口均为输出。
并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。
CPU 和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。
8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。
8255的内部结构及引脚如图1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2所示。
图1 8255的内部结构及引脚图2 8255工作方式控制字和C口按位置位/复位控制字格式2.3电路接线图图3 红绿灯模拟设计总电路图上电路图为红绿灯模拟设计总电路图,通过8086CPU系统总线来控制8255的A端口、B端口,而A、B端口分别接LED发光二极管来控制十字路口红绿灯。
《微机原理与接口技术》课程设计实验报告-交通灯控制功能设计
微机课程设计——交通灯控制系统
中断子程序模块是通过扩充中断源实现的,主要是通过设置 8259 的工作模 式,开放 TR1 和 TR0 的中断,按上开关 K 后,TR0 就发生中断,在 TR0 中断没有 触发的情况下,从 OU1 口输出一个上升沿脉冲,TR1 就中断一次, 程序如下所示:
QUERY: MOV DX,MY8259_OCW3 MOV AL,0CH OUT DX,AL IN AL,DX ;读出查询字 ;判断中断是否已响应 ; 没有响应则继续查询 ; 向 8259 的 OCW3 发送查询命令
《微机原理与接口技术》 课程设计实验报告
题目:交通灯控制功能设计
指导老师:
专业:
班级:
目录
微机课程设计——交通灯控制系统
ห้องสมุดไป่ตู้
一、设计思想和实施方案论述,硬件原理图及分析 1.1、课程设计名称 1.2、课程设计要求 1.3、课程设计目的 二、设计思想和实施方案论述,硬件原理图及分析 2.1、设计思想和实施方案 2.2、硬件原理图 三、典型模块以及典型编程技巧分析 3.1、8086 典型模块分析 3.2、编程技巧分析 四、设计中遇到的问题及解决方法 五、程序清单和程序注释,相关流程图 5.1 程序清单和注释 5.2、实验室及流程图 六、收获与体会 七、参考文献
微机课程设计——交通灯控制系统
MOV OUT 器输出 1HZ 的方波
AL,2 DX,AL ;1.041667MHZ/2000/1000=1HZ, 即计数
数码管的显示是通过调用显示函数实现的, 通过设置 8255 的工作模式, 选择数码管的高位工作, 然后将计数的高位送到数码管, 再选择数码管的低位工 作,然后将计数的低位送到数码管,在 1s 钟内多次扫描就可以消除闪烁,从而 达到理想的计数效果,它的程序如下所示:
交通信号灯的控制(微机原理课程设计)
微机原理课程设计交通信号灯的控制一.设计任务及要求:交通信号灯的控制:1.通过8255A并口来控制LED发光二极管的亮灭。
2.A口控制红灯,B口控制黄灯,C口控制绿灯。
3.输出为0则亮,输出为1则灭。
4.用8253定时来控制变换时间。
要求:设有一个十字路口,1、3为南,北方向,2、4为东西方向,初始态为4个路口的红灯全亮。
之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。
延迟30秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。
闪烁5次后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车。
延迟30秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。
闪烁5次后,再切换到1、3路口方向。
之后,重复上述过程。
二.方案比较及评估论证:分析题意,红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1控制。
30秒延时及闪烁由8253控制,由闪烁的实现方法可分为两种方案:方案一:设8253各口地址分别为:设8253基地址即通道0地址为04A0H;通道1为04A2H;通道2为04A4H;命令控制口为04A6H。
黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波, 8255控制或门打开的时间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。
由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方式,理论设计输出周期为0.01s的方波。
1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1 s,因此通道0的计数初值为10000=2710H。
由此方波分别作为clock1和clock2的输入时钟脉冲,所以通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H既30s,计数口,8255将A口数据输入到8086,8086检测到则输出一个高电平到8255的PA7到高电平既完成30s定时。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南通大学电子信息学院
微机原理课程设计
报告书
课题名交通灯控制系统
班级 _______ 学号 __________ 姓名 ____ 指导教师 ______ 日期 _________
目录
1 设计目的 (1)
2 设计内容 (1)
3 设计要求 (1)
4 设计原理与硬件电路 (2)
5 程序流程图 (4)
6 程序代码 (4)
7 程序及硬件系统调试情况 (8)
8 设计总结与体会 (9)
9 参考文献 (9)
1 设计目的
电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。
交通灯能保证行人过马路的安全,控制交通状况等优点受到人们的欢迎,在很多场合得到了广泛的应用。
交通灯是采用计算机通过编写汇编语言程序控制的。
红灯停,绿灯行的交通规则。
广泛用于十字路口,车站, 码头等公共场所,成为人们出行生活中不可少的必需品,由于计算机技术的成熟与广泛应用,使得交通灯的功能多样化,远远超过老式交通灯, 交通灯的数字化给人们生产生活带来了极大的方便,而且大大地扩展了交通灯的功能。
诸如闪烁警示、鸣笛警示,时间程序自动控制、倒计时显示,所有这些,都是以计算机为基础的。
还可以根据主、次干道的交通状况的不同任意设置各自的不同的通行时间。
或者给红绿色盲声音警示的人性化设计。
现在的交通灯系统很多都增加了智能控制环节,比如对闯红灯的车辆进行拍照。
当某方向红灯亮时,此时相应的传感器开始工作,当有车辆通过时,照相机就把车辆拍下。
要将交通灯系统产品化,应该根据客户不同的需求进行不同的设计,应该在程序中增加一些可以人为改变的参数,以便客户根据不同的需要随时调节交通灯。
因此,研究交通灯及扩大其应用,有着非常现实的意义。
2 设计内容
交通灯控制系统
利用8253定时器、8255等接口,设计一电路,模拟十字路口交通灯控制。
要求能实现自动控制和手动应急控制。
3 设计要求
在Proteus环境下,结合课程设计题目,设计硬件原理图,搭建硬件电路
软件设计
1、采用模块化程序结构设计软件,可将整个软件分成若干功能模块。
2、画出程序流程图。
3、根据流程图,编写源程序。
4、在Proteus环境下,仿真调试程序
4 设计原理与硬件电路
5 程序流程图
6 程序代码
A_PORT EQU 200H B_PORT EQU 202H C_PORT EQU 204H CTRL_PORT EQU 206H
CLK0 EQU 100H
CLK1 EQU 102H
CTRL EQU 106H
DATA SEGMENT
BUF1 DB 09H,11H,21H,12H,0CH,4AH,89H,49H
BUF2 DB 0C5H,0A3H,95H,93H,95H,13H,15H,23H,0H DATA ENDS
STACK SEGMENT PARA STACK 'STACK'
DB 100 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
MOV AL,10010000B
MOV DX,CTRL_PORT
OUT DX,AL
MOV AL,0
MOV DX,B_PORT
OUT DX,AL
MOV DX,C_PORT
OUT DX,AL
CALL PLAY
LEA SI,BUF1
LEA BX,BUF2
AAA1: MOV CH,[BX]
MOV CL,CH
AND CL,00001111B
CALL SHOW1
CALL DELAY
CALL SHOW2
CALL DELAY
JMP AAA6
AAA4: MOV DX,A_PORT
IN AL,DX
AND AL,00000001B CMP AL,00000000B JNZ AAA7
MOV AL,00001001B MOV DX,B_PORT
OUT DX,AL
MOV AL,10010000B MOV DX,C_PORT
OUT DX,AL
JMP AAA4
AAA7: MOV DX,A_PORT
IN AL,DX
AND AL,00000010B CMP AL,00000000B JNZ AAA4
CMP CL,0
JNZ AAA5
INC SI
INC BX
MOV AL,[BX]
CMP AL,0
JNZ AAA1
JMP START
AAA5: DEC CL
DEC CH
CALL SHOW2
CALL DELAY
AAA6: MOV DX,A_PORT
IN AL,DX
AND AL,00000010B CMP AL,00000010B JNZ AAA6
JMP AAA4
SHOW1 PROC
MOV AL,[SI]
MOV DX,B_PORT
OUT DX,AL
RET
SHOW1 ENDP
SHOW2 PROC
MOV AL,CH
MOV DX,C_PORT
OUT DX,AL
RET
SHOW2 ENDP
PLAY PROC
MOV AL,00110111B MOV DX,CTRL
OUT DX,AL
MOV AX,1000
MOV DX,CLK0
OUT DX,AL
MOV AL,AH
OUT DX,AL
RET
PLAY ENDP
DELAY PROC
PUSH CX
MOV CX,0F5FH
LOOP1: LOOP LOOP1
POP CX
RET
DELAY ENDP
CODE ENDS
END START
7 程序及硬件系统调试情况
程序运行结果:
1.东西路右拐和南北路左拐绿灯点亮5秒,直通到均为红灯2.5秒后,黄灯亮3秒钟,。
此时南北方向仍维持红灯点亮。
3.东西方向直通,为绿灯,南北方向红灯
4.黄灯再亮三秒之后,东西路左拐和南北路右拐绿灯点亮
5.南北方向的黄灯亮3秒钟后,南北方向直通,延时5秒
6.闭合A口开关,四个路口全红灯,表明紧急状态。
8 设计总结与体会
经过这两周的课程设计, 做关于交通灯系统设计,我认真查阅资料,学习关于这方面的知识,比如说要了解8086芯片中各个引脚的功能,怎么样去使用8255这个可编程并行接口芯片,怎么样使用8253来定时及输出一定频率的脉冲以及交通有哪些规则.在理论学习的基础上,又下了一次苦工夫,算是明白了设计一个系统的过程;也让我体会到要想成功地设计某个东西,光学好专业知识是不够的,必须要系统的知识,无论在哪方面都要有个明白的概念,只有这样才不至于在设计过程中摸不着头脑,知道去哪些是需要查的资料,还有一点,我觉得我在芯片编程方面,特别是在初始化方面是我最大的困难,或许是我的汇编语言学得不够好,我只能借助参考资料,查每一条指令的作用与功能,这样一来又巩固了我的对汇编语言的了解.
而且在设计中,把死板的课本知识变得生动有趣,激发了学习的积极性。
把学过的计算机编译原理的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。
以前对与计算机操作系统的认识是模糊的,概念上的,现在通过自己动手做实验,从实践上认识了操作系统是如何处理命令的,如何协调计算机内部各个部件运行,对计算机编译原理的认识更加深刻。
9 参考文献
[1] 彭虎、周佩玲、傅忠谦.《微机原理里与接口技术》(第2版) [M] 北京:电子工业出版社 2008,149-187
[2] 周明德.《微型计算机系统原理及应用》[M] 北京:清华大学出版社,1998;
- 9 -。