用STC15F104E制作学习型1路红外遥控开关
2012年03月04日 点击:
编辑: lbq691477940
[audio08]
/********************************************************************
STC15F104学习型1路红外遥控开灯座
通电后灯泡点亮约5s作为来电告知后自动熄灭运行指示灯开始闪烁,按动按钮开关一次则灯泡也开/关一次
遥控码学习操作方法有以下二种: (如果想取消学习则在LED长亮时按一次SW按钮开关即可,或等30s自动退出)
1.长按按钮开关约5s以上待运行指示灯由原来的灭状态变为长亮时,再松开按钮则已进入键值遥控学习
状态,把遥控器对准红外接收头后,按下红外线遥控器想要用来控制的键LED熄灭或闪烁即已完成学习
2.把遥控器对准红外接收头后长按遥控器上的按键不放约10秒以上待LED指示灯由原来的灭状态变为
长亮时再松开按钮后,再按下红外线遥控器想要用来控制的键LED熄灭或闪烁即已完成学习过程。
P3.2 = 红外一体化接收头接(INT0)
P3.3 = 按钮开关低电平有效
P3.3/INT1/RSTOUT_LOW 作为SW时要留意上电后,输出低电平,在复位期间也是输出低电平,
用户可用软件将其设置为高电平或低电平,如果要读外部状态,可将该口先置高后再读
P3.4 = OUT控制高电平有效接NPN型三极管驱动继电器
P3.5 = 指示灯:待机时闪烁 + 学习时(长亮) + 灯泡点亮时熄灭
遥控器: 家庭常用的遥控器
CPU: 只能用STC15F104E或兼容芯片
下载上位机软件:STC-ISP-15XX-V1.06下载程序时将振荡设为11.0592MHZ/12MHZ 不用外接晶体即可。
# G.1 A版本的外部中断有时会异常,B版本的外部中断可正常使用
现有A版本的外部中断有时会异常,建议不要使用,可用定时器/计时器T0/T1的
外部计数方式代替,或用查询方式代替,如常见红外遥控解码就无需用外部中断,
使用定时器/计数器就够了。
现有A版本的中断除外部中断不能使用外,其他的中断都是正确的,如定时器/计数器
中断、低压检测中断等都可以正常使用。
# STC15F104E定时器/计数器0有4种工作模式:模式0(16位自动重装),建议只学习此模式足矣
模式0(16位自动重装模式)
模式1(16位定时器/计数器模式)
模式2(8位自动重装模式)
模式3(两个8位定时器/计数器)
定时器/计数器1除模式3外,其他工作模式与定时器/计数器0相同,T1在模式3时无效,停止计数。
故选用模式0在中断函数里不用再赋初值。
# 由于A版本的15F104E外部中断本身有问题故本程序改为查询方式来进行解码
并且设置定时器0&1都为工作方式0(16位自动重载模式)
程序设计:LBQ691477940 2011-12-01 0:10
**********************************************************************/
/********************************************************************
STC15F104学习型1路红外遥控开灯座
通电后灯泡点亮约5s作为来电告知后自动熄灭运行指示灯开始闪烁,按动按钮开关一次则灯泡也开/关一次
遥控码学习操作方法有以下二种: (如果想取消学习则在LED长亮时按一次SW按钮开关即可,或等30s自动退出)
1.长按按钮开关约5s以上待运行指示灯由原来的灭状态变为长亮时,再松开按钮则已进入键值遥控学习
状态,把遥控器对准红外接收头后,按下红外线遥控器想要用来控制的键LED熄灭或闪烁即已完成学习
2.把遥控器对准红外接收头后长按遥控器上的按键不放约10秒以上待LED指示灯由原来的灭状态变为
长亮时再松开按钮后,再按下红外线遥控器想要用来控制的键LED熄灭或闪烁即已完成学习过程。
P3.2 = 红外一体化接收头接(INT0)
P3.3 = 按钮开关低电平有效
P3.3/INT1/RSTOUT_LOW 作为SW时要留意上电后,输出低电平,在复位期间也是输出低电平,
用户可用软件将其设置为高电平或低电平,如果要读外部状态,可将该口先置高后再读
P3.4 = OUT控制高电平有效接NPN型三极管驱动继电器
P3.5 = 指示灯:待机时闪烁 + 学习时(长亮) + 灯泡点亮时熄灭
遥控器: 家庭常用的遥控器
CPU: 只能用STC15F104E或兼容芯片
下载上位机软件:STC-ISP-15XX-V1.06下载程序时将振荡设为11.0592MHZ/12MHZ 不用外接晶体即可。
# G.1 A版本的外部中断有时会异常,B版本的外部中断可正常使用
现有A版本的外部中断有时会异常,建议不要使用,可用定时器/计时器T0/T1的
外部计数方式代替,或用查询方式代替,如常见红外遥控解码就无需用外部中断,
使用定时器/计数器就够了。
现有A版本的中断除外部中断不能使用外,其他的中断都是正确的,如定时器/计数器
中断、低压检测中断等都可以正常使用。
# STC15F104E定时器/计数器0有4种工作模式:模式0(16位自动重装),建议只学习此模式足矣
模式0(16位自动重装模式)
模式1(16位定时器/计数器模式)
模式2(8位自动重装模式)
模式3(两个8位定时器/计数器)
定时器/计数器1除模式3外,其他工作模式与定时器/计数器0相同,T1在模式3时无效,停止计数。
故选用模式0在中断函数里不用再赋初值。
# 由于A版本的15F104E外部中断本身有问题故本程序改为查询方式来进行解码
并且设置定时器0&1都为工作方式0(16位自动重载模式)
程序设计:LBQ691477940 2011-12-01 0:10
**********************************************************************/
相关文章
- · 歪理邪说话单片机入门 2012-06-28
- · STC单片机程序用什么软件可以读出来 2012-04-05
- · 红外线学习型无线遥控器,可控制8路家用电器,懒人的好帮手,电路图己上传 2013-02-21
- · 89c2051遥控测码程序及原理图 2012-12-21
- · MCU解密全攻略 2012-09-03
- · 分享电磁炉单片机HMS87C1202A程序 2012-10-06
- · 三羐仿真编程软件pLC 2012-04-19
- · PL2303在WIN8上的驱动[已更新下载地址] 2012-07-13
- · STC89C516RD+制作多功能闹钟遥控测码 2012-06-04
- · 经典的51单片机教程 例说51单片机C语言版 PDF下载 2012-06-16