【摘要】:若干个灯泡有规律依次点亮或者依次熄灭叫流水灯,它用在夜间建筑物装饰方面。例如在建筑物的棱角上装上流水灯,可起到变换闪烁美不胜收的效果。一般情况下单片机的流水灯由若干个LED发光二极管组成,在单片机系统运行时,可以在不同的状态下让流水灯显示不同的组合,作为单片机运行正常的指示,当单片机系统出现故障时,可以利用流水灯显示当前的故障码,对故障做出诊断。本设计采用一块单片机(AT89C52.BUS)作为流水灯系统的控制核心,通过编程来实现单片机I/O口对LED的控制,使流水灯显示上下流动、停止流动、闪灯等功能,并由按键控制流水灯的不同亮法,LED的工作方式通过键盘的扫描实现。其中的LED采取共阴极接法,通过依次向连接的LED的I/O口送出低电平来实现LED的点亮。【关键词】:流水灯按键控制单片机 数码管显示1、引言1.1初始条件:1. 单片机型号为AT89C52,晶振频率为12MHz,控制16个红色发光二极管;2. 16个红色发光二极管共有6种亮灯模式,每个灯亮200ms;3. 通过若干按键选择,用查询方式实现红色发光二级管的不同亮灯模式;4.