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

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

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

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

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

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

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

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

如图所示:

由于这里是个纯时序逻辑。可以用一个时钟和启动按钮作为触发条件,第一秒开启l1输出,第三秒l1关断,l2输出。以此类推,当运行完一轮之后重置。

不用时序可以使用标志位,定义16个内部触点。开机之后启动触点1,触点1开启l1,当触点1开启1秒之后,启动触点2,在启动触点2时复位触点1,触点2开启l2,然后以此类推。

扩展资料:

基于平面光波导技术解决方案的器件包括:分路器(Splitter)、星形耦合器(Star coupler)、可调光衰减器(Variable Optical Attenuator,VOA)。

光开关(Optical switch)、光梳(Interleaver)和阵列波导光栅(Array Waveguide Grating,AWG)等。

根据不同应用场合的需求(如响应时间、环境温度等),这些器件可以选择不同的材料体系以及加工工艺制作而成。值得一提的是,这些器件都是光无源器件,并且是独立的。他们之间可以相互组合,或者和其他有源器件相互组合,能构成各种不同功能的高端器件。

参考资料来源:百度百科-plc

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

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

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

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

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

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

硬件特征

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

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

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