文档库 最新最全的文档下载
当前位置:文档库 › 简单IO实验(交通灯控制)--单片机

简单IO实验(交通灯控制)--单片机

简单IO实验(交通灯控制)--单片机
简单IO实验(交通灯控制)--单片机

简单I/O实验(交通灯控制)

一.实验要求

以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理。

二.实验目的

1.学习在单片机系统中扩展简单I/O接口的方法。

2.学习数据输出程序的设计方法。

3.学习模拟交通灯控制的方法。

4.学习双色灯的使用。

三.实验电路及连线

四.实验说明

1.因为本实验是交通灯控制实验,所以要先了解实际交通灯的变化规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。

2.双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。

五.实验程序框图

程序框图:

源代码:

ORG 0000H

LJMP START

ORG 0040H

START:

MOV SP,#60H

LCALL STATUS0 ;初始状态(都是红灯)

CIRCLE: LCALL STATUS1 ;南北绿灯,东西红灯LCALL STATUS2 ;南北绿灯闪转黄灯,东西红灯LCALL STATUS3 ;南北红灯,东西绿灯LCALL STATUS4 ;南北红灯,东西绿灯闪转黄灯LJMP CIRCLE

STATUS0: ;南北红灯,东西红灯

MOV DPTR,#8300H

MOV A,#0FH

MOVX @DPTR,A

MOV R2,#10 ;延时1秒

LCALL DELAY

RET

STATUS1: ;南北绿灯,东西红灯

MOV DPTR,#08300H

MOV A,#5AH ;南北绿灯,东西红灯

MOVX @DPTR,A

MOV R2,#50 ;延时5秒

LCALL DELAY

RET

STATUS2: ;南北绿灯闪转黄灯,东西红灯MOV DPTR,#8300H

MOV R3,#03H ;绿灯闪3次

FLASH: MOV A,#5FH

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

MOV A,#5AH

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

DJNZ R3,FLASH

MOV A,#0AH ;南北黄灯,东西红灯

MOVX @DPTR,A

MOV R2,#10 ;延时1秒

LCALL DELAY

RET

STATUS3: ;南北红灯,东西绿灯

MOV DPTR,#8300H

MOV A,#0A5H

MOVX @DPTR,A

MOV R2,#50 ;延时5秒

LCALL DELAY

RET

STATUS4: ;南北红灯,东西绿灯闪转黄灯MOV DPTR,#8300H

MOV R3,#03H ;绿灯闪3次

FLASH1: MOV A,#0AFH

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

MOV A,#0A5H

MOVX @DPTR,A

MOV R2,#03H

LCALL DELAY

DJNZ R3,FLASH1

MOV A,#05H ;南北红灯,东西黄灯MOVX @DPTR,A

MOV R2,#10 ;延时1秒

LCALL DELAY

NOP

RET

DELAY: ;延时子程序

PUSH 2

PUSH 1

PUSH 0

DELAY1: MOV 1,#00H

DELAY2: MOV 0,#0B2H

DJNZ 0,$

DJNZ 1,DELAY2 ;延时100 mS

DJNZ 2,DELAY1

POP 0

POP 1

POP 2

RET

END

单片机交通灯实训报告

机电工程学院课程设计报告 课程名称:单片机课程设计 专业班级: 13电本2班 学号: 2013041632 学生:罗炜 指导教师:王清辉、何文丰 完成时间: 报告成绩:

交通灯设计 一、设计任务与要求 设计基本要求: (1)车辆通行繁忙的十字交叉路口,设计一交通灯控制器,设东西方向通行时间为30秒,当剩余3秒时黄灯亮,南北方向通行时间为20秒,当剩余3秒时黄灯亮。(2)东西、南北方向各用三个(绿、黄、红)LED表示,并用数码管显示东西、南北方向的剩余时间。 (3)可利用按键修改时间参数,可以利用按键切换东西南北交通灯的当前状态(即立刻东西由红变绿,南北有绿变红,并按设定的时间工作)。 二、方案设计与论证 表2-1:交通灯的工作状态表 根据表2-1所示可将交通灯的工作状态设为以下几个步骤: 1、初始状态时即为东西方向绿灯通行27秒+3秒黄灯,此时南北红灯亮。 2、随后是南北方向绿灯通行17秒+3秒黄灯,此时东西红灯亮。 3、通过按模式选择键一次来切换东西南北交通灯的当前状态。(通过设置定时计时器T1实现交通灯的计时) 4、通过按模式选择键第二次切换至南北方向红绿灯的计时设置,通过加减按键来确定南北方向红绿灯的计时数。 5、确定南北方向计数值后,通过按模式选择键第三次切换至东西方向红绿灯的计

