基于51单片机的红外电子密码锁的设计

发布者:SereneHarmony最新更新时间:2020-09-24 来源: 51hei关键字:51单片机  红外电子  密码锁 手机看文章 扫描二维码
随时随地手机看文章

本设计包含两个51单片机和一个proteus自带的红外组件IRLINK来模拟实现红外通信:1)一个单片机模拟发送密码信号;         
2)一个单片机接收密码信号并通过电磁线圈控制锁的开或者关;
3)使用proteus自带的红外组件IRLINK的发射端模拟第一个单片机发射红外信号;
4)使用proteus自带的红外组件IRLINK的接收端模拟接红外信号并经过光电转换成电信号送入第二个单片机(红外电子密码锁的控制器)

以下是电路图的设计:

电路图设计电路图设计

仿真

以下是红外通信的部分程序

#include "reg52.h"                //此文件中定义了单片机的一些特殊功能寄存器

        

typedef unsigned int u16;         //对数据类型进行声明定义

typedef unsigned char u8;


sbit LOCK=P2^0;  //开锁控制接口


sbit IRIN=P3^2;         //红外通讯与单片机的接口,采用外部中断0控制


u8 IrValue[4];  //实际只用4位

u8 code1=0x00;   //存放原始关锁密码:00000000;

u8 code2=0xff;   //存放原始开锁密码:11111111;

u8 Time;    //存放中间变量


/*******************************************************************************

* 函 数 名         : delay

* 函数功能                   : 延时函数,i=1时,大约延时10us

*******************************************************************************/

void delay(u16 i)

{

        while(i--);        

}



/*******************************************************************************

* 函数名         : IrInit()

* 函数功能                   : 初始化红外线接收

* 输入           : 无

* 输出                  : 无

*******************************************************************************/


void IrInit()

{

        IT0=1;//下降沿触发

        EX0=1;//打开中断0允许

        EA=1;        //打开总中断

        IRIN=1;//初始化端口

}



/*******************************************************************************

* 函 数 名       : main

* 函数功能                 : 主函数

* 输    入       : 无

* 输    出             : 无

*******************************************************************************/

void main()

{        

        IrInit();

        

        while(1)

        {        

          if(IrValue[2] == code1) LOCK=1; //关门

          if(IrValue[2] == code2) LOCK=0; //开门

        }               

}


/*******************************************************************************

* 函数名         : ReadIr()

* 函数功能                   : 读取红外数值的中断函数

* 输入           : 无

* 输出                  : 无

*******************************************************************************/


void ReadIr() interrupt 0

