plc流水灯梯形图(要求1--8号灯依次亮后,全亮 再8--1号灯依次亮,全灭 能循环的亮?

如图所示,2个图,x0启动,x1停止,y0到y7是8个灯。

望采纳。。。。。。

plc流水灯梯形图(要求1--8号灯依次亮后,再8--1号灯依次亮,能循环的亮)

如图所示,X0为启动按钮,X1为停止按钮,Y0到Y7为8盏灯。

望采纳。。。。。。

如何用单片机实现流水灯,从一依次亮到八,再从八依次亮回一,一直循环?

有个想法, 放一个字节LED做标志位,可位寻址。 每一位代表一个灯。

对字节LED附初值1,做一个200mS的时钟,每200ms对字节LED值做左移1位指令(汇编可循环)。

主程序中位寻址判断字节LED的bit(0-7)点亮相应的灯。或者直接P0=LED

纯想法、还没试过,感觉好玩,呵呵。 好像上述灯流的方式不对,不过可以改。。。

实现单片机信号灯1-8依次循环点亮的程序怎么写

把各个花样写在子函数,中断中对变量加1,在判断是否大于5,大于5就对变量清零。因为你要5种花样。主函数判断变量的值,1时执行从左到右依次点亮,2时执行从左到右逐个依次熄灭。依次下去

# include "reg51.h"                   // 包含头文件

#define uchar unsigned char

void  delay02s(void)                 // 延时0.2s子程序

{

unsigned  char i,j,k;

for ( i=2;i0;i-- )

for (j=200;j0;j-- )

for (k=250;k0;k-- );

}

void  main (void)                    // 主函数

{

uchar i,j;

while (1)                           // 死循环

{

j=0x01;                         // j初始化为0x01,左移初始值

for(i=0;i8;i++)                 // for循环语句,完成8个循环

{

P1= ~ j;                       // 对变量j 中的值按位取反后,从P1口输出

delay02s( );                    // 延时0.2s

j= j1;                       // 左移1位

}

j=0x80;                          // 设置右移初始值j为0x80

for (i=0;i8;i++)

{

P1= ~ j;

delay02s( );

j= j1;                       // 右移1位

}

}

}

流水灯1到8顺序点亮后再由8到1顺序熄灭如此循环

while下两个for,for里1点点亮。延时。二灯点亮延时,,,,第二个for里从8灯开始熄灭延时

如何用单片机实现流水灯,从一依次亮到八,再从八依次亮?

单片机流水灯C语言程序的源代码如下:

#include //51系列单片机定义文件。

#define uchar unsigned char //定义无符号字符。

#define uint unsigned int //定义无符号整数。

void delay(uint); //声明延时函数。

硬件特征

1、单片机的体积比较小, 内部芯片作为计算机系统,其结构简单,但是功能完善,使用起来十分方便,可以模块化应用。

2、单片机有着较高的集成度,可靠性比较强,即使单片机处于长时间的工作也不会存在故障问题。

3、单片机在应用时低电压、低能耗,是人们在日常生活中的首要选择, 为生产与研发提供便利。