久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 單片機(jī)RGB彩燈漸變七彩燈無頻閃 源程序 [打印本頁]

作者: yinqing452    時(shí)間: 2019-11-18 12:39
標(biāo)題: 單片機(jī)RGB彩燈漸變七彩燈無頻閃 源程序
/*彩燈自動(dòng)循環(huán):1、漸變*/

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define dengji 1//LED變化等級調(diào)整
sfr P5=0xC8;//xxxx,1111 端口5
uint shudu=30;//LED漸變速度調(diào)整
sbit B1=P3^3;
sbit R1=P5^4;
sbit G1=P5^5;
uchar cishu;
uchar num;//定時(shí)器計(jì)數(shù)變量
uint ji;//亮度等級控制變量
uint Rout,Gout,Bout;
void delay(uint z)
{
uint x,y;
for(y=z;y>0;y--)
for(x=2;x>0;x--);
}
void delay1(uint z)
{
uint x,y;
for(y=shudu;y>0;y--)
for(x=z;x>0;x--);
}
void pwm(uint r,uint g,uint b)
{
if(r!=0)
{
R1=1;
delay(r);
R1=0;
}
if(g!=0)
{
G1=1;
delay(g);
G1=0;
}
if(b!=0)
{
B1=1;
delay(b);
B1=0;
}
}
void main()
{
TMOD=0X01;
EA=1;
ET0=1;
TR0=1;
TH0=(65536-256)/256;//給定時(shí)器高8位賦值
TL0=(65536-256)%256;//給定時(shí)器低8位賦值
while(1)
{

pwm(Rout,Gout,Bout);


}
}
void zhong () interrupt 1
{

TH0=(65536-156)/256;//給定時(shí)器高8位賦值
TL0=(65536-156)%256;//給定時(shí)器低8位賦值
num++;//將定時(shí)計(jì)數(shù)變自動(dòng)增加1
if(num>=shudu)//如果速度變量等于定時(shí)計(jì)數(shù)器變量就執(zhí)行下面大括號(hào)語句
{
num=0;//將計(jì)數(shù)器清0
ji++;//將亮度等級控制變量加1
if((ji>0)&&(ji<100))//如果亮度等級控制變量ji小于100,紅燈亮起時(shí)間變量為240
{
Rout=240;//紅燈亮起變量為240
Gout=0;//綠燈亮起變量為0
Bout=0;//蘭燈亮起變量為0
}
if((ji>100)&&(ji<340))/*如果亮度等級控制變量ji大于100小于340(剛好240個(gè)等級),
紅燈亮起時(shí)間變量由原來的240,慢慢減小到0,同時(shí)綠燈由原來的0慢慢增到240,形成
紅燈到綠燈的漸變過程*/
{
Rout-=dengji;//將紅燈變量減1。因?yàn)閐engji為亮度變化等級(本程序變化等級為1),
Gout=0;//蘭燈不變
Bout+=dengji;//將綠燈變量加1
}
if((ji>340)&&(ji<440))/*亮度等級控制變量ji大于340小于440時(shí),讓綠燈變量停一段時(shí)間
這樣就形成了當(dāng)紅燈過度到綠燈時(shí),綠燈會(huì)停一會(huì)兒的效果。*/
{
Rout=0;//紅燈滅
Gout=0;//蘭燈滅
Bout=240;//綠燈亮
}
if((ji>440)&&(ji<680))//同理:亮度等級控制變量ji大于440小于680時(shí),由綠燈到蘭燈過度
{
Rout+=dengji;//紅燈變量不變
Gout+=dengji;//將綠燈變量減1
Bout=240;//將蘭燈變量加1
}
if((ji>680)&&(ji<685))//亮度等級控制變量ji大于680小于780時(shí),讓蘭燈變量停一段時(shí)間
{
Rout=240;//紅燈滅
Gout=240;//綠燈滅
Bout=240;//蘭燈亮一會(huì)兒
}
if((ji>685)&&(ji<925))//亮度等級控制變量ji大于780小于1020時(shí),由蘭燈到白燈過度
{
Rout-=dengji;//將紅燈變量加1
Gout=240;//綠燈變量加1
Bout-=dengji;//蘭燈不變
}
if((ji>925)&&(ji<1025))//亮度等級控制變量ji大于1020小于1025時(shí),由蘭燈到白燈過度
{
Rout=0;//將紅燈變量加1
Gout=240;//綠燈變量加1
Bout=0;//蘭燈不變
}
if((ji>1025)&&(ji<1265))//亮度等級控制變量ji大于1025小于1265時(shí),由白光到紅光過度
{
Rout+=dengji;//紅燈變量不變
Gout-=dengji;//綠燈變量自動(dòng)減1
Bout=0;//蘭燈變量自動(dòng)減1
}
if(ji>=1265)//當(dāng)亮度等級控制變量ji大于1210時(shí),就將它清0
ji=0;//將亮度控制等級清0
}
}


作者: 屋頂?shù)膽胸?nbsp;   時(shí)間: 2020-1-24 14:42
怎么delay1后面沒用到?
作者: lulgs    時(shí)間: 2020-1-26 12:17
實(shí)物有嗎?測試過嗎
作者: dzltlgq    時(shí)間: 2021-5-21 16:11
sbit R1=P3^4;
sbit G1=P3^5;修改




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 激情五月婷婷在线 | 99久久婷婷国产综合精品 | 天堂视频一区 | 一区二区久久 | 夜夜骑综合 | 天堂综合网 | 狠狠干狠狠插 | 91精品国产综合久久久久久丝袜 | 91精品国产91久久久久久不卞 | 欧美精品三区 | 日韩欧美一区二区三区 | 日本一区二区高清视频 | 成人高清在线 | 国产视频二区在线观看 | 91精品国产乱码久久蜜臀 | 欧美a区 | 亚洲人在线观看视频 | 欧美日韩亚 | 欧美一区二区视频 | 日韩在线中文字幕 | 国产最新网址 | 91精品国产综合久久福利软件 | 日日爽| 欧美男男videos | 成人亚洲一区 | 97精品超碰一区二区三区 | 日批的视频 | 少妇性l交大片免费一 | 国产精品久久av | 亚洲国产精品第一区二区 | 国产1区在线 | 午夜免费观看网站 | 一区二区日本 | 三级成人在线观看 | 久久99蜜桃综合影院免费观看 | 日本五月婷婷 | 欧美男人天堂 | 人人澡视频| 欧美一级淫片免费视频黄 | 中文字幕一区在线观看视频 | 久久久久综合 |