{

        u8 j,k;

        u16 err;

        Time=0;                                         


         . . . . . .



关键字:51单片机  红外电子  密码锁 引用地址:基于51单片机的红外电子密码锁的设计

上一篇:串口的工作方式
下一篇:51单片机DS18B20的温度传感器

推荐阅读最新更新时间:2024-11-13 11:34

C51单片机P4口使用
C51单片机(STC11L32/48XE)的P4可以像其他IO可以作为正常的IO来使用。 如图:
[单片机]
51单片机 HCSR04超声波测距仪 基础代码
_ :超声波测距仪模块: _ :51单片机,11.0592MHz晶振,将采集数据发送到串口的基础例子: _ :代码: 1 /***********************************************************************************************************/ 2 //HC-SR04 超声波测距模块 DEMO 程序 3 //晶振:11。0592 4 //接线:模块TRIG接 P1.2 ECH0 接P1.1 5 //串口波特率9600 6 /*****************************************
[单片机]
<font color='red'>51单片机</font> HCSR04超声波测距仪 基础代码
8051单片机的中断响应过程解析
8051的CPU在每个机器周期期间,顺序采样每个中断源,CPU在下一个机器周期按优先级顺序查询中断标志,如查询到某个中断标志为1,将在下一个机器周期期间按优先级来进行中断处理。在下列任一种情况存在时,中断申请将被封锁。 1、CPU正在执一个同级或高级的中断服务程序2、当前机器周期不是当前指令周期的最后一个机器周期,即要保证把当前指令执行完。 CPU响应中断, 由硬件自动将相应的中断矢量地址装入程序程序计数器PC,转入该中断服务程序进行处理。 对于有些中断源,CPU在响应中断后会自动清除中断标志,如定时器溢出标志TF0,TF1,以及部中断标志IE0,IE1。 而有些中断标志,不会自动清除,只能由用户用户软件清除,如串
[单片机]
51单片机基础之五线四相步进电机
原理: 我采用单双8拍法驱动方式,发现效果很好,其次通过定时器来让步进电机速度逐步加快,当速度最大的时候,保持最快速度。 接线: 我这个开发板有驱动模块,直接接线即可。 代码: #include reg52.h #include intrins.h unsigned char code F_Rotation ={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};//正转,单双8拍法驱动 unsigned int num=500; //500个10us等于5ms unsigned int a=0; void delay(unsigned int num) { whi
[单片机]
<font color='red'>51单片机</font>基础之五线四相步进电机
基于51单片机的贪吃蛇游戏
前言: 这篇文章是我当时制作完成后写的总结,已经过去了一段时间,苦于找不到实物的图片,就把全文都粘贴到了下面。 今天是11月2日,昨天我完成了我的贪吃蛇的制作。那个战线一个多月,让我煞费苦心的工作。在这一过程中,学到了许多新知识,也认识了许多新朋友,无论星火杯结果如何,它都将成为我的大学生涯,甚至一生中宝贵的财富。所以我决定将我学到的,想到的都写下来,给将来的自己一份美好的回忆。这次总结的内容主要是进入西电来学到的一些硬件知识,主要包括51单片机基础知识(最小系统、LED流水灯、蜂鸣器、独立按键、数码管显示),Protues仿真(以贪吃蛇为例),Keil的使用(贪吃蛇程序的分析),最后是贪吃蛇制作的基本步骤。 一、51单片
[单片机]
基于<font color='red'>51单片机</font>的贪吃蛇游戏
基于51单片机的低成本心电监护系统设计
1 引言 虚拟医学仪器充分利用计算机丰富的软硬件资源,仅增设少量专用软、硬件模块,便可实现传统仪器的全部功能及一些传统仪器无法实现的功能,同时缩短了研发 周期 。本系统由两部分组成:以C8051F320 单片机 为核心的数据采集装置和以PC机为平台的分析处理系统。设计中充分考虑数据采集装置体积小、功耗低、操作快捷的要求,因此全部采用SMT封装的元器件。PC监护终端通过USB接口接收数据,传输速率高;采用图形编程语言LabVIEW编写显示、存储、分析处理等功能程序。该系统可实时监护并提供心动周期,心率等参数,也可进行数据的存储回放,为心血管疾病的诊断提供依据。系统的软件开发和硬件与上位机软件的集成测试表明,系统运行稳定
[单片机]
基于<font color='red'>51单片机</font>的低成本心电监护系统设计
51单片机学习——存储和引脚
前言 首先阅读这篇文章需要有 51 单片机 C 语言编程基础(至少要学完定时器)。这篇文章作为我的一个学习笔记,总结我学到的内容,后面在学习的过程中会慢慢补充,如果有错误的地方欢迎大家批评指正 一、CPU架构和指令集 因为这个不是重点内容,咱们这里不讨论,不是很懂的朋友先去看这个视频 https://www.bilibili.com/video/BV1xE411N74Twww.bilibili.com/video/BV1xE411N74T 二、51单片机地址结构 2.1 普林斯顿与哈佛结构 51 单片机采用哈佛结构,共有 4 个物理存储空间:片内 RAM、片内 ROM、片外 RAM、片外 ROM 上面是三个逻辑空间,
[单片机]
MCS51单片机和8051、8031、89C51等的关系?
MCS51单片机和8051、8031、89C51等的关系? 我们平常老是讲8051,又有什么8031,现在又有89C51,它们之间究竟是什么关系? MCS51是指由美国INTEL公司(对了,就是大名鼎鼎的INTEL)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。 INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved