国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)檢測(cè)交流電掉電程序應(yīng)用(RGB控制)

單片機(jī)檢測(cè)交流電掉電程序應(yīng)用(RGB控制)

作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏

void led1_on()

{

GP0=1;

if(g!=0&&b==5)

{

g--;

r++;

}

if(r!=0&&g==5)

{

r--;

b++;

}

if(b!=0&&r==5)

{

b--;

g++;

}

if(g+r+b!=50)

{

g=40;

r=5;

b=5;

}

for(a=0;a<30;a++)

{

if(g!=0) //綠色漸變

{

GP1=0;

timer1(g);

GP1=1;

}

if(r!=0) //紅色漸變

{

GP2=0;

timer1(r);

GP2=1;

}

if(b!=0) //藍(lán)色漸變

{

GP4=0;

timer1(b);

GP4=1;

}

}

}

void key_scan()

{

if(GP5==0)//按鍵按下

{

key2_time_cnt++;

if(key2_time_cnt==TIME_MAX)

{

key_flag=1;

}

}

else

{

key2_time_cnt=0;

if(key_flag==1)

{

key_flag=0;

num++;

if(num>3)num=0;

}

}

}

void main()

{

TRIS=0b00110000;

GP0=1;

GP1=0;

GP2=0;

g=40;

r=5;

b=5;

while(1)

{

key_scan();

if(num==0)

{

led1_on();

}

else if(num==1)

{

GP0=1;//綠色亮

GP1=0;
GP4=0;

}

else if(num==2)

{

GP0=0;

GP1=1;//紅色亮
GP4=0;

}

else if(num==3)

{

GP0=0;

GP1=0;
GP4=1;//藍(lán)色亮

}

}

}

RGB函數(shù)構(gòu)造比較巧妙,不知道原創(chuàng)者是誰(shuí)?不想多費(fèi)唇舌。交流掉電檢測(cè)才是要說(shuō)的重點(diǎn),
if()
{}
else
{}
格式,開(kāi)始時(shí),如果GP5口上有低電平出現(xiàn),對(duì)變量key2_time_cnt進(jìn)行自加,當(dāng)數(shù)值大于1000,(大概是12MS)左右,認(rèn)為是交流電掉電了,讓斷電標(biāo)志key_flag置1 ,當(dāng)GP5口變?yōu)楦唠娖降臅r(shí)候,把key2_time_cnt清零,同時(shí)判斷斷電標(biāo)志是否有效,如果有效,讓分檔變量num加1,如果有4種功能那么從0加到3就要?dú)w零。此交流檢測(cè)函數(shù)簡(jiǎn)單實(shí)用,可以放在主程序循環(huán)中,檢測(cè)掉電不會(huì)漏檔。如何在漸變中響應(yīng)交流檢測(cè),就是利用檢測(cè)函數(shù)作為延時(shí)的循環(huán)主體。這樣既可以延時(shí),又可以檢測(cè)IO口的變化。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