LED流水灯现象:LED 流水灯就是一串 LED灯泡依次点亮,起到变换闪烁的效果
LED流水灯工作原理:
LED流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统, 即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。从下图中可以看出,如果要让接在 P1.0 口的 LED1 亮起来,那么只要把 P1.0 口的电平变为低电平就可以了;相反, 如果要接在 P1.0口的 LED1 熄灭,就要把 P1.0口的电平变为高电平;同理,接在 P1.1~P1.7 口的其他 7个 LED 的点亮和熄灭的方法同 LED1.因此,要实现流水灯功能,我们只要将发光二极管 LED1~LED8依次点亮、熄灭,8只 LED 灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
单片机源程序如下:
- /* 名称:从左到右的流水灯
- 说明:接在P0口的8个LED 从左到右循环依次点亮,
- 产生走 马灯效果 */
- #include<reg51.h>
- #include<intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- //延时
- void Delayms(uint x)
- {
- uchar i,j;
-
- for(i=x;i>0;i--)
- for(j=115;j>0;j--);
- }
- void main()
- {
- P0=0XFE;
- while(1)
- {
- P0=_crol_(P0,1);
- Delayms(1500);
- }
- }
复制代码
所有资料51hei提供下载:
跑马灯LED.zip
(133.5 KB, 下载次数: 165)
单片机作业.pdf
(257.05 KB, 下载次数: 66)
|