时设置,通过加减按键来确定东西方向红绿灯的计时数。 6、确定交通灯计时数后再按下模式选择键后,交通灯便进入工作状态。 时间计时的实现:采用定时中断实现秒的精确计时(详细方案入下列程序设计所示)。 按键输入的实现:通过编写按键读取函数,来实现交通灯的状态以及时间值得设定(详细方案入下列程序设计所示)。

单片机实验三(急救车与交通灯)

单片机技术与应用 实验报告 实验名称:外部中断实验(急救车与交通灯)班级:11062811 学号:11061118 姓名:吕琳涛 指导老师:谷雨 2013年5月20日

1. 实验要求 由以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理,并允许急救车优先通过的要求。有急救车到达时,两向交通信号为全红,以便让急救车通过。假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。本实验以按键为中断申请,表示有急救车通过。 2. 实验目的 1.学习外部中断技术的基本使用方法。 2.学习中断处理程序的编程方法。 3. 程序说明: 在本次实验中,我们可以确定外部中断的作用是用于有救护车行驶过来时对程序的进行的简单的控制。对于正常的红绿灯的亮灭我们可以参考第一个实验中流水灯的设计理念。综上所述我们这一次的实验就是流水灯与外部中断的结合。 通过对七种情况的罗列 1 0 0 1 0 1 1 0 南北绿,东西红 0 1 1 0 1 0 0 1 南北红,东西绿 1 0 0 1 1 1 1 1 只亮东西红 0 1 1 0 1 1 1 1 只亮南北红 0 0 0 0 0 1 1 0 南北黄,东西红 0 0 0 0 1 0 0 1 南北红,东西黄 0 0 0 0 1 1 1 1 全红 我们可以利用XBYTE[0xf200]这个函数对这几种情况进行读取与显

示,在不同情况进行显示的过程中我们用以前的delay函数进行时间上的规划从而达到依次显示的效果。 0x0f 全红XBYTE[0xf200]=0x0f; 0x96 南北绿,东西红XBYTE[0xf200]=0x96; 0x9f 只亮东西红XBYTE[0xf200]=0x9f; 0x06 南北黄,东西红XBYTE[0xf200]=0x06; 0x69 南北红,东西绿XBYTE[0xf200]=0x69; 0x6f 只亮南北红XBYTE[0xf200]=0x6f; 0x09 南北红,东西黄XBYTE[0xf200]=0x09; 在具体的实验代码编写过程中,我们会用到EA=1;EX0=1;IT0=1;用于设定外部中断0为跳变沿触发方式,默认为电平触发方式。interrupt 0函数是处理有救护车驶过时的情况。 至此,程序编写完成,放入软件中进行编译和下载。

实验三单片机IO口控制实验

实验三单片机I/O口控制实验 一、实验目的 利用单片机的P1口作I/O口,学会利用P1口作为输入和输出口。 二、实验设备及器件 PC机一台 https://www.wendangku.net/doc/be8767130.html,单片机仿真器、编程器、实验仪三合一综合开发平台一台 三、实验内容 1.编写一段程序,用P1口作为控制端口,使D1区的LED轮流亮。 2.编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED亮,不按时LED灭)。 四、实验要求 学会使用单片机的P1口作为I/O口,如果有时间用户也可以利用P3口作I/O口来做该试验。 五、实验步骤 1.用导线把A2区的J61接口与D1区的J52接口相连。原理如图所示。 2.先编写一个延时程序。 3.将LED轮流亮的程序编写完整并使用TKStudy ICE仿真器调试运行。 4.使用导线把A2区的J61接口的P1.0~P1.6与D1区的J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区的J53的KEY1相连。原理如上图所示。 5.编写P1.7控制LED的程序,并调试运行。(按下K1看是否全亮) 6.A2区J61接口的P1.7与D1区的J54的SW1相连。然后再使用TKStudy ICE仿真器运行程序,查看结果。 六、实验预习要求 仔细阅读实验箱介绍中的各个接口内容,理解该实验的硬件结构。还可以先把程序编好,然后在Keil C51环境下进行软件仿真。

七、实验参考程序 程序1: ORG 0000H LJMP Main ORG 0100H Main: MOV A,#0FFH CLR C MainLoop: CALL Delay RLC A MOV P1,A SJMP MainLoop Delay: MOV R7, #0 Loop: MOV R6, #0 DJNZ R6, $ DJNZ R6, $ DJNZ R6, $ DJNZ R7, Loop RET END 程序2: ORG 0000H LJMP Main ORG 0100H Main: JB P1.7,SETLED CLRLED: CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 CLR P1.4 CLR P1.5 CLR P1.6 SJMP Main SETLED: SETB P1.0 SETB P1.1 SETB P1.2 SETB P1.3

