bit LED1;bit LED2;LED1=1;LED2=0;while (1){ delay(2000);LED1=!LED1;LED2=!LED2;}

include#defineucharunsignedcharuchartimes,led;sbitkey1=P1^0;sbitkey2=P1^1;voidt0isr()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;times++;}voidrolled(){P0=led;led=(led>>1)|0x80;if(led==

交替闪烁就是在循环中让两个LED端口交替高低电平。循环中加入延时。延时函数我用循环实现。题目没有要求精准延时,如精准需用中断。include define uInt unsigned int sbit D1=P2^0;sbit D2=P2^1;sbit S1=

sbit LED1=P2^0;sbit LED2=P2^1;// STC的下载工具中,有延时的计算例子,再使用循环延时 void Delay100ms(){ //@11.0592MHz unsigned char i, j;i = 180;j = 73;do{ while (--j);} while (--i);}

} 单片机驱动LED灯的源程序:include //头文件。define uint unsigned int define uchar unsigned char sbit LED1=P1^7; //位定义。void delay_ms(uint);//mS级带参数延时函数。void main(){ while(1){

在无限循环中,不断检测K1和K2按键状态,以改变全局变量“freq”并控制LED灯的闪烁频率;然后使用一个计时器中断服务程序来控制LED灯的闪烁,具体实现方式请参考代码注释。最后,为了保证每个周期的闪烁持续时间与频率相符,应该

c语言控制led灯交替闪烁

并控制LED灯的闪烁频率;然后使用一个计时器中断服务程序来控制LED灯的闪烁,具体实现方式请参考代码注释。最后,为了保证每个周期的闪烁持续时间与频率相符,应该在循环内部加入一个延时操作,等待一定时间再进入下一次循环。

void delay(void) //两个void意思分别为无需返回值,没有参数传递。{ unsigned int i; //定义无符号整数,最大取值范围65535。for(i=0;i<20000;i++) //做20000次空循环。; //什么也不做,等待一个机

include#defineucharunsignedcharuchartimes,led;sbitkey1=P1^0;sbitkey2=P1^1;voidt0isr()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;times++;}voidrolled(){P0=led;led=(led>>1)|0x80;if(led==

else{led1=0;led2=0;} }

在线等,急,用C语言编程,实现单片机控制两个LED灯:当S1开关闭合时,两个LED灯交替闪烁?

C语言实现LED灯闪烁控制配套51单片机开发板。include //包含单片机寄存器的头文件 /***函数功能:延时一段时间 / void delay(void) //两个void意思分别为无需返回值,没有参数传递。{ unsigned int i; //定义

单片机C51编程问题:要实现一个开关控制两个灯,按要求两个灯有3种状态,就要声明一个变量,每按一下开关,变量加一,且变量取值为1,2,3,大于3再回1,又重复控制两个灯亮灭变化。变量加一后,就根据变量的三个值,

