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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4020|回復: 5
收起左側

流星雨燈源程序

  [復制鏈接]
ID:145188 發表于 2018-2-3 16:14 | 顯示全部樓層 |閱讀模式
LED 流星雨燈
本文主要介紹了LED 流星雨燈的制作原理,包括成品圖片,電路原理圖以及所用的51單片
機的程序代碼。另外還附上了LED 流星雨燈使用的效果實拍視頻,精彩不容錯過!!!
視頻效果分享:
上面只做了5根燈管,如果需要增加燈管的話,只需稍微改動下下面的程序即可.如果增
長連線把燈管擺成圓形或者方形效果也比較牛逼的.
視頻地址http://www.cndzz.com/video/cate07/4103.htm
此款流星燈直徑只有1.5公分只可以做30公分、50公分、80公分、1000公分等。
這個東東主要是做裝飾用, 下面公開全部的源代碼.
請大家多多指教.程序代碼大家可以隨意修改,但不可用于商業用途.
/*流星雨程序代碼
單片機型號:STC11F04 IO 口16個!原理:
利用PWM 來模似流星雨:將亮度等級分為8個
,通過改變每一組LED 的亮度來達到流星雨效果。
(因為流星雨是前面亮后面越來越暗,就像一條龍一樣,拖著尾巴過來),
完整的程序源代碼下載:http://www.zg4o1577.cn/f/ledss.rar
*/
#include<reg52.h>//MCU 頭文件
#define uchar unsigned char//字浮型宏定義
#define uint unsigned int//整型宏定義
#define shudu 3 //LED 漸變速度調整
uchar yin0 =31;//LED 變化等級調整
uchar yin1 =63;//LED 變化等級調整
uchar yin2 =95;//LED 變化等級調整
uchar yin3 =127;//LED 變化等級調整
uchar yin4 =159;//LED 變化等級調整
uchar yin5 =191;//LED 變化等級調整
uchar yin6 =223;//LED 變化等級調整
uchar yin7 =255;//LED 變化等級調整
sbit led0=P3^5;//16個IO 口
sbit led1=P3^6;
sbit led2=P3^0;
sbit led3=P3^1;
sbit led4=P3^2;
sbit led5=P3^3;
sbit led6=P3^4;
sbit led7=P3^7;
sbit led8=P1^0;
sbit led9=P1^1;
sbit led10=P1^2;
sbit led11=P1^7;
sbit led12=P1^6;
sbit led13=P1^5;
sbit led14=P1^4;
sbit led15=P1^3;
uchar d0,d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15;//各IO 口變量
/***************************************************/
/**********************延時子程序*******************/
/***************************************************/
void delay(uint z)
{
uint x,y;//局部變量定義
for(x=0;x<5;x++)//延時外循環
for(y=0;y<z;y++);//延時內循環
}
/**********************************************/
/**********PWM 控制紅綠蘭3種燈亮滅時間**********/
/**********************************************/
void RGBpwm(uchar d0,uchar d1,uchar d2,uchar d3,uchar d4,uchar d5,uchar d6,uchar
d7,uchar d8,uchar d9,uchar d10,uchar d11,uchar d12,uchar d13,uchar d14,uchar
d15)//3個局部變量,些部分為帶參數函數
{
if(d0!=0)
{
led0=0;
delay(d0);
led0=1;//1
}
if(d1!=0)
{
led1=0;
delay(d1);
led1=1;//1
}
if(d2!=0)
{
led2=0;
delay(d2); //2
led2=1;
}
if(d3!=0)
{
led3=0;
delay(d3);
led3=1;//3
}
if(d4!=0)
{
led4=0;
delay(d4);
led4=1;//4
}
if(d5!=0)
{
led5=0;
delay(d5);
led5=1;//5
}
if(d6!=0)
{
led6=0;
delay(d6);
led6=1;//6
}
if(d7!=0)
{
led7=0;
delay(d7);
led7=1;//7
}
if(d8!=0)
{
led8=0;
delay(d8);
led8=1;//8
}
if(d9!=0)
{
led9=0;
delay(d9);
led9=1;//9
}
if(d10!=0)
{
led10=0;
delay(d10); //10
led10=1;
}
if(d11!=0)
{
led11=0;
delay(d11);
led11=1;//11
}
if(d12!=0)
{
led12=0;
delay(d12);
led12=1;//12
}
if(d13!=0)
{
led13=0;
delay(d13); //13
led13=1;
}
if(d14!=0)//14
{
led14=0;
delay(d14);
led14=1;
}
if(d15!=0)//15
{
led15=0;
delay(d15);
led15=1;
}
}
/***********************************************/
/********************主程序*********************/
/***********************************************/
void main()
{
TMOD=0x01;
EA=1;
ET0=1;
TR0=1;
TH0=(65536-56)/256;
TL0=(65536-56)%256;
while(1)//程序主循環
{
RGBpwm(d0,d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15);//調用RGBpwm 子
程序
}
}
/*************************************************/
/*中斷服務子程序(控制LED 紅綠蘭亮滅時間占空比例)*/
/*************************************************/
void zhong() interrupt 1//中斷向量位為1
{
uint num;//定時器計數變量
uint ji;//亮度等級控制變量
TH0=(65536-500)/256;//給定時器高8位賦值
TL0=(65536-500)%256;//給定時器低8位賦值
num++;//將定時計數變自動增加1
if(num==shudu)//如果速度變量等于定時計數器變量就執行下面大括號語句
{
num=0;//將計數器清0
ji++;//將亮度等級控制變量加1
if((ji>0)&&(ji<10))//移位移動流水.....
{
d0=yin7;
d1=0;
d2=0;
d3=0;
d4=0;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>10)&&(ji<20))//23456789
{
d0=yin6;
d1=yin7;
d2=0;
d3=0;
d4=0;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>20)&&(ji<30))//345678910
{
d0=yin5;
d1=yin6;
d2=yin7;
d3=0;
d4=0;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>30)&&(ji<40))//4567891011
{
d0=yin4;
d1=yin5;
d2=yin6;
d3=yin7;
d4=0;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>40)&&(ji<50))//12345678
{
d0=yin3;
d1=yin4;
d2=yin5;
d3=yin6;
d4=yin7;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>50)&&(ji<60))//23456789
{
d0=yin2;
d1=yin3;
d2=yin4;
d3=yin5;
d4=yin6;
d5=yin7;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>60)&&(ji<70))//345678910
{
d0=yin1;
d1=yin2;
d2=yin3;
d3=yin4;
d4=yin5;
d5=yin6;
d6=yin7;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>70)&&(ji<80))//4567891011
{
d0=yin0;
d1=yin1;
d2=yin2;
d3=yin3;
d4=yin4;
d5=yin5;
d6=yin6;
d7=yin7;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>80)&&(ji<90))//12345678
{
d0=0;
d1=yin0;
d2=yin1;
d3=yin2;
d4=yin3;
d5=yin4;
d6=yin5;
d7=yin6;
d8=yin7;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>90)&&(ji<100))//345678910
{
d2=yin0;
d3=yin1;
d4=yin2;
d5=yin3;
d6=yin4;
d7=yin5;
d8=yin6;
d9=yin7;
d0=0;
d1=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>100)&&(ji<110))//345678910
{
d3=yin0;
d4=yin1;
d5=yin2;
d6=yin3;
d7=yin4;
d8=yin5;
d9=yin6;
d10=yin7;
d0=0;
d1=0;
d2=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if((ji>110)&&(ji<120))//4567891011
{
d4=yin0;
d5=yin1;
d6=yin2;
d7=yin3;
d8=yin4;
d9=yin5;
d10=yin6;
d11=yin7;
d1=0;
d2=0;
d3=0;
d12=0;
d0=0;
d13=0;
d14=0;
d15=0;
}
if((ji>120)&&(ji<130))//56789101112
{
d5=yin0;
d6=yin1;
d7=yin2;
d8=yin3;
d9=yin4;
d10=yin5;
d11=yin6;
d12=yin7;
d0=0;
d1=0;
d2=0;
d3=0;
d4=0;
d13=0;
d14=0;
d15=0;
}
if((ji>130)&&(ji<140))//678910111213
{
d6=yin0;
d7=yin1;
d8=yin2;
d9=yin3;
d10=yin4;
d11=yin5;
d12=yin6;
d13=yin7;
d0=0;
d1=0;
d2=0;
d3=0;
d4=0;
d5=0;
d14=0;
d15=0;
}
if((ji>140)&&(ji<150))//
{
d7=yin0;
d8=yin1;
d9=yin2;
d10=yin3;
d11=yin4;
d12=yin5;
d13=yin6;
d14=yin7;
d0=0;
d1=0;
d2=0;
d3=0;
d4=0;
d5=0;
d6=0;
d15=0;
}
if((ji>150)&&(ji<160))//
{
d8=yin0;
d9=yin1;
d10=yin2;
d11=yin3;
d12=yin4;
d13=yin5;
d14=yin6;
d15=yin7;
d0=0;
d1=0;
d2=0;
d3=0;
d4=0;
d5=0;
d6=0;
d7=0;
}
if((ji>160)&&(ji<450))//讓所有LED 都滅掉等待下一次流星......
{
d0=0;
d1=0;
d2=0;
d3=0;
d4=0;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
}
if(ji>450)
{
TR0=0;
ji=0;
TR0=1;
}
}
}

流星雨燈.rar

493.51 KB, 下載次數: 46, 下載積分: 黑幣 -5

評分

參與人數 3黑幣 +26 收起 理由
yoxi + 15 贊一個!
zhengchong60 + 10 共享資料的黑幣獎勵!
guchneg + 1 很給力!

查看全部評分

回復

使用道具 舉報

ID:272625 發表于 2018-2-10 16:36 來自手機 | 顯示全部樓層
先收藏,以后再看!
回復

使用道具 舉報

ID:61218 發表于 2018-5-18 11:58 | 顯示全部樓層
電路?????????????????????????
回復

使用道具 舉報

ID:469932 發表于 2019-1-23 08:11 | 顯示全部樓層
有創意,有思想!棒棒噠!

評分

參與人數 7黑幣 +109 收起 理由
找人PK + 12
shuisheng60 + 12
jinsheng7533967 + 35 很給力!
#include51.h + 15 很給力!
yoxi + 15 很給力!
zhengchong60 + 10 贊一個!
Trump1438 + 10 很給力!

查看全部評分

回復

使用道具 舉報

ID:99612 發表于 2019-1-25 21:18 | 顯示全部樓層
電路什么樣鏈接。。。。。
回復

使用道具 舉報

ID:99612 發表于 2019-1-25 21:41 | 顯示全部樓層
紅黃綠三個引腳接哪里??
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产欧美日韩综合精品一区二区 | 日韩欧美中文字幕在线观看 | www.日本国产 | 国产一区二区三区在线看 | 亚洲成人av| 成人免费日韩 | 国产精品久久久久久久午夜片 | 免费观看黄色一级片 | 中文字幕在线视频一区二区三区 | 国产极品粉嫩美女呻吟在线看人 | 少妇精品久久久久久久久久 | 欧美三级不卡 | 欧美视频福利 | 婷婷综合 | 一区二区三区国产 | 99在线精品视频 | 日韩在线免费观看视频 | 国产黄色大片 | 91精品国产一区二区三区 | 久久精品免费一区二区 | 国产免费让你躁在线视频 | 自拍偷拍亚洲视频 | 色橹橹欧美在线观看视频高清 | 亚洲视频不卡 | 欧美亚洲一级 | 欧美成人精品一区二区男人看 | 精品久久香蕉国产线看观看亚洲 | 亚洲国产18 | 国产激情综合五月久久 | 久国产视频 | 免费国产视频在线观看 | 韩日在线视频 | 日韩欧美精品在线 | 在线视频一区二区 | 超碰在线人人干 | 久久中文字幕视频 | 成人免费一区二区三区视频网站 | 久久伊人精品 | 欧美成人激情视频 | 久久久久综合 | 天久久 |