基于单片机的十字路口交通灯控制系统设计

长沙航空职业技术学院毕业设计(论文) 题目:基于单片机的十字路口 交通灯控制系统设计 学生姓名 系别航空电子电气工程系 专业应用电子技术专业 学号 指导教师 职称

目录 摘要 (2) 前言 (4) 第一章绪论 (5) 1.1背景 (5) 1.2 设计的目的及意义 (5) 1.3 交通灯控制系统设计的任务与要求 (5) 1.4 设计实现的主要功能 (6) 第二章交通灯的总体方案设计与论证 (7) 2.1 显示界面方案 (7) 2.2 输入方案 (7) 第三章交通灯原理分析 (8) 3.1 交通灯显示时序的理论分析 (8) 3.2 交通灯显示的理论分析 (9) 3.2.1倒计时显示的理论分析 (9) 3.2.2状态灯显示的理论分析 (10) 第四章交通灯系统硬件设计 (11) 4.1 交通灯系统设计芯片选择 (11) 4.2.1系统构成: (12) 4.2.2七段数码管介绍: (12) 第五章交通灯系统软件设计 (14) 5.1程序设计流程图 (14) 5.2 交通灯系统编程信息 (16) 第六章交通灯的仿真及调试 (17) 6.1 Proteus软件仿真 (17) 6.2功能调试 (18) 6.3 交通灯实物调试 (19) 结论 (21) 致谢 (22) 参考文献 (23) 附录 A(源程序) (24) 附录 B(电路原理图) (27) 附录 C(PCB图) (28)

摘要 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MCS-51系列单片机AT89C51为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、绿、黄灯燃亮时间的功能;红绿灯循环点亮,倒计时剩3秒时黄灯警示,显示时间通过P2口输出至双位数码管。本系统设计周期短、可靠性高、实用性强、操作简单、维护方便、扩展功能强。 关键词:单片机;交通灯;AT89C51

单片机io口控制实验报告

单片机实验报告 实验名称:I/O口控制 姓名:张昊 学号:110404247 班级:通信2班 时间:2013.11.19 南京理工大学紫金学院电光系

一、实验目的 1、学习I/O口的使用。 2、学习延时子程序的编写和使用。 3、掌握单片机编程器的使用和芯片烧写方法。 二、实验原理 1、广告流水灯实验 (1)做单一灯的左移右移,八个发光二极管L1~L8分别接在单片机的P1.0~P1.7接口上,输出“0”的时候,发光二极管亮,开始时 P1.0->P1.1->P1.2->P1.3->...->P1.7->P1.6->...P1.0亮,重复循 环。 (2)系统板上硬件连线:把“单片机系统”A2区的J61接口的P1.0~P1.6端口与D1区的J52接口相连。要求:P1.0对应着L1,P1.1对应 L2,……,P1.7对应着L8。 P1口广告流水灯实验原理图如下

程序设计流程:流程图如下 2、模拟开关实验 (1)监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开, L1熄火。 (2)系统板上硬件连线:把“单片机系统”A2区的P1.0端口用导线连接到D1区的LED1端口上;把“单片机系统”A2区的P3.0端口用 导线连接到D1区的KEY1端口上; 实验原理图如下图

程序设计流程 二、实验内容 1、流水灯 #include sbit p10=P1^0; sbit p11=P1^1; sbit p12=P1^2; sbit p13=P1^3; sbit p14=P1^4; sbit p15=P1^5; sbit p16=P1^6; sbit p17=P1^7; unsigned char count=0; bit flag; void main() {

单片机交通灯课程设计(LED显示倒计时)

单片机交通灯课程设计(LED显示倒计时).txt27信念的力量在于即使身处逆境,亦能帮助你鼓起前进的船帆;信念的魅力在于即使遇到险运,亦能召唤你鼓起生活的勇气;信念的伟大在于即使遭遇不幸,亦能促使你保持崇高的心灵。本文由ID很难想啊贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 摘要近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。由于我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,日常的交通堵塞成为人们司空见惯而又不得不忍受的问题。在这种背景下,结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。对交叉口实行科学的管理与控制是交通控制工程的重要研究课题,是保障交叉口的交通安全和充分发挥交叉口的通行能力的重要措施,是解决城市交通问题的有效途径。交通灯控制系统由 80C51 单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、 LED 信息显示功能,市交通实现有效控制。 目录 一序言...... 3 1.1 交通灯的形成...... 4 1.2 单片机的发展历程...... 4 1.3 芯片简介...... 5 1.4 技术指标及设计要求...... 7 二硬件电路的设计及描述...... 9 2.1MCS-51 单片机内部结构...... 9 2.2 MCS-51 单片机芯片引脚位置及功能符号......12 2.3 51 系列单片机运行的硬件条件......13 2.4 单片机的特点与应用......14 三软件设计流程及描述......15 3.1 软件设计......15 3.2 电路连接分配......16 3.3 主程序流程图......17 四源程序代码......18 体会总结......22 体会总结参考文献 (23) 2 一序言 1.1 交通灯的形成 当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在 19 世纪就已出现了。 1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914 年始安装于纽约市 5 号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 1 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968 年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告 3 信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。我们设计的单片机控制交通灯就是基于信号灯。 1.2 单片机的发展历程单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。在 MCS-51 系列单片机中,有两个子系列:51 子系列和 52 子系列。每个子系列有诺干中型号。51 系列有 8051、8751 和 8031 三个型号,后来经过改进产生了 80c51、87c51、80c31 三个型号; 52 系列有 5021、8752、 8032 三个型号,改进后的型号是 80c52/87c52、 80c32。改进后的型号更加省电。

基于AT89C51单片机的交通灯实验报告

/* * 实现基于C51的交通信号灯的控制操作 * 使用器件->> * 1.74HC138用于控制LED的位选码的设定 * 2.T0->>实现一个时间的定时操作(设置为10ms) * 3.P0->>作为LED现实的断码输出端 * 4.P1->>作为LED交通灯的信号灯的控制端 * 5.P2->>作为74HC138的为选码的控制端 * 6.P3.2->>作为一个复位的中断信号处理(与K1相连用于控制复位交通信号灯) * 需要考虑的一个问题是-》这个难道南北方向和东西方向的时间控制长短是一样的?#include //LED显示的字符段码 static char[] LED_TABLE = {0x3f , 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f}; /* * SN_IFGREEN:用于控制南北方向的灯的显示操作 * EW_IFGREEN:用于控制东西方向的灯的显示操作 * 0:红灯 * 1:绿灯 */ int SN_IFGREEN = 0; int EW_IFGREEN = 1; /* 用于控制定时时间为1s */ int TIME1S = 100; /* 用于控制时间为60s */ int LEDTIME = 60; /* LED交通灯的设置*/ sbit SN_RED = P1^0; sbit SN_YELLOW = P1^1; sbit SN_GREEN = P1^2; sbit EW_RED = P1^3; sbit EW_YELLOW = P1^4; sbit EW_GREEN = P1^5; /* 设置74HC138的位选码*/ sbit PA = P2^2; sbit PB = P2^3; sbit PC = P2^4; //初始化系统信息 void init_SYS(); //每当时间运行1s时进行操作处理 void time_SUB();

用51单片机控制交通灯汇编语言编写

基于51单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由80C51单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,市交通实现有效控制。 关键词:交通灯,单片机,自动控制 一引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消! 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口! 二概要设计 2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。 2.2总体设计框图 见图一:

单片机的交通灯显示系统

单片机课程设计 基于单片机的交通灯显示系统 交通灯是日常生活中常见的自动控制产品,人们的日常出行及人身安全等都与交通灯有着密切的联系。本文提出一种基于单片机的交通灯设计,系统包含三个功能模块: (1)交通灯LED显示模块,实时显示东西、南北两个路口红、黄、绿三种灯的状态; (2)定时器模块,中断计算绿灯剩余时间; (3)独立按键模块,分为紧急制动按钮和夜间模式按钮两个按钮; (4)LCD液晶显示模块,显示绿灯亮的剩余时间 系统结构如下图所示: 关键词:定时器;液晶显示;独立按键

山东经济学院课程设计 目录 摘要...................................................................................................... 错误!未定义书签。引言. (1) 1.交通灯的概述 (2) 1.1交通灯的结构 (2) 1.2 工作原理 (3) 1.3功能应用 (3) 1.4工作流程 (4) 2 交通灯显示系统组成 (5) 2.1 定时器TR1模块的选择与设计 (5) 2.2 LCD液晶显示模块的选择与设计 (5) 2.3独立按键模块的选择与设计 (7) 2.4LED模块的选择与设计 (8) 3 实验结果演示 (9) 结论 (10) 参考文献.................................................................................................. 错误!未定义书签。附录.. (11) 1.原件明细表 (11) 2.源程序清单 (11) 致谢 (17)

单片机仿真交通灯实验

实验报告实验名称:交通灯实验 姓名 班级 日期

实验要求: 1. 请使用单片机系统主机板和单片机系统键盘、显示板设计一个硬件系统,最终实 现一个交通路口红绿灯的控制。用两个数码管显示秒,8个LED灯分成四组,分别作为十字交叉路口的红绿灯。 2. 相对双向绿灯的最后几秒时,绿灯要闪烁,即亮灭交替,亮灭时间均为0.5秒, 然后变成红灯。 3. 每组同学可自行设计进行连接,形成一个单片机硬件系统。 4. 模拟调试完成后,用STC-ISP下载编程软件将生成的*。HEX文件在线下载到单片 机中。 5.下载后,按复位键执行程序,检验程序运行结果。 硬件连线方案:

程序流程图:

源代码: #include //51单片机头文件声明 unsigned char code tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; //定义无符号数组,定义的数据要放在ROM(程序存储区)里面 sbit dula=P1^3; //特殊功能位定义,数码管段码控制信号 sbit G1=P1^4; //数码管位选控制信号 sbit c=P1^5; //c表示P1.0口,地址最高位 sbit b=P1^6; //地址次高位 sbit a=P1^7; //地址最低位 sbit xl=P2^0; //特殊功能位声明,xl表示P2.0口 sbit xh=P2^1; // sbit yl=P2^2; sbit yh=P2^3; sbit sl=P2^4; sbit sh=P2^5; sbit zl=P2^7; sbit zh=P2^6; char count=100; //定时时间取10ms,循环100次即为1s unsigned char ssx=14; //秒上下,为上下绿灯亮时倒计数 unsigned char szy=10; //秒左右,为左右绿灯亮时倒计数 char sx=1; //方向标志,上下绿灯亮 void delay(char x) //延时函数,通过for循环进行延时 { char a,b;

单片机实验-IO口输入输出实验

实验二I/O口输入、输出实验 一、实验目的 1. 学习I/O口的使用方法。 2. 学习延时子程序、查表程序的编写和使用。 二、参考程序框图 led灯 500ms DJNZ R6,DE2; DJNZ R7,DE1; RET END 2、I/O口输入输出(方法一) ORG 0000H; START : MOV P2,#00H; //初始化 MOV P0,#00H; MOV P1,#0FFH; //p1 MOV DPTR,#TABLE; // MOV 50H,#0FEH; // L0 :MOV A,P1; //按键消抖 CJNE A,#0FFH,L1; AJMP L0; L1 :MOV A,P1; CJNE A,#0FFH,LL1; AJMP L0; LL1 :CJNE A,50H,LL2; //是否与地址50h中数据相等MOV P0,A; //相等输出对应led灯 MOV A,#00H; MOVC A,@A+DPTR;

MOV P2,A; //输出表格数据到数码管 LCALL DELAY; //延时 LJMP START; //返回程序开头 LL2 :XCH A,50H; //交换数据 RL A; //左移 XCH A,50H; //再次交换,此时地址50h中数据左移一位 INC DPTR; //表格数据地址加一 LJMP LL1; //返回继续比较 DELAY : MOV R7,#01H; //延时程序 DE1 : MOV R6,#28H; DE2 : MOV R5,#5AH; DJNZ R5,$; DJNZ R6,DE2; DJNZ R7,DE1; RET TABLE : ;//DB 0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H; DB 06H,5BH,4FH,66H,6DH,7DH,07H,7FH; //表格数据 END 程序二(方法二) ORG 0000H MOV P2,#00H; //I./O口初始化 MOV P1,#0FFH; //P1口赋FFH初值 MOV P0,#00H; START : MOV P2,#00H; //P2清0; MOV P0,#00H; //P0清0; MOV R1 ,P1; MOV A,R1; //读P1口 CJNE A,#0FFH,L1; //是否有数据输入 AJMP START; //无输入则跳转,继续查询 LCALL DELAY; L1 : MOV R1,P1; //消除按键抖动 MOV A,R1; CJNE A, #0FFH,LL1; AJMP START; LL1 : CJNE A,#0FEH,LL2; //是否按键1输入 MOV P2,#06H; //是则P2输出相应的按键号码 CPL A; //A取反 MOV P0,A; //输出到P0口 LCALL DELAY; //延迟 AJMP LP; //跳转到LP LL2 : CJNE A,#0FDH,LL3; //是否按键2输入 MOV P2,#5BH; //以下同上 CPL A;

