导航:首页 > 操作系统 > 怎样点亮单片机奇数的led

怎样点亮单片机奇数的led

发布时间:2022-05-31 05:44:48

⑴ 请教高手单片机课程设计:先点亮奇数位灯再点亮偶数位灯``````

//流水灯 4 个按键 4种 亮法,自己修改 成自己要的 亮法,供参考
#include <REG51.h> //51头文件
#define DY_PORT P1 //设置LED连接的I/O组
#define DY_SPEED 100 //设置每一个明亮级的停留时间(值域:0~65535)
sbit k1=P3^0;
sbit k2=P3^1;
sbit k3=P3^2;
sbit k4=P3^3;
void delay (unsigned int a) // 1ms延时程序
{
unsigned int i;
while( --a != 0)
{
for(i = 0; i < 600; i++);
}
}
void main(void)
{
unsigned int i;
unsigned int temp;
while(1)
{
if(~k1)
{
temp=0x01;
for(i=0;i<8;i++) //8个流水灯逐个闪动
{
DY_PORT=~temp;
delay(DY_SPEED); //调用延时函数
temp<<=1;
}
}
if(~k2)
{
temp=0x80;
for(i=0;i<8;i++) //8个流水灯反向逐个闪动
{
DY_PORT=~temp;
delay(DY_SPEED); //调用延时函数
temp>>=1;
}
}
if(~k3)
{
temp=0xFE;
for(i=0;i<8;i++) //8个流水灯依次全部点亮
{
DY_PORT=temp;
delay(DY_SPEED); //调用延时函数
temp<<=1;
}
}
if(~k4)
{
temp=0x7F;
for(i=0;i<8;i++) //8个流水灯依次反向全部点亮
{
DY_PORT=temp;
delay(DY_SPEED); //调用延时函数
temp>>=1;
}
}
}
}

⑵ 如何在这个单片机流水灯程序里再加上控制奇数灯亮后偶数灯亮

#include <reg51.h>
#define LED P1
void delay(int);
main()
{
unsigned char i;
LED = 0xfe;
while (1)
{
for (i = 0; i < 7; i++)
{
delay(100);
LED = (LED << 1) | 0X01;
}
for (i = 0; i < 7; i++)
{
delay(100);
LED = (LED >> 1) | 0x80;
}
for (i = 1; i < 7; i += 2)
{
delay(100);
LED = (LED >> 1) | 0x80;
}
for (i = 0; i < 7; i += 2)
{
delay(100);
LED = (LED >> 1) | 0x80;
}
}
}
void delay(int x)
{
int i, j;
for (i = 0; i < x; i++)
for (j = 0; j <= 600; j++)
;
}

⑶ 如何让单片机的奇数和偶数流水灯轮流点亮

while(1)

{

P0=0x55;P1=0x01; //奇数亮

delay(500); //500ms

P0=0; P1=0; //全部熄灭

delay(200); //200ms


P0=~P0; P1=~P1; //偶数亮

delay(1000); //1000ms

P0=0; P1=0; //全部熄灭

delay(200); //200ms

}

⑷ 单片机控制8个LED灯,完成奇数灯亮偶数灯灭,然后偶数灯亮奇数灯灭,10次,用C语言编程

#include<reg51.h>
#include<intrins.h>
#defineucharunsignedchar
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
main()
{
uchari,j;
for(i=0;i<10;i++)
{
P0=0xaa;
delay(200);
P0=0x55;
delay(200);
}
for(i=0;i<10;i++)
P0=0xfe;
{
for(j=0;j<8;j++){P0=_crol_(P0,1);delay(200);}
}
while(1);
}

⑸ 单片机c语言LED灯奇数亮灯。

//LED低电平点亮
//LED1-LED8分别接P2.0-P2.7
#include <REGX51.H>
#define uchar unsigned char
#define uint unsigned int
void delay(unsigned char a) //延时
{
unsigned char i;
while(a--)
for(i=100;i>0;i--);

}
void main(void)
{
uchar i;
P2=0XFF;
while(1)
{
for(i=0;i<8;i=i+2)
{
P2=~(1<<i);
}
}
}

