利用单片机控制8个发光二极管,设计8个灯同时闪烁的控制程序?

如题所述

方法:
1:设定一个变量i,可以从0到3循环的变化
2:检测一个经过消抖处理的按键,按一下,i+1
3:当i值为各个值时,执行相应的花样。
流水灯参考程序
#include
#include
#define uchar unsigned char
uchar j,temp;
void delay(unsigned int ms)
{
uchar t;
while(ms--)
for(t=0;t<123;t++);
}
void main()
{
P1=0xff;
delay(500);
temp=0xfe; //有点怪,led接在P2.3~P2.6
for(j=0;j<4;j++)
{
P1=temp;
delay(500);
temp=_crol_(temp,1);
}
P1=0xff;
while(1);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2021-11-17
八个灯接在单片机的P1口(P0,P2,P3,P4都一样)

while(1){
 P1 ^= 0xff;

 delay(你想要延时的时间);
}本回答被网友采纳

利用单片机控制8个发光二极管,实现8个灯同时闪烁的控制程序
以51位例,使用P1的八个IO口控制。先定义:sbit LED0=P1^0;sbit LED1=P1^1;...以此类推,定义八个。然后在主循环中:LED0=0;延时一段时间;LED0=1;就可以看到闪烁了。

...程序 利用单片机控制8个发光二极管,设计8个灯同时亮的控制程序怎么写...
八个灯接在单片机的P1口(P0,P2,P3,P4都一样)while(1){ delay(你想要延时的时间);P1=0xff;delay(你想要延时的时间);P1=0;} 注意led最好加驱动,不然单片机会坏的。

用单片机设计8个led灯同时闪烁的程序!!
方法:1:设定一个变量i,可以从0到3循环的变化 2:检测一个经过消抖处理的按键,按一下,i+1 3:当i值为各个值时,执行相应的花样。流水灯参考程序 include include define uchar unsigned char uchar j,temp;void delay(unsigned int ms){ uchar t;while(ms--)for(t=0;t<123;t++);} v...

用五一单片机c语言编程,p1口控制八个发光二极管,实现每隔一秒,两两点亮...
首先,我们定义了一个延时函数delay(),通过两个for循环实现毫秒级的延时。在主函数中,程序初始化P0口为全灭状态,然后进入一个无限循环,每隔一秒,将P0口的特定位设置为1,点亮两个LED,延时1秒后切换到下一个LED对。具体步骤如下:1. 全部LED初始状态:P0 = 0x00 2. 点亮P0.0和P0.1:P0 ...

用c语言编写单片机流水灯程序,(8个发光二极管从左至右循环点亮)_百度...
\/\/第一个灯亮 delay();\/\/延时 P3=0xfd;\/\/第二个灯亮 delay();P3=0xfb;\/\/第三个灯亮 delay();P3=0xf7;\/\/第四个灯亮 delay();P3=0xef;\/\/第五个灯亮 delay();P3=0xdf;\/\/第六个灯亮 delay();P3=0xbf;\/\/第七个灯亮 delay();P3=0x7f;\/\/第八个灯亮 delay();} } ...

设计用8031单片机P1口为输出口控制8只发光二极管循环点亮。1、 画出接...
设计用8031单片机P1口为输出口控制8只发光二极管循环点亮。1、 画出接口图。 2、 写出控制程序。 匿名 | 浏览862 次 |举报 我有更好的答案推荐于2017-12-16 13:34:05 最佳答案 \/*--- 名称:流水灯 编写:杨光楼 日期:2009.5 修改:无 内容:循环点亮P1口对应的8个LED灯,造成循环流水点亮的效果---*\/#i...

求按顺序把单片机8个发光二极管点亮的c语言程序
include "reg51.h"void f(int q){ int i;for(i=0;i<q;i++);} void main(){ int j;for(j=0;j<8;j++){ f(5000);P1 <<=1;} \/*我的QQ空间里有个漂亮的代码,觉得好记得顶下哈,QQ:394866351*\/ }

8个彩灯依次点亮,求电路图和工作原理。
void delay(uint z)\/\/1ms延时子程序,通过z值改变延时 { uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);} C语言3:\/* 该实验是流水灯(8个发光二极管循环点亮),功能是8个发光二极管循环以1S间隔点亮*\/ include<reg52.h>\/\/包含reg.52文件 include<intrins.h>\/\/包含左右循环移位子...

用单片机P0控制8个LED,要求8个LED按1357——2468的顺序轮流点亮_百度...
一键多功能按键识别技术 1.实验任务 开关K1接在P3.2管脚上,在AT89S51单片机的P0.0端口接有1个发光二极管,上电的时候,L1接在P1.0管脚上的发光二极管在亮,当一次按下开关K1的时候,灯灭,再按一次,灯亮,如此轮流下去。 2.系统板上硬件连线 把“单片机系统”区域中的P3.2端口连接到“独立式...

要求用51单片机控制8个LED亮灭的原理图+程序+解说?
1、依次亮,依次灭:从一个灯亮到全亮,再到全灭,每次改变一个灯亮灭 2、奇偶号灯间隔亮灭:隔一个灯亮一个灯亮灯时间为1s,没有灯全灭的时候 3、依次闪烁、切换时间为3秒,闪烁时间为2秒,我理解的是,没三秒钟有一个灯在闪烁,其中有一秒钟是灭灯状态 程序中使用了P1口与8个发光二极管...

相似回答