led1=0;led2=1;while(key==0);TR0=0;} void t0isr() interrupt 1 { TH0=(65536-50000)/256;TL0=(65536-50000)%256;time++;if(time>=20){ time=0;led1=~led1;led2=~led2;} } main(){ TMOD=0x01;

LED = ~LED; //每达到一定时间就更改LED灯状态 cnt = 0;} TF0 = 0;} void main(){ unsigned int temp;TMOD = 0x01; //设置T0为模式1 TH0 = 0xF8; //设置计时初值,到达此计时器将复位 TL0 = 0x

交替闪烁就是在循环中让两个LED端口交替高低电平。循环中加入延时。延时函数我用循环实现。题目没有要求精准延时,如精准需用中断。include define uInt unsigned int sbit D1=P2^0;sbit D2=P2^1;sbit S1=P

void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组 { TH1 = 0XFE; //定时器1定时时间=500us TL1 = 0X0C;if(YSJS1!=0){ YSJS1--;} else LED1=1;if(YSJS2!=0){ YSJS2--;} else

include#defineucharunsignedcharuchartimes,led;sbitkey1=P1^0;sbitkey2=P1^1;voidt0isr()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;times++;}voidrolled(){P0=led;led=(led>>1)|0x80;if(led==

求单片机c51的C语言编程:设当开关为1时,控制2个led交替闪烁,闪烁时间为5秒

C语言实现LED灯闪烁控制配套51单片机开发板。include //包含单片机寄存器的头文件 /***函数功能:延时一段时间 / void delay(void) //两个void意思分别为无需返回值,没有参数传递。{ unsigned int i; //定义

那你把两盏led灯并联,用一个口联接就行了,例如用P2口的1脚 include delay(){ int x,i;for(x=100;x>0;x--)for(i=50;i>0;i--);} void main(){ while(1){ P1^1=0;delay();p1^1=1;}

交替闪烁就是在循环中让两个LED端口交替高低电平。循环中加入延时。延时函数我用循环实现。题目没有要求精准延时,如精准需用中断。include define uInt unsigned int sbit D1=P2^0;sbit D2=P2^1;sbit S1=P

如果是PC机需要配置一块MOXA的TTL板卡来实现高低电瓶输出:1、先设定LED灯是低电平亮还是高电瓶亮,这里假设低电平;2、设置一个定时器,在定时器里面写代码,分别发送高、低电瓶值可实现交替闪耀;例程:include

LED2=!LED2;}

while(1){ LED1=~LED1;LED2=~LED2;for(n=0; n<20; n++){ Delay100ms();} } }

用C语言编写程序,要求实现两盏LED灯交替闪烁,间隔时间为2秒。

你根据你的单片机硬件接线图,把小灯的端口对应改一下就可以了 #include #define uint unsigned int #define uchar unsigned char uchar count; sbit led_1 = P2^1; sbit led_2 = P2^2; void main() { TMOD =0x01; TH0 = (65535-46080)/256;//50ms TL0 = (65535-46080)%256; EA = 1; ET0 = 1; TR0 = 1; while(1) { if(TF0 == 1) { TF0 = 0; TH0 = (65535-46080)/256;//50ms TL0 = (65535-46080)%256; count++; if(count == 40) { led_1 = 1; led_2 = 0; } if(count == 80) { count = 0; led_2 = 1; led_1 = 0; } } } }
#include#defineucharunsignedcharuchartimes,led;sbitkey1=P1^0;sbitkey2=P1^1;voidt0isr()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;times++;}voidrolled(){P0=led;led=(led>>1)|0x80;if(led==0xff)l
不知你怎么想的,51单片机和晶振写几行程序就行的,没看见线路板,不好说的。如果你是外行,说了你也不好理解,
最容易理解的写法:设置b1、b2、b3、reset四个按钮(按下为0)和对应的LED1、LED2、LED3三个灯(点亮为0)int reset, b1,b2,b3,LED1,LED2,LED3;while(1){(读取reset) if(reset==0) { LED1=LED2=LED3=1; read=1; } if(read==1) { (读取b1, b2, b3); if(b1==0) { LED1=0; read=0; } elseif(b2==0) { LED2=0; read=0; } elseif(b3==0) { LED3=0; read=0 } else LED1=LED2=LED3=1; }}
假设高电平点亮led while(1) { if(s1==0){ led1=0;led2=1;delayms(200);led1=1;led2=0;delayms(200);} else{led1=0;led2=0;} }
如果是PC机需要配置一块MOXA的TTL板卡来实现高低电瓶输出:1、先设定LED灯是低电平亮还是高电瓶亮,这里假设低电平;2、设置一个定时器,在定时器里面写代码,分别发送高、低电瓶值可实现交替闪耀; 例程: #include sbit led1 = P0^0;sbit led2 = P0^1; void delayms(unsigned int nMS){ unsigned char i,j; while (nMS--) { for (i = 12; i>0; i--) { for (j = 246; j>0; j--); } }} void main(){ while(1) { led1 = 0; led2 = 1;//一亮一灭 delayms(100); led1 = 1; led2 = 0;//交换亮灭 delayms(100); }}