【005】基于51单片机的多路热释电红外报警器proteus仿真与实物设计
一、压缩包资料内容
- (1)、基于51单片机的电子万年历多路热释电红外报警器proteus仿真设计一份;
- (2)、基于51单片机的多路热释电红外报警器proteus仿真设计keli源代码一份;
- (3)、基于51单片机的多路热释电红外报警器Altium designer 的原理图一份;
- (4)、基于51单片机的多路热释电红外报警器Altium designer 的PCB一份;
- (5)、基于51单片机的多路热释电红外报警器元器件清单一份;
- (6)、基于51单片机的多路热释电红外报警器proteus仿真与实物设计视频讲解一份;
二、设计要求
- (1)、本次设计要求以51系列单片机为核心,设计一多路红外热释电报警装置;
- (2)、可通过按键打开并且关闭报警装置;
- (3)、系统实现数码管显示哪一路红外热释电报警;
三、相关资料截图
图一、基于51单片机的多路热释电红外报警器proteus仿真界面截图
图二、基于51单片机的多路热释电红外报警器Keil源程序界面截图
图三、基于51单片机的多路热释电红外报警器Altium designer 原理图界面截图
图四、基于51单片机的多路热释电红外报警器Altium designer PCB界面截图
图五、基于51单片机的多路热释电红外报警器实物设计照片
四、视频讲解
私信获取全部内容
部分源代码
#include<AT89X51.H>
#define uint unsigned int
#define uchar unsigned charuchar code table[]={0x41,0x7B,0x46,0x52,0x78,0xD0,0xC0,0x5B,0x40,0x50,0x48,0xE0,0xC5,0x62,0xC4,0xCC};
uchar a[6];
uchar b[6];
sbit kai=P1^0;
sbit guan=P1^1;sbit reshi1=P1^2; //5个热释红外信号检测输入
sbit reshi2=P1^3;
sbit reshi3=P1^4;
sbit reshi4=P1^5;
sbit reshi5=P1^6;sbit beel=P1^7; //蜂鸣器报警输出
uchar moshi=0; //工作模式
uchar rs1=0,rs2=0,rs3=0,rs4=0,rs5=0,flag=0,out=0;
void fenli(); //信号分离
void delay(uint xms) //延时
{int i,j;for(i=xms;i>0;i--) for(j=110;j>0;j--);
}
void keyscan() //按键扫描
{if(kai==0) //开始键按下{delay(3); //延时if(kai==0) //再判{while(!kai); //等待释放moshi=0; //模式等于0beel=0; //关蜂鸣器delay(500); //延时beel=1; //开蜂鸣器}}if(guan==0) //关键按下{delay(3);if(guan==0){while(!guan);moshi=1; //模式等于1beel=0; //关蜂鸣器delay(500); //延时beel=1; //开蜂鸣器}}
}
void checkreshi() //检测热释红外信号
{if(reshi1==0) { rs1=1; a[1]=1; }else { rs1=0;a[1]=0; }if(reshi2==0) { rs2=1;a[2]=2; }else { rs2=0;a[2]=0; }if(reshi3==0) { rs3=1;a[3]=3; }else { rs3=0;a[3]=0; }if(reshi4==0) { rs4=1;a[4]=4; }else { rs4=0;a[4]=0; }if(reshi5==0) { rs5=1;a[5]=5; }else { rs5=0; a[5]=0; }flag=rs1+rs2+rs3+rs4+rs5; //热释红外信号进行或操作fenli(); //热释红外位置分离
}
void fenli()
{uchar l;out=0;for(l=6;l>0;l--){if(a[l]!=0){//b[out]=a[l];//out++;P3=table[a[l]]; //显示热释红外信号编号delay(400);keyscan();}else{P3=0x41; //显示-keyscan();}}
}
/*
void display()
{uint k;for(k=0;k<flag+1;k++){}
} */
【005】基于51单片机的多路热释电红外报警器proteus仿真与实物设计相关推荐
- 【033】基于51单片机的步进电机角度测量与速度设定Proteus仿真设计
一.压缩包资料内容 (1).基于51单片机的步进电机角度测量与速度设定proteus仿真设计一份: (2).基于51单片机的步进电机角度测量与速度设定proteus仿真设计keli源代码一份: (3) ...
- 1430基于51单片机的管道压力检测及泄漏检测Proteus仿真
[前言] hello 大家好,今天给大家讲一讲基于51单片机的管道压力检测及泄漏检测Proteus仿真. 该项目的功能如下: 1.LCD1602液晶实时显示当前始端和末端压力,压力阈值 2.按键启动/ ...
- 基于51单片机CO一氧化碳可燃气体浓度检测超限报警Proteus仿真
资料编号:160 下面是相关功能视频演示: 160-基于51单片机CO一氧化碳可燃气体浓度检测超限报警Proteus仿真(源码+仿真+全套资料) 功能介绍: 采用51单片机作为CPU,ADC083 ...
- 基于51单片机的温湿度光强二氧化碳气体家庭环境检测proteus仿真
硬件设计 仿真图1: 该设计是基于51单片机的温湿度光强二氧化碳检测系统,由LCD1602作为显示器,温湿度采用的SHT11传感器,ADC采用的TLC2543,光强就是光敏传感器,气体检测这里采用的是 ...
- 基于51单片机的智能冰箱鱼缸淬火炉温度控制系统proteus仿真
今天讲解一个温度控制系统的设计,温度控制系统我们在家庭冰箱.鱼缸或者工厂的淬火炉中常常见到,原理其实不复杂:通过人机交互设置好温度的工作范围,外设具有降温和升温设备,当环境温度高于预设温度值,降温设备 ...
- 基于51单片机的万年历(带温湿度)带闹钟功能proteus仿真原理图PCB
功能介绍: 0.本系统采用STC89C52作为单片机 1.LCD1602液晶显示当前时间和温湿度 2.按键可切换页面,显示农历,显示闹钟设置 3.当时间到达设定闹钟时间时,蜂鸣器报警 原理图: PCB ...
- 基于51单片机的温度甲烷监测报警串口上报proteus仿真原理图PCB
功能介绍: 0.本系统采用STC89C52作为单片机 1.LCD1602液晶实时显示当前温度和甲烷浓度 2.超过甲烷浓度阈值,蜂鸣器报警 3.按键可更改甲烷浓度阈值上限和启动/暂停检测 4.0`20% ...
- 基于51单片机的大棚环境土壤湿度光强监测系统proteus仿真原理图PCB
功能介绍: 0.本系统采用STC89C52作为单片机 1.系统实时监测当前温湿度/土壤湿度/环境光强并显示 2.温湿度超过设定阈值范围,蜂鸣器响,同时开启对应控制继电器 3.土壤湿度低于设定下限,开启 ...
- 基于51单片机的水温水流量检测/智能水龙头控制系统proteus仿真原理图PCB
功能: 0.本系统采用STC89C52作为单片机 1.液晶实时显示当前的设定温度/实际温度/水龙头状态和水流量 2.按键可开关水龙头,当温度低于设定温度时,启动加热控制继电器,给水加热, 当加热到(设 ...
- 基于51单片机的贪吃蛇小游戏8X8点阵 proteus仿真原理图程序
硬件设计 基于C51作为MCU 一块8X8点阵作为游戏的显示器 四个按键作为操控按键 仿真图: 程序设计 #include <at89x51.h> #include "18b20 ...
最新文章
- 为IP签发SSL证书
- csu 1757(贪心或者树状数组)
- node.js Web应用框架Express入门指南
- c++的STL中的map(哈希表)与unordered_map
- 转:QQ登录时错误码说明及解决办法
- 编程练习赛11B 物品价值(装压dp)
- Python 推导式(列表推导式,字典推导式,集合推导式)
- UE4 粒子特效基础学习 ——仿英雄联盟亮牌效果(图标触发特效的制作)
- 中|元宇宙龙头股歌尔自废,资本为何还在追捧
- 通过Homestead安装Laravel
- oracle 2703,Oracle11gR2光钎链路切换crs服务发生crash
- 只需3天即可启动应用发布营销核对清单
- 马斯克:特朗普都快80了,我支持个年轻的!懂王回怼:忘了当初跪求补贴?...
- 一纸读懂另类数据 | 未央研究
- 菜鸡随笔第二笔:insmod模块时显示已杀死
- 用js写卡牌游戏(五)
- 借助Docker hub自己手动制作镜像(以Nginx镜像为例)
- 超市商品管理系统(课程设计)
- 核心能力:产品认知能力
- 计算机保密检查工具 百度云,计算机系统保密检查工具