临睡觉时下地闭灯是最讨厌做的一件事。本人为了解决闭灯问题,所以自制了一个红外线遥控开关。所需原料:废旧5V手机充电器,面包板(不要太大),STC11F02(手头只有这个,浪费了不少IO,推荐8脚STC15F100之类的U),5v继电器2个(推荐欧姆龙的,有点小贵),三极管8550PNP 2个,1838B 38khz红外接收头1个,20K电阻一个,有条件可以来个1117 5V。12M晶振,30PF电容。IO口的限流电阻推荐加个。锡桥过线,怕费焊锡的可以导线连^_^!电路过于简单,直接焊接。PNP管子接继电器负极,在负极做开关。
程序如下:
#include "stc11f.h" //自己写的,可以reg51.h
sbit JD2 = P1^5; //继电器2口,电灯2
sbit JD1 = P1^0; //继电器1口,电灯1
sbit KG = P1^7; //这链了个三极管,做了个额外的开关,给床头的USB小风扇供电
sbit LED = P3^6; //工作指示灯,有一个设备打开就亮
bit IR_SEMAPHORE=0,IR_READY=0,LED_CON1=0,LED_CON2=0,LED_CON3=0;
unsigned int temp=0;
unsigned char swap=0,IR_DATA[4]={0};
void main(void)
{
JD1=1;
JD2=1;
KG=1;