基于单片机智能垃圾桶控制系统设计(毕业设计资料)
摘要:
自动感应垃圾桶由电路芯片控制,由红外线检测装置和机械电子驱动系统组成。感应垃圾桶利用红外线感应原理,只要有物体接近感应区范围内,桶盖便会自动开启,物体或手离开感应区数秒后桶盖会自动关闭,不需要外接电源,靠电池供电,使用电耗低。结合红外感应及微电脑组成的精美流线型外观感应翻盖设计,灵活方便,无需手动或脚踩,就能轻松丢垃圾。除此之外,方便卫生,性能可靠,从而帮助您有效预防接触性感染。
【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
122【电路方案】基于单片机智能垃圾桶控制系统设计
#include <reg52.h> //包括一个52标准内核的头文件
#include<intrins.h>
#define uchar unsigned char //定义一下方便使用
#define uint unsigned int
#define ulong unsigned long
//***********************************************
sbit HW1=P3^3;
sbit HW2=P3^5;
bit HW2_flag=0;
sbit beep=P3^4;
sbit led1=P1^0;
sbit key1=P1^5;
bit key1_flag=0;
uchar loop;
bit hand_flag=0;
uint m_i;
uchar ms,c_ms,p_ms=199;
uchar open_time=0;
bit s0;
uchar beep_num;
uchar open_flag=0;
bit open_flag1=1;
uchar code fz[]= //正转数据
{0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};
uchar code zz[]= //反转数据
{0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};
void Delay800us() //@12.000MHz
{
unsigned char i, j;
i = 2;
j = 139;
do
{
while (--j);
} while (--i);
}
void proc() //正反转函数
{
if(open_flag==1&&!open_flag1) //关
{
P2=zz[loop];
loop=(loop+1)%8;
Delay800us();
m_i++;