新闻中心

EEPW首页>嵌入式系统>设计应用> 基于HT46RU232单片机的智能家居电话远程控制系统

基于HT46RU232单片机的智能家居电话远程控制系统

作者: 时间:2011-10-28 来源:网络 收藏

需要注意,为了使单片机获取有效数据,MT8870 的STD 有效端经反相后接CPU 的引脚INT。当MT8870获取有效双音多频信号后,STD 电平由低变高,再反相为低,CPU 检测后,指示PA 口从Q1~Q4接收有效二进制代码。而无效的双音频信号(电话线路杂音、人们的语音信号等)是不会引起MT8870的STD端变化的。
2.6 继电器控制电路
本系统采用继电器来控制家用电器的开关。单片机的PD0和PD1输出低电平控制两路继电器,从而控制两路家电,如空调和电饭煲。根据需要,还可设定延时开、延时关的功能。电器控制电路如图7所示。若采用译码器进行扩展,可控制更多路的家电。

基于HT46RU232单片机的智能家居电话远程控制系统

3 软件设计
为提高控制系统的可靠性、可维护性和编程效率性,控制系统的软件采用模块化结构,用C语言编写。在硬件的基础上,智能型电话遥控器的所有功能都由软件实现,通过软件编程可以控制电器的开关、延时开关、声音监听及语音提示等。软件模块包括振铃检测、模拟摘机、语音提示、密码存储、MT8870中断等[8]。图8为系统软件流程图。由于篇幅所限,下面只给出MT8870中断程序部分。

基于HT46RU232单片机的智能家居电话远程控制系统

/************MT8870中断**************/
#pragma vector isr_int @ 0x004
void isr_int(void)
{
uchar i,k;
k=0;
j=0;
dat=_pa;
dat=dat0x0f;
if (allow == 1)
{
function();
}
if (allow == 0)
{
GRingCount++;
if (GRingCount 7)
{
if (dat == 10)
{
data1[GRingCount-1] = 0;
} else
{
data1[GRingCount-1] = dat;
}
} else {
if (dat == 0x0c)
{
for (i = 0; i 6; i++)
{
if (ucGpassward[i] == data1[i])
{
k++;
_nop();
}
}
if (k==6)
{
allow=1;
GRingCount=0;
i=0;
k=0; //密码输入正确
ISDPlay(5);
//调第6段放音程序,提示进行下一步操作
} else
{
allow=0;
i=0;
k=0;
GRingCount=0;
j++;
if (j3)
{
ISDPlay(1);
//调第2段放音程序,提示密码输入错误
}
if (j >= 3)
{
Holdon=1;
j=0;
} //密码输入错误三次则挂机
}
}
测试结果表明,本系统能够通过任一部电话、手机对家用电器进行远程遥控,实现了密码存储、修改及家居环境声音监听等功能,系统工作正常。
本文介绍的控制系统,充分利用现有电话网络的特点,不需专门布线,不占用无线电频率资源,不受距离和环境影响,节约了成本。采用了高性价比的单片机,与传统的80C51单片机相比,更具有竞争优势;系统具有远程家电控制、工作状态查询、环境声音监听等多项功能,操作过程需要验证密码,较好地避免了电话正常使用时对家用电器的误操作,可以让家居生活更加舒适、安全、高效。系统略作改进,也可适用于生活小区、工业企业等不同环境的监控管理,因此具有较高的实用性和推广价值。
参考文献
[1] 蒋昊,李哲英,蒋大明.基于电话交换机的远程家电控制系统[J].微计算机信息,2007,23(8-2):267-269.
[2] 钟启仁.HT46XX单片机原理与实践[M]. 北京:北京航空航天大学出版社,2008.
[3]八位单片机. http://www.holtek.com.cn/china/docum/uc/46x232.htm,2009-12-05.
[4] 刘芬,杨继生.智能电话网远程家电控制系统的设计[J]. 微型机与应用,2010(1):34-36.
[5] 程广才,蒋小松.ISD系列语音芯片的特性及应用[M].北京:电子工业出版社,2006.
[6] 张鹏. HOLTEK HT46系列单片机C语言实例教程[M].北京:北京邮电大学出版社,2010.
[7] 张庆龙. 单片机控制与网络传输应用[M]. 北京:中国电力出版社,2007.
[8] 王明秋.控制系统的设计与实现研究[D].武汉:华中师范大学,2006.


上一页 1 2 下一页

关键词:HT46RU232智能家居

评论


相关推荐

技术专区

关闭