-
大小: 299KB文件类型: .zip金币: 2下载: 0 次发布日期: 2024-02-03
- 语言: 其他
- 标签: single-chip C language proteus
资源简介
基于51单片机设计十字路口交通灯,含Proteus仿真
功能:
1.实现主次干道的顺序通行
2.在按下紧急状态按钮后,所有路口禁止通行,红灯亮起
3.可以对路口通行时间进行调整,(增加或者减少)

代码片段和文件信息
#include
#define D P1
#define uchar unsigned char
#define uint unsigned int
/*******************************************函数声明*****************************************/
void z1(void);//南北通行
void z2(void);//南北注意
void z3(void);//东西通行
void z4(void);//东西注意
void gb(void); //关闭所有
void jinji(void);//紧急状态,红灯全亮
void sm(void); //扫描键盘
void plus(); //通行时间加1扫描
void minus(); //通行时间减1扫描
void plus2();
void minus2();
void timer(void);//定时器T1初始化
void time1(void);//定时器T1中断服务程序
void display(void);//显示函数
void delay(uint a);//10ms延时
/*************************************数组及全局变量的定义***************************************/
uint duan[10]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};//0~9的段码
uint ygwswgw2sw2; //全局变量
int timestimestime2times2time3;
/*********************************定义交通灯、数码管的位选、按键对应的引脚*********************************/
sbit d1 =P2^0; sbit d2 =P2^1; sbit d3= P2^2; sbit w1=P0^0; sbit H1 =P3^6; sbit H2=P3^7;
sbit d4 =P2^3; sbit d5 =P2^4; sbit d6= P2^5; sbit w2=P0^1; sbit key1 =P0^5;
sbit d7 =P2^6; sbit d8 =P2^7; sbit d9= P3^2; sbit w3=P0^2; sbit key2 =P0^6;
sbit d10=P3^3; sbit d11=P3^4; sbit d12=P3^5; sbit w4=P0^3; sbit key3 =P0^7;
/*********************************************主函数***********************************************/
void main(void)
{
times=18;
time=15;
time2=10;
times2=12;
y=0s=0; //定时器溢出计数初始化
P1M1=0X00; //设置推挽输出,增加数码管亮度
P1M0=0XFF;
timer(); //启动定时器T1
while(1)
{
z1(); //主干道通行,绿灯15秒
z2(); //主干道注意,黄灯3秒
z3(); //次干道通行,绿灯10秒
z4(); //次干道注意。黄灯2秒
}
}
/******************不同状态函数、定时器初始化、定时器中断服务函数************************/
void z1(void)//南北通,东西禁
{
while(s {
sm();
plus();
minus();
if(TR1==1)
{
//绿 /黄 /红
d4 =0;d5 =1;d6 =1;//北
d10=0;d11=1;d12=1;//南
d7 =1;d8 =1;d9 =0;//东
d1 =1;d2 =1;d3 =0;//西
}
sw2=(time-s)/10; //数码管十位(南北主干道)
gw2=(time-s)%10; //数码管个位
sw=(times-s)/10;
gw=(times-s)%10;
display(); //数码管显示
gb(); //全关
} s=0;//置零定时时间标志位
}
void z2(void)//南北黄灯注意,东西禁
{
time3=3;
while(s {
sm();
if(TR1==1)
{
//绿 /黄 /红
d4 =1;d5 =0;d6 =1;
d10=1;d11=0;d12=1;
d7 =1;d8 =1;d9 =0;
d1 =1;d2 =1;d3 =0;
}
sw2=(time3-s)/10;
gw2=(time3-s)%10;
sw=sw2;
gw=gw2;
display();
gb();
} s=0;
}
void z3(void)//东西通行,南北禁止
{
while(s {
sm();
plus2();
minus2();
//绿 /黄 /红
d4 =1;d5 =1;d6 =0;
d10=1;d11=1;d12=0;
d7 =0;d8 =1;d9 =1;
d1 =0;d2 =1;d3 =1;
sw2=(times2-s)/10;;
gw2=(times2-s)%10;
sw=(time2-s)/10;
gw=(time2-s)%10;
display();
gb();
} s=0;
}
void z4(void)//东西注意,南北禁止
{
time3=2;
while(s {
sm();
//绿 /黄 /红
d4 =1;d5 =1;d6 =0;
d10=1;d11=1;d12=0;
d7 =1;d8 =0;d9 =1;
d1 =1;d2 =0;d3 =1;
sw=(time3-s)/10;
gw=(time3-s)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-03-02 19:29 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\
目录 0 2019-03-02 20:09 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\PROTEUS for course design\
文件 141234 2019-03-02 19:43 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\PROTEUS for course design\Last Loaded jtd.DBK
文件 141161 2019-03-02 19:46 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\PROTEUS for course design\jtd.DSN
文件 768 2019-03-02 20:09 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\PROTEUS for course design\jtd.PWI
文件 153896 2019-03-02 19:29 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\jtd全部资料.md
目录 0 2019-03-02 19:29 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\
目录 0 2019-03-02 19:29 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\Listings\
文件 11250 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\Listings\jtd.lst
文件 18233 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\Listings\jtd.m51
目录 0 2019-03-02 19:29 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\ob
文件 13209 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\ob
文件 1112 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\ob
文件 3774 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\ob
文件 70 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\ob
文件 15531 2018-06-28 17:25 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\ob
文件 5593 2018-06-25 20:44 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\jtd.c
文件 70828 2018-06-24 23:20 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\jtd.uvgui.11712
文件 5379 2018-06-22 12:00 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\jtd.uvopt
文件 14017 2018-06-22 12:00 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\jtd.uvproj
文件 17735 2016-12-30 12:53 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\program-jtd\stc10.h
文件 74426 2015-07-17 16:48 基于51单片机的交通灯设计(含原理图,程序源码和Proteus仿真)\电路板原理图.pdf
- 上一篇:交互多模IMM 卡尔曼滤波
- 下一篇:286G黑客VIP视频教程BT种子.txt
相关资源
- MODERN ROBOTICS MECHANICS PLANNING AND CONTROL
- 数字电路知识点汇总(精华版).doc
- 3新概念模拟电路-运放电路的频率特性
- TCP IP通信labview程序
- Azure开发教程:Azure_Serverless_Computing
- SpringMVC文件上传与的实现.rar
- Power Electronic Converters Modeling and Contr
- CE修改器风叶人加强版
- Oracle+11gR2+RAC安装详解(HP-UX+11.31+ia6
- Oracle+GoldenGate运维完全手册
- STM32F103RC+ADC+DMA多通道采样LCD显示
- Modbus协议官方文档中、英文全
- pcbtemp电流计算软件
- I2C读写AT24C02 基于STM32F103 cube116540
- Scratch源码
- Microsoft Forms 2.0107770
- 实验三 消息中间件应用开发:Active
- WCE注入工具
- ModelGoon-4.4.1-site.zip
- AsyncTask文件控制暂停和继续,在状态
- Visio大全模具(含Cisco、IBM等常用拓扑
- 信号奇异点Lipschitz指数计算
- 基于STM32RCT6的步进电机驱动程序
- 酒店管理系统基于Qt Creator5)
- 用友NC开发API字典
- Navicat Premium 15汉化包.zip55438
- 登录注册界面.zip48872
- 条码字体barcode128
- Rational Rose Common破解文件
- res10_300x300_ssd_iter_140000.caffemodel与dep
评论
共有 条评论