交通信号灯调试

编写交通信号灯控制程序。要求如下:

1.能够正常的南北东西走向红绿灯控制

2.红绿灯切换的时候,黄灯红灯要闪烁

3.使用插入代码功能,代码格式一定要符合C语言标准格式

首先我们打开keil_proteus中调试交通信号灯的电路图

根据题目要求我们知道这9个灯的闪烁要满足

能够正常的南北东西走向红绿灯控制

红绿灯切换的时候,黄灯红灯要闪烁

所以现在我们打开Keil uVision4开始编撰代码,编好的代码如下

#include <reg52.h> 
#include "delay.h"
sbit W_E_R=P0^0;
sbit W_E_Y=P0^1;
sbit W_E_G=P0^2;
sbit N_S_R=P0^3;
sbit N_S_Y=P0^4;
sbit N_S_G=P0^5;

void main()    
{
    //四个路口红灯亮
    W_E_R = 0;
    N_S_R = 0;
    delay1s();
    //交通灯正常工作循环
    while(1)
    {
        //东西红灯亮,南北绿灯亮,10s延迟
        W_E_R = 0; 
        N_S_R = 1;
        N_S_G = 0;
        delay10s();
        //东西红灯闪,南北黄灯闪,3s延迟
        W_E_R = 0;
        N_S_Y = 0;
        N_S_G = 1;
        delay1s();
        W_E_R = 1;
        N_S_Y = 1;
        delay1s();
        W_E_R = 0;
        N_S_Y = 0;
        N_S_G = 1;
        delay1s();
        W_E_R = 1;
        N_S_Y = 1;
        delay1s();
        W_E_R = 0;
        N_S_Y = 0;
        N_S_G = 1;
        delay1s();
        W_E_R = 1;
        N_S_Y = 1;
        delay1s();
        //东西绿灯亮,南北红灯亮,10s延迟
        W_E_G=0;
        N_S_R=1;
        N_S_R=0;
        delay10s();
    //东西黄灯闪,南北红灯闪,3s延迟
    }
}

最后将代码输入到proteus中即可实现交通灯调试

猜你喜欢

转载自www.cnblogs.com/quanpeng/p/11674909.html
今日推荐