快捷搜索:  汽车  科技

51单片机十字路口红绿灯简单程序(如何用51单片机做十字路口交通信号灯的设计)

51单片机十字路口红绿灯简单程序(如何用51单片机做十字路口交通信号灯的设计)

任务描述:

某企业承担了一个十字路口交通灯控制系统设计任务,控制要求:东西向绿灯亮 5s 后,黄灯闪烁,闪烁5次亮红灯,红灯亮后,南北向由红灯变成绿灯,5s 后南北向黄灯闪烁,闪烁5次后亮红灯,东西向绿灯亮,如此往复。请用单片机设计其控制系统并调试运行。

电路原理图

51单片机十字路口红绿灯简单程序(如何用51单片机做十字路口交通信号灯的设计)(1)

元件清单

51单片机十字路口红绿灯简单程序(如何用51单片机做十字路口交通信号灯的设计)(2)

C语言程序

#include<reg51.h> //包含头文件reg51.h,定义51单片机中的专用寄存器 void delay0_5s(); void delay5s(); void main() { unsigned char k; TMOD=0x10; //设置T1为工作方式1 while(1) { P1=0x09; //东西绿灯亮5秒&南北红灯亮 delay5s(); for(k=0;k<5;k ) //东西黄灯闪烁&南北红灯 { P1=0x11; //东西黄灯亮&南北红灯亮 delay0_5s(); P1=0x01; //东西黄灯灭&南北红灯亮 delay0_5s(); } P1=0x24; //东西红灯亮&南北绿灯亮5秒 delay5s(); for(k=0;k<5;k ) //东西红灯&南北黄灯闪烁 { P1=0x22; //东西红灯&南北黄灯亮 delay0_5s(); P1=0x20; //东西红灯&南北黄灯灭 delay0_5s(); } } } void delay0_5s() //0.5秒延时 { unsigned char i; for(i=0;i<10;i ) { TH1=0X3C; TL1=0xb0; TR1=1; while(!TF1); TF1=0; } } void delay5s() //5秒延时 { unsigned char i; for(i=0;i<50;i ) { TH1=0X3C; TL1=0xb0; TR1=1; while(!TF1); TF1=0; } }模拟仿真视频

51单片机十字路口交通信号灯的设计仿真视频(点击蓝色字体可查看)

#C语言##单片机##51单片机##电子#

猜您喜欢: