历史上的今天
返回首页

历史上的今天

今天是:2024年09月24日(星期二)

正在发生

2020年09月24日 | 基于51单片机的红外电子密码锁的设计

2020-09-24 来源:51hei

本设计包含两个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;                                         


         . . . . . .



推荐阅读

史海拾趣

Allianc公司的发展小趣事

在XXXX年,Allianc公司迎来了一次重大的技术突破。公司研发团队成功开发出了一款具有领先性能的新型电子产品,该产品不仅具有更高的性能和更低的能耗,还具备更好的用户体验。这一技术突破使得Allianc公司在市场上迅速脱颖而出,赢得了大量客户的青睐。随着产品销量的不断攀升,公司的知名度和影响力也逐渐扩大。

诚芯微(CXW)公司的发展小趣事

经过数年的技术积累和市场拓展,诚芯微在2013年注册了自主品牌CXW,标志着其品牌战略的正式启动。同年,公司推出了一系列具有竞争力的电源芯片产品,凭借其卓越的性能和稳定的品质,逐渐在市场中获得了认可。此外,诚芯微还加强了与上游晶圆制造、封装企业的合作,确保了产品的质量和良率。

Arcolectric公司的发展小趣事

Arcolectric始终坚持品质至上的原则,对产品的每一个环节都进行严格的质量控制。公司不仅通过国际制造架构的合作来确保产品的高品质,还积极引进先进的生产设备和技术人才,不断提升产品的性能和可靠性。这种对品质的执着追求使得Arcolectric的产品在全球范围内得到了广泛的认可和赞誉。

E-CMOS(飞虹高科)公司的发展小趣事

在电子行业的激烈竞争中,飞虹高科(E-CMOS)公司于XXXX年正式成立,专注于CMOS(互补金属氧化物半导体)技术的研发。初创时期,公司面临着资金短缺、技术壁垒和市场竞争等多重挑战。然而,公司创始人凭借对技术的深刻理解和敏锐的市场洞察力,成功获得了一笔风险投资,并招募了一支技术实力雄厚的研发团队。通过不懈努力,公司成功开发出了一款具有竞争力的CMOS图像传感器产品,开始在市场上崭露头角。

FDI [Future Designs , Inc.]公司的发展小趣事

随着市场竞争的加剧,FDI公司意识到只有不断创新才能在行业中立足。于是,公司加大了对研发的投入,引进了一批顶尖的技术人才。经过数年的努力,FDI成功研发出了一款具有自主知识产权的智能电子系统,该系统集成了多项先进技术,可以广泛应用于智能家居、工业自动化等领域。这一技术突破,不仅使FDI公司的知名度大幅提升,也为其带来了丰厚的利润。

光磊(GL)公司的发展小趣事

随着市场竞争的加剧,FDI公司意识到只有不断创新才能在行业中立足。于是,公司加大了对研发的投入,引进了一批顶尖的技术人才。经过数年的努力,FDI成功研发出了一款具有自主知识产权的智能电子系统,该系统集成了多项先进技术,可以广泛应用于智能家居、工业自动化等领域。这一技术突破,不仅使FDI公司的知名度大幅提升,也为其带来了丰厚的利润。

问答坊 | AI 解惑

【博客帮助帖】如何找回密码

1)如果您的密码不慎丢失,可以点击“找回密码”进入的便是博客的找回密码系统。 2)将您的用户名、Email、填写好点提交,系统将您的密码返还。(也可参照论坛帮助帖密码丢了怎么办) …

查看全部问答>

单片机 arm的外部晶振频率选择的依据是什么 谢谢

单片机 arm的外部晶振频率选择的依据是什么,只是单单就根据速度和稳定性选择就可以了吗?具体点 谢谢 …

查看全部问答>

jlink连上2440说找不到设备

网上买来的JLINK V8仿真器和mini2440连好了,去SEGGER的网站下载了驱动,装好,打开JLINK.exe显示下面这图,是我哪里没弄好还是产品问题? 这是JLINK和2440连接用的转接板,上面没有标识正反,我是看JLINK上面的灯是红的就反过来插,到绿为止。 ...…

查看全部问答>

哪位大哥做过V.29 fastPOS协议和V.80的东东?

用于EPOS与主机连接的。 我现在握手成功了,SNRM和RR都能正常交互, 但是发数据的时候老是不对。 发过去返回19 45,不知道是什么错误。 我发送的数据格式是 30 10 19 B1…

查看全部问答>

急求:PDA系统数据库同步问题

开发工具:Pocket Builder2.0 远程数据库 ASA 中心数据库 Sql Server 问题描述:     在本机PC上运行程序,可以与Mobilink服务器连接,但将程序放到PDA里,则提示\"不能连接远程数据库\"     PDA通过无线网络连接 请高手指 ...…

查看全部问答>

StellarisWare 例程简介

StellarisWare 例程简介   AES Pre-expanded Key(aes_expanded_key)        此例程演示了如何使用预扩展密钥加密明文并把它解密成原来的信息。使用预扩展密钥避免了在运行的时候处理扩展。采用的是AES中的CB ...…

查看全部问答>

谁用过QII11.1的PCI的IP核啊?没福利不干活!

如题请问PCI Compiler v11.1IP Compiler for PCI Express v11.1这两个PCI IP核能实现PCI功能吗?最后附上福利!…

查看全部问答>

CN0065_【10款典型实验室电路推荐】之二

【10款典型实验室电路推荐】之二:利用单芯片电压和电流输出DAC AD5422及数字隔离器ADuM1401构建16位全隔离输出模块。该电路提供一种完整的工业控制输出模块解决方案,适合过程控制可编程逻辑控制器和分布式控制系统模块,同时还含有标准外部保护功 ...…

查看全部问答>