一.硬件方案
本設(shè)計由STC89C52單片機電路+太陽能電池板電路+風(fēng)機發(fā)電電路+鋰電池充電保護(hù)電路+升壓電路+穩(wěn)壓電路+光敏電阻電路+4位高亮LED燈電路+2檔撥動開關(guān)電路+電源電路設(shè)計而成。
二.設(shè)計功能
(1)采用風(fēng)機和太陽能電池板給鋰電池充電,具有充電保護(hù)電路和穩(wěn)壓電路。
(2)鋰電池升壓到5V給單片機和附屬電路供電。
(3)路燈用4個高亮LED燈模擬。
(4)用光敏傳感器測光線亮度,低于設(shè)置值時自動開啟燈光。
(5)路燈控制分為手動模式和自動模式,手動模式下可以自由的開燈或者關(guān)燈,自動模式下通過光敏電阻根據(jù)光照強度自動控制燈的開和關(guān)。
三.設(shè)計原理圖
(1)原理圖主要采用AD軟件進(jìn)行設(shè)計,如圖:
(2)PCB圖如下:
四.軟件設(shè)計
(1)程序流程圖
(2)主程序源碼
unsigned long sysslot=0; //定時器計數(shù)
void
Init_Timer0(void); //函數(shù)聲明
void main (void)
{
Init_Timer0();
//定時器0初始化
while (1) //主循環(huán)
{
if(swMode==0)
//手動
{
if(ligh==1) //光線暗
{
led=0;
//開燈
}
else
{
led=1; //關(guān)燈
}
}
else //
自動
{
if(swOnOff==0) //播到下面
{
led=0;
//開燈
}
else
{
led=1; //關(guān)燈
}
}
DelayMs(100);
//防止抖動
}
}
|