|
利用單片機設(shè)計并制作一套智能垃圾箱。要求以單片機為控制核心,通過紅外傳感器檢測是否有人扔垃圾,并自動打開垃圾箱蓋,扔完垃圾后再自動關(guān)閉。
主要內(nèi)容包括:
(1)紅外對管傳感器檢測是否有人扔垃圾
(2)垃圾桶滿報警
(3)步進(jìn)電機驅(qū)動電路的設(shè)計
智能垃圾桶系統(tǒng)的軟件需要同時是否有人、垃圾桶是否裝滿、步進(jìn)電機驅(qū)動等任務(wù)。在本設(shè)計中,當(dāng)紅外檢測到有人時,垃圾桶自動打開,從最后一次檢測到無人開始計時,5秒后自動垃圾桶關(guān)閉。垃圾桶滿了之后會聲光報警提醒。
原理圖如下:
51hei截圖20210717132547.png (120.89 KB, 下載次數(shù): 80)
下載附件
2021-7-17 13:25 上傳
部分單片機代碼:
void main()
{
TMOD=0x10;
EA=1;
TH1=0x4c;
TL1=0x00;
TR1=1;
ET1=1;
while(1)
{
if(open_flag==0)
{
P2=P2&0xf0;
m_i=0;
}
else
{
proc();
}
}
}
void time_1() interrupt 3
{
TH1=0x4c;
TL1=0x00;
ms++;
dis_pose();
if(!HW1)
{
p_ms++;
if(p_ms>=200)
{
p_ms=0;
beep_num=8;
}
}
else
{
p_ms=199;
}
if(!open_flag1)
{
if(hand_flag==0)
{
if(HW2)
{
c_ms++;
if(c_ms>=100)
{
c_ms=0;
open_flag=1;
}
}
else
{
c_ms=0;
open_time++;
if(open_time>=200)
{
open_time=0;
beep_num=6;
}
}
}
else
{
if(HW2&&HW1)
{
c_ms++;
if(c_ms>=100)
{
c_ms=0;
open_flag=1;
hand_flag=0;
}
}
else
{
c_ms=0;
}
}
}
else
{
c_ms=0;
open_time=0;
}
if(ms>=2)
{
ms=0;
if(beep_num!=0)
{
beep_num--;
beep=~beep;
}
else
{
beep=1;
}
}
}
全部代碼51hei附件下載:
智能垃圾桶.7z
(292.33 KB, 下載次數(shù): 75)
2021-7-17 13:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|