找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2202|回復: 0
打印 上一主題 下一主題
收起左側

單片機智能感應垃圾桶程序與Proteus仿真圖

[復制鏈接]
跳轉到指定樓層
樓主
ID:1046639 發(fā)表于 2022-10-5 21:27 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
利用熱釋電紅外傳感器來測試人體接近目標的方法,當人走近垃圾桶時讓桶蓋自動開合的自動感應垃圾桶設計。采用單片機來控制一個直流電機轉動,實現(xiàn)垃圾桶蓋的閉合控制。

proteus仿真圖




單片機源程序:
//功能:自動感應垃圾桶(判斷是否有人接近,有人電機正轉,離開反轉)
#include "reg51.h"        //包含頭文件reg51.h,定義了51單片機的專用寄存器
sbit hw=P0^1;             //紅外控制端
sbit P1_3=P1^3;           //電機驅動控制端
sbit P1_4=P1^4;           //電機驅動控制端
sbit P1_5=P1^5;           //電機驅動控制端
//函數名:delay
//函數功能:實現(xiàn)軟件延時
//形式參數:無符號整型變量i,控制空循環(huán)的循環(huán)次數
//返回值:無
void delay(unsigned int i)            //延時函數
{
  unsigned int k;
        for(k=0;k<i;k++);
}
void  main()
{
             bit  flag;    //桶蓋打開標志位變量,為1表示桶蓋打開,否則表示桶蓋關閉   
flag=0;       //桶蓋關閉標志
while(1)
{
if((hw==1)&&(flag==0))
{ P1_3=1;        //電機運轉,控制打開桶蓋
P1_4=0;
P1_5=1;
delay(20000);   //延時,等待桶蓋打開完成
P1_5=0;         //電機停轉,保持桶蓋打開狀態(tài)                        
                  flag=1;         //設置桶蓋打開標志
}
else if(hw==0&&flag==1)
{
P1_3=0;        //電機反向運轉,關閉桶蓋
P1_4=1;
P1_5=1;
delay(20000);   //延時,等待桶蓋關閉完成
P1_5=0;         //電機停轉,保持桶蓋關閉狀態(tài)
                  flag=0;         //設置桶蓋關閉標志
}
}
}


keil5代碼和proteus8.8仿真下載: Proteus8.8與代碼.7z (100.11 KB, 下載次數: 44)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表