⑹ 51单片机led灯怎么亮

要式连接51单片机的LED灯被点亮,拢共需要三步:

  1. 搭建好51单片机运行的最小系统,并连接好下载线。

  2. LED灯的正极经过470Ω电阻连接在电源正极上,LED灯的负极连接在单片机的某个接口上,例如连接I/O口P1.0上。

  3. 编程使P1.0输出低电平,将编译好的程序下载到单片机里,在单片机再次上电后就可以看到LED灯发光亮起了。

⑺ (小白)单片机怎么接点亮LED谈硬件不是程序

LED正极接电源,负极接单片机的一个IO口(比如P1.0),中间要串联一个限流电阻,阻值在几百欧到1k之间。

⑻ 如何用单片机点亮LED灯

接好单片机的硬件电路,然后编写程序,再然后烧写程序,然后就可以程序了,没问题的话就可以按你的要求点亮了

⑼ 单片机C语言LED先奇数后偶数点亮

你这样运行的结果是,亮灯顺序编号是:(0.05S)3,(0.25s)5,(0.4s)7,(0.6s)1,(0.8s)4,(1.0s)6,(1.2s)8,(1.4s)2,(1.6s)3,(1.8s)5.............这是这个程序单步运行的结果。。
经试验查证,P0=0xfe;后要加个延迟,要不就一句程序运行时间太短,马上就运行底下的了,导致这句程序没反应出来。底下P0=0xfd,一样要加延迟。
循环只循环三次就够了,因为第一次你已经写出来了,入1已经写了,那就只要3、5、7就可以了。
所以程序可以是:

#include<reg52.h>
#include<intrins.h>
void delay()
{
unsigned char m,n,s;
for(m=20;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}

void main()
{
unsigned char i,j;
while(1)
{
P0=0xfe;
delay();
for(i=0;i<3;i++)
{P0=_crol_(P0,2);
delay(); }
P0=0xfd;
delay();
for(j=0;j<3;j++)
{P0=_crol_(P0,2);
delay(); }
}}

⑽ 单片机高手给点拨下,led灯只让偶数闪烁,奇数不亮,程序如何写

很好实现的 就是让偶数led灯亮 延时一段时间后 让偶数led灯灭 再延时一段时间 循环不断地重复这2个过程。
整个过程中,奇数led灯不亮。 这样就会产生偶数led灯闪烁现象。即就是由亮、灭交替产生的。

LLL: MOV P1,#10101010B; 偶数led灯亮
LCALL YS ;延时
MOV P1,#11111111B ;偶数led灯灭
SJMP LLL

YS: MOV R5,#2
YSLL1: MOV R4,#200
YSLL2: MOV R3,#250
DJNZ R3,$
DJNZ R4,YSLL2
DJNZ R5,YSLL1
RET

呵呵 满意就选满意回答

阅读全文

与怎样点亮单片机奇数的led相关的资料

热点内容
个人所得税java 浏览:752
多余的服务器滑道还有什么用 浏览:180
pdf劈开合并 浏览:17
不能修改的pdf 浏览:742
同城公众源码 浏览:478
一个服务器2个端口怎么映射 浏览:283
java字符串ascii码 浏览:67
台湾云服务器怎么租服务器 浏览:466
旅游手机网站源码 浏览:321
android关联表 浏览:934
安卓导航无声音怎么维修 浏览:324
app怎么装视频 浏览:426
安卓系统下的软件怎么移到桌面 浏览:85
windows拷贝到linux 浏览:762
mdr软件解压和别人不一样 浏览:895
单片机串行通信有什么好处 浏览:331
游戏开发程序员书籍 浏览:851
pdf中图片修改 浏览:279
汇编编译后 浏览:482
php和java整合 浏览:840