用51单片机?
#include<reg52h>
sbit LED0=P1^0;
sbit LED1=P1^1;
sbit LED2=P1^2;
sbit LED3=P1^3;
sbit LED4=P1^4;
sbit LED5=P1^5;
sbit LED6=P1^6;
sbit LED7=P1^7;
void delay(int x)
{
int y,z;
for(y=x;y>0;y--)
for(z=110;z>0;z--);
}
void mian()
{
char i;
for(i=0;i<20;i++)
{
P1=0xff;
delay(500);
P1=0;
delay(500);
}
}
8个 led 接在P1口
以51位例,使用P1的八个IO口控制。
先定义:
sbit LED0=P1^0;
sbit LED1=P1^1;
以此类推,定义八个。
然后在主循环中:
LED0=0;
延时一段时间;
LED0=1;
就可以看到闪烁了。
请设计一个8个led同时全部闪烁的程序
#include <reg51h>
main ()
{int i;
while (1)
{for (i=0;i<=30000;i++);
P1=~P1;
}
}
我写的这个程序应该可以,按一下灯亮,再按一下灯灭#include"REG52H"sbitLED1_01=P1^1;//LED灯sbitKEY0_01=P1^2;//按键voidDelay_1ms(unsignedintTime){unsignedintx,y;for(x=Time;x>0;x--)for(y=120;y>0;y--);}intmain(void){LED1_01=1;//打开LED灯点亮while(1){if(KEY0_01==0)//检测按键是否按下{Delay_1ms(10);//延时去抖动if(KEY0_01==0)//确定按键按下{LED1_01=~LED1_01;//取反LED灯[亮灭]}while(KEY0_01==0);//检测松手}}}你的图里有A/D转换器AD转换函数ADC_DISC#include#include"defh"#include"libh"sbitadc_cs=P1^0;sbitadc_rd=P1^1;sbitadc_wr=P1^2;/ADC0804启动转换函数/INT8Ustart_ad(){INT8Utemp;adc_cs=0;adc_wr=1;delay(1);adc_wr=0;delay(1);adc_wr=1;delay(1);//启动ADadc_rd=1;delay(1);adc_rd=0;delay(1);temp=P2;delay(1);adc_rd=1;delay(1);//读取数据returntemp;}用这个程序。
这就是典型的8个LED的流水灯,并用定时器来控制点亮的时间。可用定时器定时50ms,采用中断方式,对中断计数40次就是2s,每到2s移动点亮下一个LED灯。可先画出仿真图再写程序,如下所示仿真图。
以上就是关于求大仙,给出“8个LED的闪烁控制,要求亮0.5s,灭0.5s,不断闪烁20次。”的C语言编程程序全部的内容,包括:求大仙,给出“8个LED的闪烁控制,要求亮0.5s,灭0.5s,不断闪烁20次。”的C语言编程程序、利用单片机控制8个发光二极管,实现8个灯同时闪烁的控制程序、求单片机设计8个led灯同时闪烁的程序,等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)