⑴ 單片機C語言編程點亮LED燈
可以通過左移函數_crol_()和右移函數_cror_()來實現LED等的來迴流動。 具體實現方法可以參考如下程序: #include #include #define uint unsigned int#define uchar unsigned charvoid delay(uint a);void main(){ P1=0xfe; while(1) { // 向左循環點亮LED for(i=0; i<7; i++) { P1=_crol_(P1,1); // 左移一位,點亮下一位LED delay(55); } // 向右循環點亮LED for(i=0; i/ 右移一位,,點亮上一位LED delay(55); } }}// 延時函數,延時a毫秒void delay(uint a){ uint x,y; for(x=a;x>0;x--) for(y=110;y>0;y--);}
⑵ 單片機間隔點亮一led燈的C語言程序
#include <reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
void delayms(uint);
void main()
{
uchar a,i,j;
while(1)
{
a=0xfe;
for(j=0;j<8;j++)
{
P1=a;
delayms(300);
a=_crol_(a,1);
}
}
}
void delayms(uint xms)
{
uint x,y;
for(x=xms;x>0;x--)
for(y=110;y>0;y--);
}
⑶ 單片機控制LED燈常亮30秒後閃爍怎麼編程
假設用的是51單片機的P1口,LED燈是低電平點亮,連接P1.0,那麼可以參考如下思路:
初始化:
P1 =0xFF;
P1.0=0;點亮
delay_s(30);延時30秒
P1.0=1;熄滅
while(1)
{
delay_s(1);延時1秒
P1.0=0;點亮
delay_s(1);延時1秒
P1.0=1;熄滅
}