基于单片机的交通灯控制系统

基于单片机的交通灯控制系统 一、实验目的 1、了解交通灯的控制方法 2、掌握8051单片机基本操作 3、掌握keil和PrOteuS软件的使用 二、实验原理 通过对十字路口的观察,发现红绿灯的控制原理:首先南北方向右转加直行的绿灯亮起。此时,东西方向为红灯;当右转加直行绿灯倒计时进入最后5秒, 绿灯切换为黄灯并开始闪烁,东西方向红灯不变;接着南北方向切换为左转灯,东西方向依然是红灯;同样当倒计时进入最后5秒时,黄灯开始闪烁。东西方向为红灯。然后东西方向的右转加直行绿灯亮起,以此类推。 三、实验内容及程序 主程序: void main (VOid)

Busy_LED=O; SPeCiaLLED=O; ITO=1; //INTO 负跳变触发 TMOD=O X OI;//定时器工作于方式1 TH0=(65536-50000)∕256;// 定时器赋初值TL0=(65536- 50000)%256; EA=1; //CPU开中断总允许 ET0=1;//开定时中断 EX0=1;//开外部INTO中断 TR0=1;// 启动定时 while(1) { Flag_EW_Yellow=0; //EW关黄灯显示信号 Time_EW=EW; Time_SN=SN; WhiIe(Time_SN>=5) {P仁S[0]; /∕SN 通行,EW红灯 DiSPIay();} P仁0x00; WhiIe(Time_SN>=0 ) {Flag_SN_Yellow=1; EW_Red=1; /∕SN //SN开黄灯信号位 黄灯亮,等待左拐信号,EW红灯 DiSPIay(); } Flag_SN_Yellow=0; /∕SN关黄灯显示信号Time_SN=SNL; WhiIe(Time_SN>=5) {P仁S[2];//SN左拐绿灯亮,EW红灯 DiSPIay();} P仁0x00; WhiIe(Time_SN>=0 ) {Flag_SN_YeIIow=1; EW_Red=1; /∕SN //SN开黄灯信号位 黄灯亮,等待停止信号,EW红灯 DiSPIay(); }

51单片机系统实验报告--计数器、交通灯

系统实验报告 学院XXXXXXXXX 专业XXXXXX 姓名XXXXX 学号XXXXXXX

一、本设计拟实现的功能 1.时钟:四只数码管低二位0~59计数后给高二位0~59计数(即分秒计时),一只按键控制开始、结束; 2.交通灯:灯和数码管结合,模拟十字路口的交通灯的点亮与熄 灭,数码管倒计时显示时间。 二、所用器件的功能、引脚图 1.所用器件:AT89S51、74LS47、LM7085 2.所用器件功能、引脚图 a)AT89S51 AT89S51引脚图 AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash

只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。 主要性能特点 1、4k Bytes Flash片内程序存储器; 2、128 bytes的随机存取数据存储器(RAM); 3、32个外部双向输入/输出(I/O)口; 4、5个中断优先级、2层中断嵌套中断; 5、6个中断源; 6、2个16位可编程定时器/计数器; 7、2个全双工串行通信口; 8、看门狗(WDT)电路; 9、片内振荡器和时钟电路; 10、与MCS-51兼容; 11、全静态工作:0Hz-33MHz; 12、三级程序存储器保密锁定; 13、可编程串行通道; 14、低功耗的闲置和掉电模式。

单片机io口实验报告

实验一 以下所有KEIL工程、程序均命名为自己姓名的拼音 一、实验目的: 熟悉KEIL软件的开发,掌握程序下载流程 二、实验环境: 1.硬件:PC微机、单片机开发板 2.软件:KEIL 三、实验步骤: 1.在KEIL中新建工程文件,在工程文件下新建C文件“姓名首字母.c”并加入到工程 中(注意C语言编程时,工程中要保留STARTUP.A51汇编文件)。 2.编写程序,初始化内部数据寄存器0x40开始的100个地址单元,写入0x55,然后复 制到0x60开始的存储器中,使用软件仿真的方式调试程序,观察程序模拟运行的结果: #include "reg52.h" unsigned char *p,*q; unsigned char i; int main(){ p=0x40; for(i=0;i<10;i++) { *p=0x55; p++; } for(i=0;i<10;i++) { *p=*q;

q++; p++; while(1); } } 调试时,在调试界面中依次找到 a) 变量观察窗口 b) 存储器窗口 c) 单步运行 d) 全速运行 程序运行结果(存储器窗口截图): 3.编写程序,控制实验板上的LED灯:D1-D3点亮,D4-D7熄灭,D8点亮#include”reg52.h” sbit P1_4=P1^4; int main() { P1_4=0; P0=0x1E;

While(1); } 4.编写C语言程序,实现LED灯循环点亮 #include "reg52.h" void delay (unsigned z) { while(z--); } int main() { unsigned char i; P1&=~(0x01<<4); P0=0xff; i=0x01; while (1) { P0=~i; i=i<<1; if(i==0x0) i=0x01; delay(10000); } } 四、实验总结

基于51单片机的交通灯控制系统设计

目录 一引言 (2) 二概要设计 (2) 2.1 设计思路 (2) 2.2总体设计框图 (2) 三硬件设计 (3) 3.1LED循环电路设计 (3) 3.1.1 89cs51单片机概述 (3) 3.1.2 LED循环说明 (5) 3.2 倒计时显示电路 (5) 3.2.1 74LS164芯片 (5) 3.2.2 共阴极数码显示管 (6) 3.2.3 倒计时电路 (6) 3.2.4 急通车电路 (7) 四软件按设计 (7) 4.1 程序流程图: (7) 4.2 LED红绿灯显示 (8) 4.3倒计时显示 (9) 4.4 急通车控制 (9) 4.5程序代码 (9) 五总结 (9) 参考文献 (9) 附录一: (9) 附录二: (10)

基于51单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由80C51单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,市交通实现有效控制。 关键词:交通灯,单片机,自动控制 一引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消! 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口! 二概要设计 2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。 2.2总体设计框图 见图一:

单片机交通灯实验报告(汇编语言)

实验四单片机交通灯实验 1、实验要求 本实验分两部分,第一部分是普通交通灯的模拟:初始状态0为东西红灯,南北红灯.然后转状态1南北绿灯通车,东西红灯.过一段时间转状态,南北绿灯闪几次转两黄灯,延时几秒,东西仍然红灯,再转状态3,东西绿灯通车,南北红灯.过一段时间转状态4.东西绿灯山几次转黄灯,延时几秒,南北仍然红灯,,最后循环至状态1。 第二部分在以上的基础上当有急救车到达时,两项交通信号为全红,以便让急救车通过.假定急救车通过路口时间为10秒,急救车通过后,交通恢复中断前状态.被实验已按键为终端申请,表示有急救车通过. 2、实验电路图 (1)十二端口控制 (2)六端口控制

3、实验程序如下 (1) 十二位控制ORG 0000H LJMP MAIN ORG 000BH LJMP IT0P MAIN: MOV P1,#0F0H MOV P0,#0FFH MOV A,#00H MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#3CH SETB ET0 SETB EA SETB TR0 HERE: SJMP HERE IT0P: MOV TL0,#0B0H MOV TH0,#3CH INC A CJNE A,#50,L1 MOV P1,#0FCH MOV P0,#0F3H RETI L1: CJNE A,#100,L2 MOV P1,#03CH MOV P0,#0FFH RETI L2: CJNE A,#110,L3

MOV P1,#0FCH MOV P0,#0FFH RETI L3: CJNE A,#120,L4 MOV P1,#03CH MOV P0,#0FFH RETI L4: CJNE A,#130,L5 MOV P1,#0F3H MOV P0,#0FCH RETI L5: CJNE A,#180,L6 MOV P1,#0C3H MOV P0,#0FFH L6: CJNE A,#190,L7 MOV P1,#0F3H MOV P0,#0FFH RETI L7: CJNE A,#200,L8 MOV P1,#0C3H MOV P0,#0FFH L8: CJNE A,#210,BUTTON MOV P1,#0F0H MOV P0,#0FFH CLR A RETI BUTTON:RETI END (2) 六位控制ORG 0000H LJMP MAIN ORG 000BH LJMP IT0P ORG 0013H LJMP IT1P MAIN: MOV P0,#09H MOV A,#00H MOV TL0,#0B0H MOV TMOD,#61H MOV TL0,#0FFH MOV TH0,#0FFH SETB ET0 SETB EA SETB TR0 SETB PX1

基于单片机的交通灯设计实训报告

重庆三峡学院 课程设计报告书题目:基于单片机的交通灯设计 学院(系): 学号: 学生姓名: 指导教师: 教师职称: 制作日期2011年12月25日 目录

1.设计要求---------------------------------------------------- 01 2.系统设计方案---------------------------------------------- 01 3.硬件电路设计---------------------------------------------- 02 4.软件系统设计---------------------------------------------- 06 5.仿真与调试------------------------------------------------- 08 6.实训体会---------------------------------------------------- 13 7.附录---------------------------------------------------------- 14 摘要

单片微型计算机简称单片机,即把组成微型计算机的各个功能部件,如中央处理器(CPU )、随机存储器(RAM )、只读存储器(ROM )、I/O 接口电路、定时器/计数器以及串行接口等集成在一块芯片中构成一个完整的微型计算机。设计一个基于单片机的交通灯设计。主要包括AT89c51单片机、复位电路、驱动控制芯片74LS240和74LS07及外中断等。实现控制各个路口的交通灯变化,通过外中断起 到紧急开关作用,加上复位电路,使其恢复成初始状态。 本设计主控芯片采用AT89C51单片机,配合其他基本设备完成设计。采用C51语言进行编程,编程后利用KEIL C51进行编译,生成对应用的HEX 文件,采用PROETUS 软件进行系统硬件的仿真模拟,检验功能。模拟试验成功后,焊接硬件电路,通过ISP 下载线将HEX 文件载入单片机内,完成整个设计进行实际操作,并实际记录单片机工作情况。 设计一个基于单片机的交通灯设计。主要包括AT89c51单片机、复位电路、驱动控制芯片74LS240和74LS07及外中断等。实现控制各个路口的交通灯变化,通过外中断起到紧急开关作用,加上复位电路,使其恢复成初始状态。 1. 设计要求 设计一个基本十字路口交通灯管理系统。初始化4个路口红灯全亮,2秒后切换为东西 路口红灯亮,南北绿灯亮,持续60秒,红绿灯切换过渡时红灯依旧亮,绿灯亮转变为黄灯闪烁5次,过程时间为5秒,然后切换为南北路口红灯亮,东西路口绿灯亮,持续时间60秒,过渡过程切换方式同上,5秒后,再次切换为东西路口红灯亮,南北绿灯亮。如此周而复始。 2.系统设计图 利用单片机完成交通信号灯控制器的设计,该交通信号灯控制器由一条主干道和一条支 干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮 南 东

单片机实验-单片机并行IO口的应用实验

单片机并行I/O口的应用实验 一、实验目的 1、熟悉Proteus软件和Keil软件的使用方法。 2、熟悉单片机应用电路的设计方法。 3、掌握单片机并行I/O口的直接应用方法。 4、掌握单片机应用程序的设计和调试方法。 二、实验内容或原理 1、利用单片机并行I/O口控制流水灯。 2、利用单片机并行I/O口控制蜂鸣器。 三、设计要求 1、用Proteus软件画出电路原理图。要求在P1.0至P1.7口 线上分别接LED0至LED7八个发光二极管,在P3.0口线上 接一蜂鸣器。 2、编写程序:要求LED0至LED7以秒速率循环右移。 3、编写程序:要求LED0至LED7以秒速率循环左移。 4、编写程序:要求在灯移动的同时,蜂鸣器逐位报警。 四、实验报告要求 1、实验目的和要求。 2、设计要求。 3、实验程序流程框图和程序清单。 4、电路原理图。 5、实验结果 6、实验总结。 7、思考题。 五、思考题 1、编程实现LED0至LED7以十六进制计数规律亮灯? 原理图:

程序清单: /*(1)LED0~LED7以秒速率循环右移 蜂鸣器逐位报警*/ ORG 0000H MAIN:MOV A, #11111110B;赋初值 LOOP:MOV P1,A ;赋值给P1口 CPL P3.0 ;低电平有效 LCALL DELAY ;调用延时电路 SETB P3.0 ;控制蜂鸣器叫的时间间隔 LCALL DELAY RL A LJMP LOOP DELAY:MOV R7,#0FFH LOOP1:MOV R6,#0F4H LOOP2:MOV R5,#02H DJNZ R5,$ ;"$"当前的PC值,R5的内容减1不为零,继续执行该语句 DJNZ R6,LOOP2 DJNZ R7,LOOP1 RET END /*(2)LED0~LED7以十六进制计数规律亮灯*/ ORG 0000H MOV A,#0FFH LOOP: MOV P1,A LCALL DELAY DEC A CJNE A, #0FFH,LOOP MOV A, #0FFH LJMP LOOP DELAY:MOV R7, #0A7H LOOP1:MOV R6, #0ABH LOOP2:MOV R5, #10H DJNZ R5, $ ;"$"当前的PC值。R5的内容减1不为零 DJNZ R6, LOOP2 DJNZ R7, LOOP1 RET END

相关文档
相关文档 最新文档