77范文网 - 专业文章范例文档资料分享平台

基于51单片机的智能十字路口交通灯系统设计(3)

来源:网络收集 时间:2020-04-15 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

重庆邮电大学第六届电子制作大赛

为方便电路,仅接一个四位数码管显示,具体有程序实现。通过同名管脚上所加电平的高低来控制法官二极管是否点亮而显示不同数字,由于数码管显示需要大一点的电流,而单片机管脚输出的电流不足以驱动它发亮,所以在数码管的位选处接NPN型三极管驱动它。

图8检测、报警电路

P2.2和P3.6外接传感器和蜂鸣器,当传感器检测到有人闯红灯时蜂鸣器就以滴滴声报警。由于单片机的I/O口输出电流太小,不能驱动蜂鸣器发出声音,所以要接一个电流放大电路,三极管的基极经过限流电阻R3后由单片机的P3.6控制。 (8)电源电路

图9

二、软件部分

交通灯控制器的软件设计采用C语言编程实现,算法及程序结构主要有,子函 数调用、程序初始化、程序的模块化、中断定时处理、按键检测判断、以及循环等。

1、燃亮时序

交通灯燃亮时序控制运用if判断语句,判断按键或程序初始化后设定的交

通灯时序状态值选择哪个灯亮,再通过C语言的循环结构构和顺序结构循环控制灯亮的顺序。

2、系统延时

系统延时通过软延时的方法,运用C语言的循环结构for语句,通过调用延 时子函数的方法产生约(1/12)*24*(N+110)us的延时,N为延时函数参数值。

-11-

重庆邮电大学第六届电子制作大赛

3、计数显示间隔1秒的精确定时

本系统延时由于受到单片机资源的限制,主要采用单片机定时器定时和软

延时相结合的方式。首先设置50ms计数初值为50000,当计数溢出并置标志位TR0为1时产生

中断,进入中断程序后,再通过软件延时的方式设置20次循环标志,只有当计数器中断了20次即

延时共1S时数码管才开始计数,以此实现1S的精确定时。

4、显示判断

通过设置显示类型的标志位,按键检测产生标志位变化,用if语句判断执行显示类型

5、模式切换、复位、暂停及传感检测

通过if语句判断检测到的外部输入信号,选择执行。

6、程序控制流程图如下图。

-12-

重庆邮电大学第六届电子制作大赛

开始 初始化 设定初值 按键事件检测与处 理 数码管显示程序处理 绿灯倒计时 光电管为低平? Y 检测车流量 N 倒计时完毕? Y 黄灯倒计时5秒 红灯倒计时 Y 光电管低电平?检测闯红灯 N 倒计时完毕? Y 结束

N -13-

重庆邮电大学第六届电子制作大赛

7、系统程序

#include #define uchar unsigned char #define uint unsigned int #define M 20 sbit fuwei=P3^0; sbit zhant=P3^2; sbit qieh=P3^1; sbit jianc=P3^5; sbit led=P2^2; sbit beep=P2^3;

sbit s1=P3^6; //流量liul sbit s4=P2^0; //闯红灯chuh sbit ra=P1^0; sbit ya=P1^1; sbit ga=P1^2; sbit rb=P1^3; sbit yb=P1^4; sbit gb=P1^5;

sbit chuangan=P2^1;

uint pp,cc,aa=20,bb=20,num,i,j,tt,dd,ee,ff,gg,m,n,kk,ll; uint num1=0,num2=0,m1=1,m2=1,m3=1,n1=1,n2=1; uint shia,shib,gea,geb,shi1,ge1,shi2,ge2,shi3,ge3,shi4,ge4; uint hh1=1,hh2=1,hh3=1,hh4=1; uint m3,h1=1,h2=1,h3=1,h4=1;

uchar code tabd[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};//7段数码管段码表共阳

uchar code tabw[]={0x80,0x40,0x20,0x10};//位选表 void delay(uint);

void display(uchar,uchar,uchar,uchar);

void traf(uchar,uchar,uchar,uchar,uchar,uchar); void main() {

pp=5;m3=1;aa=0;bb=0; traf(1,1,1,1,1,1);

ll=1;kk=1;n=1;m=1;dd=1; cc=1;tt=1;ff=0;gg=0; led=1; beep=1;

-14-

重庆邮电大学第六届电子制作大赛

/*************************************************/ TMOD=0x01;//定时器设置 TH0=(65536-50000)/256;

TL0=(65536-50000)%6; //50ms初值 EA=1; ET0=1; TR0=1;

/************************************************/ while(1) {

shia=aa/10;

gea=aa; //交通灯计数参量 shib=bb/10; geb=bb; shi1=num1/1000;

ge1=(num100)/100;

shi2=((num100)0)/10; //A车道车流量计数参量 ge2=((num100)0); shi3=num2/1000;

ge3=(num200)/100;

shi4=((num200)0)/10; // A车道闯红灯计数参量 ge4=((num200)0);

/**********************************************/ if(n1==1&&n2==1)

{display(shia,gea,shib,geb); } //调用显示函数,显示交通灯计数 else if(n1==0&&n2==1)

{ display(shi1,ge1,shi2,ge2); }//调用显示函数,显示车流量计数 else if(n1==1&&n2==0)

{display(shi3,ge3,shi4,ge4); }// 调用显示函数,显示闯红灯计数 if(s1==0) {EA=0; n1=0; }

else if(s1==1) //车流量数码管显示判断 {n1=1; EA=1; }

if(s4==0) {n2=0; EA=0;

-15-

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库基于51单片机的智能十字路口交通灯系统设计(3)在线全文阅读。

基于51单片机的智能十字路口交通灯系统设计(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/959563.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: