基于AT89S52的红外遥控电子密码锁设计 本设计以单片机AT89S52作为密码锁监控装置的检测和控制核心,分为主机和从机,实现钥匙信息在主机上的初步认证注册、密码信息的加密、红外传输、钥匙丢失报废等功能。根据51单片机之间的串行通信原理,利用红外来传输,这便于对密码信息的随机加密和保护。而且采用红外遥控相对于机械锁和键盘输入的电子密码锁具有较高的优势。如红外线发射装置采用红外发光二极管,遥控发射器易于小型化且价格低廉;采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少错误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反应速度快、传输效率高、工作稳定可靠等。所以红外线遥控是目前使用最广泛的一种通信和遥控手段。软件设计采用自上而下的模块化设计思想,以使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。测试结果表明,本系统各项功能已达到本设计的所有要求。
上传时间: 2013-10-18
上传用户:icarus
基于AT89C51的红外遥控电子密码锁的设计 本文详细介绍了一种由AT89C51 编程实现的红外遥控电子密码锁的功能、特性和优点, 介绍了其功能和原理, 给出了红外发送和接收的设计电路。
上传时间: 2013-10-07
上传用户:ysjing
基于HT49CVX的遥控接收软件模块设计指南 本软件模块用于接收译码编码格式为NEC 格式 (见图1) 的红外遥控器信号,由于使用了RMT TIMER,所以适用于带有RMT TIMER 功能的HT49CVX 系列。
上传时间: 2013-11-21
上传用户:jiangshandz
PCA9634是一款通过I2C总线控制的8位LED驱动器,该驱动器特别为红/绿/蓝/琥珀(RGBA)色的混合应用进行了优化。每个LED输出都有自己的8位分辨率(256级)固定频率的独立PWM控制器,该控制器运行在97KHz的频率下,占空比可由0%到99.6%可调,用以将LED设置到一个特定的亮度值。除此之外,该驱动器还有一个8位分辨率(256级)的组PWM控制器,该控制器的工作频率可以为固定的190Hz,也可以在24Hz和每10.73秒一次(约0.093Hz)之间调整,其占空比为0%到99.6%可调,用于使所有LED以同样的值模糊(dim)或者闪烁。
上传时间: 2013-12-20
上传用户:liaofamous
介绍了一种基于PIC 单片机的螺旋空压机控制器。控制器以PIC 单片机为核心,利用其自身集成的A/D 转换模块,结合外围的信号采集放大电路,继电器控制电路,键盘扫描和液晶显示电路,供电电路来完成。软件上介绍了信息模块的协调工作。实验证明,该控制器具有稳定性高,运行可靠,抗干扰性强等特点。
上传时间: 2013-11-16
上传用户:lhc9102
基于C51 单片机设计了一种红外转射频的遥控系统,在不改变红外遥控对象原有内部电路的基础上,实现了将红外遥控转换为射频遥控的功能。这种遥控系统可以增加遥控的距离,扩展遥控对象的种类和数量。经实验证明,可以达到预期的目的。
上传时间: 2014-12-28
上传用户:a1054751988
涡卷式空气压缩机是一种新型空气压缩机,具有噪声低、体积小、可靠性好等特点。本文提出了一种基于ATMEL 89C52 单片机的涡卷式空气压缩机电气控制系统的实现方案,详细说明了总体方案设计、硬件设计与软件设计,并给出了关键元器件的选型。实际结果表明:该系统具有可靠性好、控制精度高、操作简便、配置灵活、直观的故障指示及完善的自保护等特点,完全满足了涡卷式空气压缩机现场控制的要求,是涡卷式空气压缩机的理想配套产品。常规的涡卷式空压机电控系统主要采用继电器加压力开关的方式进行控制,故障率高,可靠性低,控制参数的修改非常不便。本文提出了一种采用智能化微电脑集成设计技术的电控系统实现方案,它通过对关键点各种传感器进行实时检测来控制整个系统的工作状态,减少了常规控制方式下的电器元件及执行机构数量,提高了可靠性,降低了运行成本;清晰的实时状态指示,灵活的控制参数设置,完善的故障诊断,直观的故障显示,是空压机的理想配套产品。
上传时间: 2013-10-21
上传用户:ysystc670
全遥控6声道AV机的汇编程序:;;;;;;;;;;;;;;;;;;;6CH AMPLIFIER;;;;;;;;;;;;;;;;;----脚位定义-----;;;;;;;;;;;;;;;;;;;6CH AMPLIFIER;;;;;;;;;;;;;;;;;----脚位定义----- PT6311_CLK EQU P3.4PT6311_STB EQU P3.5PT6311_DATA EQU P3.3 UP EQU P3.1DOEN EQU P3.0 PT2313_DATA EQU P0.7PT2313_CLK EQU P2.7 AC3 EQU P2.6 ;(控制4053的信号) M62429_DA EQU P2.3 ;(SURL/R)M62429_CK EQU P2.4 M62429_CK1 EQU P2.5 ;(C/BW) M62429_CK3 EQU P0.0 ;(ECHO,MVOL)M62429_DA3 EQU P1.7M_DELAY1 EQU P0.1M_DELAY2 EQU P0.2 AD_OUT BIT P0.5AD_IN BIT P0.6 ;----片内RAM定义--------GIF_SIGN EQU 40H ; 动画进程标记(=1,走过场字幕 )GIF_TIME1 EQU 41H ; 动画跑字的时间间隔速度GIF_LONG EQU 42H ; 动画字幕的长度 DISP_BUFFER EQU 43H ; 显示缓冲区地址指针DISP_INDEX EQU 44H ; PT6311片内地址指针
上传时间: 2013-10-19
上传用户:fac1003
基于AT89C2051的红外遥控学习器源程序6 源程序 ORG 0000H AJMP MAIN ORG 0003H AJMP KEYPRESS ORG 000BH AJMP TIMEOUT ORG 001BH AJMP TIMEOUT SENDDUAN BIT P3.0 JIEDUAN BIT P3.1 INTRPO BIT P3.2 JIEXUAN BIT P3.3 SENDLIGHT BIT P3.4 JIELIGHT BIT P3.5 CS BIT P3.7 DATADUAN BIT P1.6 CLK BIT P1.7 JIANWEI EQU R5 JIANMA EQU R6 SHANGJIAN EQU 07H;R7 OPENKEY EQU 81H CLOSEKEY EQU 00H CHUT0 EQU 11H CHUT1 EQU 11H BUFBEGIN EQU 18H OPENT1 EQU 88H CLOSET1 EQU 00H OPENT0 EQU 82H CLOSET0 EQU 00H DATABEG1 EQU 0AAH DATABEG2 EQU 33H ORG 0030HMAIN: MOV IE,#80H MOV IP,#00H MOV P3,#0FFH CLR CS SETB P1.0 SETB P1.1 SETB P1.2 CLR P1.3 CLR P1.4 CLR P1.5 CLR P1.6 CLR P1.7 MOV R3,#80H MOV R0,00HCYCLE1: MOV @R0,#00H INC R0 DJNZ R3,CYCLE1 MOV PSW,#00H MOV SP,#07H MOV TMOD,#11H MOV TCON,#00H START: MOV SP,#07H SETB SENDDUAN CLR F0 SETB EXOWAITKEY: MOV C,F0 JNC WAITKEY CJNC JIANMA,#1BH,SEND LCALL LEARNP LJMP STARTSEND: LCALL SENDP LJMP START SENDP: SETB SENDDUAN CLR F0 MOV TMOD,#CHUT1
上传时间: 2013-10-15
上传用户:lyy1234
//遥控解码子程序,LC7461,用户码为11C//external interrupt0void isr_4(){ unsigned char r_count;//定义解码的个数 unsigned long use_data=0;//定义16位的用户码,只用到13位 unsigned long use_code=0;//定义16位的用户反码,只用到13位 unsigned long data=0;//定义16位数据码,包括8位数据码和反码 unsigned char data_h=0;//数据反码 unsigned char data_l=0;//数据码 _clrwdt();// _delay(7000);//7461解码,延时7000// _delay(7000);//7461解码,延时7000//_delay(7000);//7461解码,延时7000 if(remote==1) goto error; while(remote==0);//wait to high //_delay(9744);count_delay=0; while(count_delay<143); if(remote==1) goto error; /////用户码解码use_data//////////add////////////////////////// for(r_count=13;r_count>0;r_count--) { while(remote==0);//wait to high count_delay=0; while(count_delay<24);//_delay(1680); _c=remote; if(_c==1) { _lrrc(&use_data); count_delay=0; while(count_delay<32);//_delay(2200);//wait to low } else _lrrc(&use_data); } _nop(); //if(remote==1) //_delay(1680);//wait to low while(remote==1);//wait to low _nop(); ////////用户码解码finish/////////add/////////add//////// /////用户码反码解码use_code//////////add////////////////////////// for(r_count=13;r_count>0;r_count--) { while(remote==0);//wait to high count_delay=0; while(count_delay<24);//_delay(1680); _c=remote; if(_c==1) { _lrrc(&use_code); count_delay=0; while(count_delay<32);//_delay(2200);//wait to low } else _lrrc(&use_code); } _nop(); //if(remote==1) // _delay(1680);//wait to low while(remote==1);//wait to low _nop(); ////////用户码反码解码finish/////////add/////////add//////// ////数据码解码开始////data_l为用户码,data_h为数据码反码//////////// for(r_count=16;r_count>0;r_count--) { while(remote==0);//wait to high count_delay=0; while(count_delay<24);//_delay(1680); _c=remote; if(_c==1) { _lrrc(&data); count_delay=0; while(count_delay<32);//_delay(2200);//wait to low } else _lrrc(&data); } ////数据码解码结束//////////////////////////////////////////////// data_l=data; data_h=data>>8; ///用户码////// use_data>>=3; use_code>>=3; use_code=~use_code; //////// ////如果用户码等与0x11c并且数据码和数据反码都校验一致,解码成功 //if((~data_h==data_l)&&use_data==0x11c)//使用用户码 //跳过用户码 if(~data_h==data_l)//如果数据码和数据反码(取反后)相等,解码正确 { _nop(); r_data=data_l;//r_data为解出的最终数据码 } //否则解码不成功 _nop(); _nop();error: //r_data=nocode; _nop(); _nop(); _nop();}
上传时间: 2014-03-27
上传用户:shenlan