⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 honglv.c

📁 这是一个八路跑马灯的实验在单片机做跑马灯时经常用到 希望能对大家有帮助
💻 C
字号:
/*******************************************************************************
*  标题:  xl系列单片机实验仪演示程序 红绿灯演示程序  (八路指示灯接p0口)      *
*  版本:  3.0 (试验通过版)可用xl600-xl1000单片机综合试验仪试验               *
*  邮箱:  sxj1974@163.com                                                      *
*  网站: http://www.51c51.com    www.8951.com                                 *
********************************************************************************
* 【版权】 Copyright(C)深圳市学林电子有限公司 www.51c51.com                    *
* 【声明】 此程序仅用于学习与参考,引用请注明版权和作者信息!                  *
*  【技术支持】请访问http://www.51c51.com/bbs/index.asp  官方论坛              *
********************************************************************************
*第一个状态:主干道、支干道均亮红灯5S                             	       *
*第二个状态:主干道亮绿灯30S、支干道亮红灯                        	       *
*第三个状态:主干道绿灯闪3次转亮黄灯、支干道亮红灯3S              	       *
*第四个状态:主干道亮红灯、支干道亮绿灯25S                        	       *
*第五个状态:主干道亮红灯、支干道绿灯闪3次转亮黄灯3S              	       *
*返回到第二个状态                                                 	       *
********************************************************************************/
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint  unsigned int
 sbit     RED_ZHU    =  P0^0;
 sbit     YELLOW_ZHU =  P0^1;
 sbit     GREEN_ZHU  =  P0^2; 
 sbit     RED_ZHI    =  P0^4;
 sbit     YELLOW_ZHI =  P0^5;
 sbit     GREEN_ZHI  =  P0^6; 
/*********************************************************
   500ms延时函数
*********************************************************/
 void delay(unsigned char j) 
{ 
   unsigned char k;
   unsigned int i;
   for(;j>0;j--)
  {
     for(i=1250;i>0;i--) 
     {
       for(k=180;k>0;k--);
     }
   }
} 
/*********************************************************
   主函数
*********************************************************/
main()
{
   uchar t;
   P0=0xff;
   P2=0xff;
   RED_ZHU=0;                    	//第一个状态
   RED_ZHI=0;
   delay(10);
  while(1)
  {    
    RED_ZHU=1;                   	//第二个状态
	RED_ZHI=0;
    GREEN_ZHU=0;
    delay(60);
	for (t=6;t>0;t--)           	//第三个状态
    {
	  GREEN_ZHU=~GREEN_ZHU;
      delay(1);
	}
    YELLOW_ZHU=0;
	GREEN_ZHU=1;
    delay(10);
    YELLOW_ZHU=1;
    RED_ZHU=0;                  	//第四个状态
	RED_ZHI=1;
    GREEN_ZHI=0;
    delay(50);
	for (t=6;t>0;t--)           	//第五个状态
    {
	  GREEN_ZHI=~GREEN_ZHI;
      delay(1);
	}
    YELLOW_ZHI=0;
	GREEN_ZHI=1;
    delay(10);
	YELLOW_ZHI=1;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -