一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 24382|回复: 52
收起左侧

[51单片机] 用STC12C2052-1T单片机学习型红外遥控开关

  [复制链接]
发表于 2011-2-16 23:16 | 显示全部楼层 |阅读模式
本帖最后由 LBQ691477940 于 2011-2-16 23:36 编辑

/********************************************************************
                          学习型红外遥控开关程序
学习范围比较窄,只限于NEC编码方式类型的摇控器,CPU 用STC12C2052系列 晶振12MHZ
通电后运行指示灯闪烁,按动按钮开关后P1.5输出取反,当输出为低时运行指示灯熄灭
长按按钮开关约5s以上待运行指示灯点亮时再松开按钮则已进入键值遥控学习状态。
把NEC编码方式类型的摇控器对准红外头,按下后要学习的键,待运行指示灯转为闪烁时学习完成。
P1.3  =  OUT控制低电平有效接PNP型三极管驱动继电器
P1.0  =  BZ输出低电平有效接PNP型三极管驱动蜂鸣器
P1.7  =  运行指示灯(闪烁)+学习指示灯(长亮)
P3.2  =  红外一体化接收头接(INT0)
P3.7  =  按钮开关低电平有效
    程序设计:LBQ691477940   2011-02-16
**********************************************************************/
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define RdCommand  0x01  //定义ISP的字节读操作命令
#define PrgCommand 0x02  //定义ISP的字节编程操作命令,前提是该字节是空,0FFh
#define EraseCommand 0x03 // 定义ISP的扇区擦除操作命令,要某字节为空,要擦一扇区
#define WaitTime 0x01   //设置等待时间
/*=========================================================================
STC89C51 STC89C52内置EEPROM容量起始地址2000~2FFFH      */
//#define EEPROM_ADD 0x2000
/*======================================================================
  STC89C54RD ~ STC89C58RD 内置EEPROM容量起始地址8000H~F3FFH    */
//#define EEPROM_ADD 0x8000
//=======================================================================
/*STC12C0052 ~ STC12C4052  //内置EEPROM容量起始地址0000H~13FFH
  STC12C5408~16 STC12C5401~06 //内置EEPROM容量起始地址0000H~2FFFH  */
#define EEPROM_ADD 0x1000   //STC12C2052系列
//=======================================================================           
//============STC89C系列==STC12C5410AD系列==STC12C2052AD系列===================
sfr ISP_DATA = 0xe2;   //STC89C系列 SP/IAP操作时的数据寄存器。
sfr ISP_ADDRH = 0xe3; //STC89C系列 ISP/IAP操作时的地址寄存器高八位。
sfr ISP_ADDRL = 0xe4; //STC89C系列 ISP/IAP操作时的地址寄存器低八位。
sfr ISP_CMD = 0xe5;  //STC89C系列 ISP/IAP操作时的命令模式寄存器,须命令触发寄存器触发方可生效。
sfr ISP_TRIG = 0xe6; //STC89C系列 ISP/IAP操作时的命令触发寄存器。
sfr ISP_CONTR = 0xe7; //STC89C系列 ISP/IAP控制寄存器。
//===========================================================================
//======================STC12C5A系列========================================
//sfr ISP_DATA = 0xC2;   //STC12C5A系列 SP/IAP操作时的数据寄存器。
//sfr ISP_ADDRH = 0xC3; //STC12C5A系列 ISP/IAP操作时的地址寄存器高八位。
//sfr ISP_ADDRL = 0xC4; //STC12C5A系列 ISP/IAP操作时的地址寄存器低八位。
//sfr ISP_CMD = 0xC5;  //STC12C5A系列 ISP/IAP操作时的命令模式寄存器,须命令触发寄存器触发方可生效。
//sfr ISP_TRIG = 0xC6; //STC12C5A系列 ISP/IAP操作时的命令触发寄存器。
//sfr ISP_CONTR = 0xC7; //STC12C5A系列 ISP/IAP控制寄存器。
//============================================================================
5.jpg
一乐牛啊!百度一下全是
Q.jpg

Schematic Prints.pdf

37.51 KB, 下载次数: 3529, 下载积分: 一乐金币 -1

学习型红外遥控开关1T单片机(2011-02-16).rar

1.24 KB, 阅读权限: 10, 下载次数: 300, 下载积分: 一乐金币 -1

评分

参与人数 1一乐金币 +60 收起 理由
yleee + 60 迟来的加分

查看全部评分

发表于 2011-2-17 07:59 | 显示全部楼层
1路开关太少了。4路最好!给你一个提示,你的开关省去不要。学习过程——————按住遥控器,再接通电源,即进入学习状态。
发表于 2011-2-17 10:32 | 显示全部楼层
这个好。
 楼主| 发表于 2011-2-17 12:43 | 显示全部楼层
1路开关太少了。4路最好!给你一个提示,你的开关省去不要。学习过程——————按住遥控器,再接通电源, ...
6sfmwd 发表于 2011-2-17 07:59 [url=https://www.yleee.com.cn/images/common/back.gif]https://www.yleee.com.cn/images/common/back.gif[/url]


因为我是这样打算的手动开关装在房门旁墙壁上作手动开关用的,遥控器通常是放在床头的。哈哈
发表于 2011-2-17 16:58 | 显示全部楼层
阅读权限太高!呵呵
发表于 2011-2-17 22:32 | 显示全部楼层
发现一乐的搜索非常靠前。。不管是google还是百度。
发表于 2011-2-18 00:07 | 显示全部楼层
阅读权限太高!看不了。
发表于 2011-2-18 17:47 | 显示全部楼层
论坛精华,高手之作。
发表于 2011-2-18 17:49 | 显示全部楼层
阅读权限太高!呵呵
 楼主| 发表于 2011-2-26 21:54 | 显示全部楼层
视频分享:[url=http://www.tudou.com/programs/view/OFb5lfPQV_k/]STC12C2052学习型红外遥控开关
[/url]
CIMG0399.JPG
CIMG0402.JPG
CIMG0403.JPG
CIMG0404.JPG
CIMG0405.JPG
STC12C2052学习型红外遥控开关.jpg
STC12C2052学习型红外遥控开关1.jpg

STC12C2052学习型红外遥控开关.pdf

37.39 KB, 下载次数: 3096, 下载积分: 一乐金币 -1

STC12C2052学习型红外遥控开关1.pdf

35.47 KB, 下载次数: 3123, 下载积分: 一乐金币 -1

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-12 07:30 , Processed in 0.073655 second(s), 49 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表