资源描述
毕业论文(设计)智能家居管理系统院 系 :电子工程系专业(班级): 姓名: 学号: 指导教师: 职称: 完成日期: 2012年 6 月7日摘 要随着经济的快速增长,快节奏的生活状态使得人们越来越注重生活的质量和品位。如何建立一个高效率、低成本的智能家居系统已成为当今世界的一个热点问题。目前,国内外各种类型的智能家居产品越来越多,其中大部分是基于电话网的安防控制系统。但在我国,家庭电话用户正逐步减少,且电话线路易被破坏,故此类产品有一定局限性。随着电信 GSM 网络覆盖范围的广阔化、无缝化、以及手机的日益普及为基于 GSM 网络的智能家居系统提供了巨大的应用空间。本文设计了一种基于GSM网络的智能家居控制系统。本系统采用 STC单片机为系统控制核心,对家庭中出现的意外情况用各种传感器进行采集,通过GSM模块把采集到的信息发送给管理人员,管理员根据收到的信息发送相关指令给GSM模块来控制现场执行机构,完成意外情况的排除。关键词:智能家居;GSM模块;传感器;远程控制AbstractWith the rapid economic growth, the life of fast rhythm state that allows people pay more and more attention to the quality of life and grade. How to build a high efficient, low cost of intelligent household system has become a hot spot in the world today. At present, the domestic and foreign various types of intelligent household products more and more, much of which is based on the network security control system. But in our country, family telephone users are reduced gradually, and telephone lines Louis is destroyed, so this kind of product has a certain limitation. With the telecommunications GSM network coverage of the broad, seamless change, and the increasing popularity of mobile phone based on GSM network intelligent household system provide great application space. This paper introduces a design based on GSM network of intelligent home control system of the working principles and main function. The SCM system control core STC, to family of possible accidents with all kinds of sensors for acquisition, through the GSM module gathering the information sent to management personnel, administrator according to receive sending the information related instructions to GSM module to control peripherals, including control specified electrical appliances, switch electronic door multiple functions. Practice shows that this system reliable performance, cost is not high, suitable for the general public use, can be widely used in modern residence, has a broad market prospect. Key words:smart home;GSM module;sensor; remote control目 录1 引 言12 系统方案13 硬件电路23.1 主控模块23.2 通信模块33.2.1 TC35模块简介33.2.2 TC35模块与单片机连接方式33.3 传感器模块43.3.1 烟雾传感器及其特性参数43.3.2 可燃气体泄漏传感器及其特性参数53.4 信号处理电路63.4.1 信号放大调理电路63.4.2 采样保持电路73.4.3 A/D转换电路73.4 现场控制模块84 系统软件部分84.1 主程序及中断程序流程图94.2 短消息程序设计104.2.1 AT指令介绍104.2.2 PDU 编码规则124.2.3 短信模式设置134.2.4 短信的发送方法135结 论13谢 辞13参 考 文 献14附录15IV智能家居控制1 引 言21世纪是信息化的世纪,各种电信和互联网新技术推动了人类文明的巨大进步。智能家居开始展现在人们的眼前。目前,国内外各种类型的智能家居产品越来越多,其中大部分是基于电话网的安防控制系统。但在我国,家庭电话用户正逐步减少,且电话线路易被破坏,故此类产品有一定局限性。随着电信 GSM 网络覆盖范围的广阔化、无缝化、以及手机的日益普及为基于 GSM 网络的智能家居系统提供了巨大的应用空间。本文介绍的数字化家居控制系统可以使得人们通过手机在任何时候、任意地点对家中的任意电器(例如:空调、热水器、电饭煲、灯光等)进行远程控制;你可以在下班途中,预先将家中的空调打开、让热水器提前烧好热水、电饭煲煮好香喷喷的米饭,而这一切的实现都仅仅是靠一条短信完成。本系统采用STC89C52单片机作为主控器件,远程控制是基于GSM网络短消息通信方式,AT指令作为系统控制命令,单片机通过对收到的信息进行解码来识别控制信号,用户只需向TC35模块发送相应指令即可实现远程控制操作。各种传感器完成现场信息的采集,利用输入通道送单片机进行数据处理,实现实时测控;短消息发送部分采用基于GSM模块TC35和TI公司的电平转换芯片MAX232等器件构成的移动终端的硬件电路,完成短消息收发功能。2 系统方案本设计采用模块化设计,整个系统由GSM模块、控制模块、电源模块和传感器模块组成。单片机通过对传感器模块传送来的信息进行判断,如果信息异常,则进入相应中断,导通相应的电控器件,并通过GSM模块向用户发送报警信息。同时用户也可以根据需要,发送短信给GSM模块来控制相应的家电。系统框图如图2-1所示。GSM网路采样保持A/D转换单片机烟雾感器用户手机TC35模块可燃气体传感器放大调理采样保持A/D转换家电家电控制模块图2-1 系统总体设计框图3 硬件电路3.1 主控模块本系统采用STC89C52RD单片机为控制核心,单片机不断监测有没有异常信息,当发现异常信息时,则进入相应中断,利用单片机通过UART串口向GSM模块发送一系列AT指令并启动GSM模块发送报警短信给用户。再根据用户发送回来的指令打开相应的继电器来控制家用电器,完成现场控制和监测任务。STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89X52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。3.2 通信模块3.2.1 TC35模块简介TC35是西门子公司推出的一种完整的无线GSM模块,主要由GSM基带处理器、GSM射频模块、供电模块(ASIC)、闪存、ZIF连接器、天线接口、SIM卡支架七部分组成。它可以快速、安全可靠地实现系统方案中的数据传输、短消息服务(Short Message Service)。模块的工作电压为3.34.8V。该模块有AT指令集接口,支持文本和PDU模式的短消息第三组的二类传真等。此外,该模块还具有电话簿功能、多方通话、漫游检测等功能。常用工作模式有省电模式、IDLE、TALK等模式。通过独特的40管脚ZIF连接器,实现电源连接、指令、数据、语音信号、及控制信号的双向传输。基带处理器作为TC35的核心,主要处理GSM终端内的语音、数据信号,并涵盖了蜂窝射频设备中所有的模拟和数字功能。在不需要额外硬件电路的前提下,可支持FR、HR和EFR语音编码。3.2.2 TC35模块与单片机连接方式 TC35模块主要通过串口与单片机进行连接,从而单片机实现对TC35模块的控制。虽然TC35的串口提供了许多控制线,但由于考虑到设计接口的简单性,并且与单片机的UART进行连接,所以采用两线(TXD、RXD)连接。对TC35模块通信的控制可以通过软件来实现,采用软件实现控制具有使用灵活等特点,也很好地避免了过多硬件信号的检测。对于TC35的其它管脚在不使用的时候,如果该管脚为输出时,一般将该管脚悬空;如果该管脚为输入管脚,则需要将该管脚通过10的电阻上拉。另外由于/IGT管脚是控制TC35模块工作的管脚,所以需要将该管脚上拉,并且将该管脚与单片机进行连接,从而可以通过单片机来控制TC35模块的工作状态。在设计时需要考虑TC35模块的电源管脚并连在一起,由于TC35是一个功能完全的模块,因此这里不需要做任何的信号处理和射频处理。此外,TC35模快的IGT管脚是启动脚,与单片机的ALE管脚相连接。系统加电后为使TC35i进入工作状态,必须在ALE管脚加一个大于100ms的低脉冲,电平下降持续时间不可超过1ms。以下为TC35模块的接口设计。电路如图3-1所示。单片机MAX232电平转换芯片TC35模块电源 图3-1 单片机与TC35I的连接3.3 传感器模块3.3.1 烟雾传感器及其特性参数本系统采用离子式烟雾传感NIS-09C为防火灾发生传感器。它工作可靠、体积小巧,通过监测烟雾的浓度来实现火灾防范。烟雾报警器内部采用离子式烟雾传感,当一定量烟雾进入烟雾传感器的反应腔,引起电路电平变化。电路设计时可以在背后设计专用的卡口以便地固定在墙体或者天花板上,以便检测室内有无火灾的发生。如有火灾发生,通过单片机启动GSM模块短信报警,通知户主。离子式烟雾传感器是一种技术先进,工作稳定可靠的传感器,为火灾预防和早期发现提供帮助。特性参数:电源电压是6v(DC),输出电压是4.6+0.4v,电流损耗是27+3pA ,灵敏度是0.6+0.1v。a灵敏度特性 (根据UL217标准风速0.1M/秒)b电源电压特性(25 60RH)c温湿度特性 温度特性(温度60)d温度特性(温度25)源: 放射元素是媚241,放射量是平均33.3KBq.=0.9uCi(29K37KBq)。工作环境:电源电压是5.0-18.0V(DC),温度是0-50,最大-10-60,保存温度-25-80。3.3.2 可燃气体泄漏传感器及其特性参数本系统采用的是MQ-2可燃气体传感器。以其优异的稳定性,广阔的测量范围,高灵敏度等特点被广泛的运用于家庭,工厂的气体泄漏监测装置。通过设置在厨房的MQ-2可燃气体传感器,监视燃气管道、灶具有无燃气泄漏。如有燃气泄漏家庭控制器发出报警信号,并联动关闭燃气管道上的电磁阀。因MQ-2型气敏原件对不同种类,不同浓度的气体有不同的阻值。因此在使用此类型气敏元件时,灵敏度的调整是很重要的。建议使用1000PPM氢气或1000PPM者丁烷校准传感特性参数:电源电压是6V(DC),输出电压是0.8+0.2V,加热电压是5V,加热功耗900mW。图3-2是传感器典型的灵敏度特性曲线。图中纵坐标为传感器的电阻比(Rs/Ro),横坐标为气体浓度。Rs 表示传感器在不同浓度气体中的电阻值Ro 表示传感器在1000ppm 氢气中的电阻值 3-2 灵敏度特性曲线 工作环境:电源电压是6-12V(DC),温度:0-80,保存温度:-10-70。 3.4 信号处理电路 3.4.1 信号放大调理电路由于NIS-09C和MQ-2传感器输出的都是模拟信号,而单片机接收的是数字信号。所以在把输出信号传送给单片机之前要对信号进行处理。对于传感器输出的模拟信号,一般要用运算放大器对其进行调理或放大,以满足A/D转换器对输入模拟量幅值及极性的要求。在本系统中,由于MQ-2的输出信号较弱,所以在送A/D转换器处理前要对输出信号进行放大调理。电路图如上图3-3所示,运算放大器接成电压放大电路。从传感器采集过来的微弱电压信号,经过电压放大器的放大,得到较强的模拟电压信号。采样时,把相应的模拟电压信号从Vin端送进LM324A进行放大处理后,从Vout端输出送入采样保持器再送A/D转换器。图3-3 信号放大调理电路3.4.2 采样保持电路传感器采集的信号是连续型的,采集到的模拟信号变化比较快。由于A/D转换器对输入的模拟量在转换过程时要求保持不变。所以经过放大处理后的信号要先进行采样保持,然后再送到A/D转换电路,最终完成信号处理。采样保持电路如图3-4。图3-4 采样保持电路3.4.3 A/D转换电路经气敏传感器所检测的电压信号为模拟信号,无法直接被单片机所识别,所以在经过放大电路后对信号进行A/D装换,将模拟信号转化为数字信号输入单片机。A/D转换电路采用了常用的8位8通道数模转换常用芯片ADC0809,烟雾、可燃气体传感器的输出端分别接到ADC0809的IN0和IN1。 由于ADC0809 内部带有输出锁存器,可以与AT89S51 单片机直接相连。ADC0809的通道选择地址由AT89S52的P14P15输出直接控制。当P2.7=0时,与写信号WD共同选通ADC0809。其中ALE信号与ST信号连在一起,在WD信号的前沿写入地址信号,在其后沿启动转换。图中ADC0809转换结束状态信号EOC接到AT89S52的INT0引脚,当A/D转换完成后,EOC变为高电平,表示转换结束,产生中断。在中断服务程序中,将转换好的数据送到指定的存储单元。由于ADC0809片内无时钟,故利用8051提供的地址锁存使能信号ALE经D触发器二分频后获得时钟。因为ALE信号的频率是单片机时钟频率的1/6,如果时钟频率为6MHZ,则ALE信号的频率为1MHZ,经二分频后为500KHZ,与ADC0809的典型值吻合。电路图如图3-4所示。图3-4 A/D转换电路3.4 现场控制模块现场控制模块主要由继电器完成,本系统选用D4810型固态继电器,固态继电器(SSR)与机电继电器相比,是一种没有机械运动,不含运动零件的继电器,但它具有与机电继电器本质上相同的功能。SSR是一种全部由固态电子元件组成的无触点开关元件,他利用电子元器件的点,磁和光特性来完成输入与输出的可靠隔离,利用大功率三极管,功率场效应管,单项可控硅和双向可控硅等器件的开关特性,来达到无触点,无火花地接通和断开被控电路。 固态继电器有三部分组成:输入电路,隔离(耦合)和输出电路。安输入电压的不同类别,输入电路可分为直流输入电路,交流输入电路和交直流输入电路三种。有些输入控制电路还具有与TTL/CMOS兼容,正负逻辑控制和反相等功能。固态继电器的输入与输出电路的隔离和耦合方式有光电耦合和变压器耦合两种。固态继电器的输出电路也可分为直流输出电路,交流输出电路和交直流输出电路等形式。交流输出时,通常使用两个可控硅或一个双向可控硅,直流输出时可使用双极性器件或功率场效应管。固态继电器有寿命长、可靠性高、灵敏度高、控制功率小、电磁兼容性好、 快速转换、电磁干扰小的优点。D4810型继电器输入电流为5-40mA,电压330V,额定输出电流10A,输出电压范围宽为20-220V,满足项目的要求。4 系统软件部分4.1 主程序及中断程序流程图该系统软件是基于C语言程序编写调试发送操作失败短息并提醒用户重新发送根据指令打开相应继电器并发送操作成功短信系统上电复位各模块初始化读取短信指令判断是否有新短息判断指令是否正确是否否是图4-1 主程序流程图判断信息是否异常执行中断子程序发出报警短息中断返回图4-2 中断程序流程图4.2 短消息程序设计在本系统中,单片机通过串口0向GSM模块发送相应的AT命令来实现短消息的发送和接收。在介绍具体程序之前,首先简单介绍消息相关的AT命令。4.2.1 AT指令介绍短消息发送命令:AT+CMGC 该命令主要用于短消息的发送,它提供TEXT形式的短消息的发送,也提供PDU格式的短消息的发送,另外它还提供测试指令。具体的指令格式下。AT+CMGS=?响应为OK。该指令主要是用来进行测试。AT+CMGS=,Text is entered 该命令是用来发送基于TEXT格式的短消息。如果发送成功,则响应为:+CMGS:,;如发送失败,则响应为:+CMS ERROR:.在该命令中,为字符串形式的目的地址,指摘收短消息的手机号码,它的类型由来确定。为地址类型识别号,当的第一个是“+”时,的值为整数值“145”,否则的整数值为“129”.该条令在输入完前面的参数后,以回车符号结束,接下来输入短消息的内容,并以字符“Ctrl-Z”结束,该字符的ASCII码值为“26”。如果取消发送,则以字符“ESC”结束。如果发送成功,则返回服务中心的时间戳,具体可以参看响应命令格式。如果发送不成功,则返回错误信息。AT+CMGS=PDU is given 该命令是用来发送基于PDU格式的短消息。如果发送成功,则响应为:+CMGS:,;如果发送失败,则响应为:+CMS ERROR:。在该命令中,首先发送命令AT+CMGC=,并以回车符号结束,然后等待GSM模块返回“”字符,当返回“”字符后,再具体输入PDU的内容,并以字符“Ctrl-Z”结束,该字符的ASCII码值为“26”。如果取消发送,则以字符“ESC”结束。如果发送成功,则返回状态信息,具体可参看响应命令格式。如果发送不成功,则返回错误信息。在基于PDU格式的短消息中,所有的参数均在PDU数据包里,具体的数据格式在后面进行详细说明。删除短消息命令:AT+CMGD (删除SIM卡内存的短消息)该命令主要用于短消息的删除,因为一般手机的存储量或者SIM卡的存储量是有限的,因此有时需要删除已经阅读过的短消息。它具体提供两条指令,具体的指令格式如下。AT+CMGD=? 响应为OK。该指令主要是用来进行测试的。AT+CMGR=INDEX该命令主要用来删除指定位置的短消息。如果删除成功,则响应为OK,如果删除失败,则响应为:+CMS ERROR:。阅读短消息命令: AT+CMGR该命令主要用于阅读短消息的内容,它具体提供两条指令,具体的指令格式如下。AT+CMGR=? 响应为OK。该指令主要用来进行测试。AT+CMGR=INDEX该命令主要用来阅读指定位置的短消息。如果操作成功,则响应为具体的短消息内容,针对TEXT模式和PDU模式,有不同的响应内容;如果操作失败,则响应变:+CMS ERROR:。关于短消息内容的解析在后面会进行详细介绍。选择消息格式命令:AT+CMGF该命令主要用于设置短消息的格式,将短消息设置成TEXT格式或者PDU格式,它具体提供三条命令,具体的指令格式如下。AT+CMGF=?响应为OK。该指令主要用来进行测试。AT+CMGF? 该命令主要用来读取格式。如果操作成功,则响应为+CMGF:OK。AT+CMGF=该命令主要用来设置格式。如果操作成功,则响应为+OK。当mode的值为“0”时,代表PDU格式;mode的值为“1”时,代表TEXT格式。短信中心设置命令:AT+CSCA该命令主要用于设置短信中心,它具体提供三条命令,具体的指令格式如下。AT+CSCA=?响应为OK。该指令主要用来进行测试。AT+CSCA?该命令主要用来读取短信中心的地址。如果操作成功,则响应为+CSCA:OK。响应中的为短信中心的地址;用来表示为地址类型识别号,可以参照AT+CMGS命令中的含义。AT+CSCA=,该命令主要用来设置短信中心的地址。如果操作成功,则响应为+OK。为短信中心的地址;用来表示为地址类型识别号,可以参照AT+CMGS命令中的含义。以上只列出了短消息操作的一些AT命令,其他AT命令就不再进行详细介绍了,具体可以参看AT命令手册。本系统采用的是PDU短信格式。4.2.2 PDU 编码规则PDU 模式收发短信可以使用 3 种编码:7-bit、8-bit 和 UCS2 编码。7-bit 编码用于发送普通的 ASCII 字符,8-bit 编码通常用于发送数据消息,UCS2 编码用于发送 Unicode 字符。一般的 PDU编码由 A B C D E F G H I J K L M 十三项组成。A:短信息中心地址长度,2 位十六进制数(1 字节)。B:短信息中心号码类型,2 位十六进制数。C:短信息中心号码,B+C 的长度将由 A 中的数据决定。D:文件头字节,2 位十六进制数。E:信息类型,2 位十六进制数。F:被叫号码长度,2 位十六进制数。G:被叫号码类型,2 位十六进制数,取值同 B。H:被叫号码,长度由 F 中的数据决定。I:协议标识,2 位十六进制数。J:数据编码方案,2 位十六进制数。K:有效期,2 位十六进制数。L:用户数据长度,2 位十六进制数。M:用户数据,其长度由 L 中的数据决定。由于本设计发送的是中文信息,所以 J 中设定采用 UCS2 编码,这里是中英文的 Unicode 字符。4.2.3 短信模式设置GSM模块的短信模式有2种。第1种是:TEXT模式;第2种是:PDU模式。PDU模式可以采用unicode编码发送英文、汉字。本系统采用的是PDU模式。设置如下:AT+CMFG=1回车4.2.4 短信的发送方法第一步:发送接收的手机号码,AT+CMGS=13307496548回车 (接收信息的手机号)。等待答应“” ;TC35回应:“”第二部:输入短信息的内容:Test 回车5 结 论本系统借助于GSM网络通信技术和单片机的控制功能,实现了对家电的远程监控和控制。系统充分利用GSM网络覆盖范围的广阔化、无缝化和短消息业务,让用户可以随时随地的了解住宅情况并实现远程控制。同时GSM模块与控制电路可以集成在同一线路板上,这样既节约了成本,又提高了整个系统通信的稳定性,不仅可用于居民住宅,还可以用于仓库、厂房与花卉大棚等地方的安防监控与电路远程控制等,并具有实现简单、成本低、适用范围广、安全可靠等优点。由于系统是采用继电器电路控制家电的,所以在现实运用当中布线非常繁琐,不便于管理。后期可以考虑利用蓝牙或者红外线对家电短距离控制。这是系统有待改进的地方。 参 考 文 献1 杨利平.基于网络技术的远程智能家居系统J.仪器仪表学报,2009(10):19-32.2 张俊.SMS 短消息传输的远端控制技术及其实现J.仪器仪表学报,2003:29-31.3 万福君.单片微机原理系统设计与开发M.合肥:中国科技大学出版社,1995:156-169.4 谢自美.电子线路设计M.武汉:华中科技大学出版社,2000:122-128.5 樊昌信.通信原理M.北京:国防工业出版社,2009.56 藏春华,邵杰,魏小龙,等.综合电子系统设计与实践M.北京航空航天大学出版社 2009.7 裘岚.C语言程序设计实用教程M.北京:电子工业出版社,2001.8 樊天晴.Internet信息终端技术的研究M.兰州:西北工业大学,2002.9 魏小龙.51系列单片机接口技术及系统设计实例M.北京:北京航空航天大学出版社, 2002.10 王琴放.单片机原理及应用M.北京:电子工业出版社:1997:129-136.11 徐顺成.实用电子技术与电子产品汇编M.北京:电子工业出版社,1993.12 刘松,赵忠,孙学磊,等.远程家庭智能监控系统设计M.北京:高等教育出版社,2009:98-106.13 李群芳.单片微型计算机与接口技术M.北京:电子工业出版社,2005:152-163.14 沙占友.集成化智能传感器原理与应用M.北京:电子工业出版社.2004. 15 康华光.电子技术基础M.北京:高等教育出版社,2006:102-109.附录附1 主要程序代码1、MAIN.C 主程序代码如下:#include#include#includeDataType.h#includeTC35.h#includePublic.h#includeeeprom.hvoid main(void) LED1=0; /注册指示灯 开Start_GSM();/开启TC35Delay_ms(46000);/延时大约20秒 ,等待模块联网/UART_init();/串口初始化/GSM_INIT();/对tc35模块进行初始化 /Write_Password();Read_Password();LED1=1; /注册指示灯 开while(1)receive_ready(); /此函数的功能是判断是否有新短信来,如果来的话就置位 receiveready 为1if(receiveready=1) LED2=0;read_message(); /发送读取短信指令receiveready=0;sendready=1; /LED2=1;Delay_ms(300);message_read(); /判断短信,准备是否回复短信给目标号码if(send=1) Delay_ms(2000);readcommend(); /读取短信内容,做出相应操作:开关继电器等sendmessage(); /发送回复短信指令 其中 包含提取对方手机号操作Delay_ms(1000);delete_message(); /删除读短信指令flag=0;for(Rx=0;RxRxIn;Rx+) /每一次操作完成后对接收数组清零/SystemBufRx=0x00; Rx=0; send=0; if(BaoJing=1) sendBaoJing(); BaoJing=0; Delay_ms(6000); LED4=1; /*/函数void receive(void) interrupt 4 using 1;实现功能:通过串口接收数据/*/void receive(void) interrupt 4 if(RI) if(RxRxIn) SystemBufRx=SBUF; Rx+; RI=0; /*/void int0(void) interrupt 0 :实现功能: 实现紧急短信报警*/void int0(void) interrupt 0 BaoJing=1;LED4=0; /* / */2、 TC35.C #include#include#includedatatype.h#includepublic.h#includetc35.h#includeeeprom.h uchar code AT=AT;/握手信号 uchar code ATE=ATE;/关回显 uchar code AT_CNMI=AT+CNMI=2,1;/设置这组参数来了新信息直接显示到串口,不作存储 uchar code AT_CSCA=AT+CSCA=+8613800516500;/设置服务中心号码 徐州移动 +8613800516500 徐州联通 +8613010350500 uchar code AT_CMGF=AT+CMGF=1;/设置短信的格式为text格式 uchar code AT_CMGR=AT+CMGR=;/读取短信指令 uchar code AT_CMGS=AT+CMGS=;/发送短信指令 uchar code AT_CMGD=AT+CMGD=;/删除短信指令 uchar code successfully=Operate Successfully!;/发送操作成功信息到目标号码 uchar code fail=Operate failed,try again!;/发送操作失败信息到目标号码 uchar code danger=Danger!; /发送警报信息 提示有人闯入、煤气泄漏、失火的信息 uchar code MyTel=+8615152810108; /我的手机号码 uchar AT_delete12; uchar AT_Read12;/用来存储发送读取短信指令 uchar AT_SendNumber25; /用来存储发送短信号码指令 uchar numberbuf3; /用来保存短信条数 uchar idata SystemBufRxIn; /储存出口接收数据 uchar CommandBuf8;/用来储存指令 uchar Rx=0; / uchar idata state17; /用来存储IO口状态 /uint temp;/记录状态 /uchar temp1;/用于记录P0口状态 /uchar temp2; /用于记录P2口状态 /bit check=0;/查询标志位 bit receiveready=0; /接收短信标志位 bit sendready=0; /发送短信准备标志位 bit send=0; /发送短信标志位 bit flag=0; /指令标志位 bit BaoJing=0; /报警标志位!/*/函数void UART_init;实现功能:对串口进行初始化/*/void UART_init (void)TMOD=0x20; /选择定时器1 PCON=0x00;/波特率不加倍 SCON=0x50;/串行工作方式1允许串行接收 TH1=0xFD;/实验板上晶振位11.0592MHZ,选择波特率为9600 TL1=0xFD;/在相应计数器上赋值 EA=1;/总中断开启EX0=1; /外部中断0允许位IT0=0; /跳变沿触发方式,从高-低的负跳变有效 ES=1;/串行中断开启 TR1=1;/开启定时器1/*/函数void sendchar(uchar ch);实现功能:发送一字节数据/*/void sendchar(uchar ch)SBUF=ch;while(TI=0);TI=0;/*/函数void sendstring(uchar *p);实现功能:通过串口发送字符串/*/void sendstring(uchar *p) while(*p) sendchar(*p); p+; sendchar(0x0D);/? 回车 sendchar(0x0A);/? 换行/*/函数void Start_GSM(void);实现功能:对TC35进行启动,开启TC35/功能详述:单片机上的IGT管脚是跟TC35的IGT管脚相连;需要启动TC35,必须在 15脚(/IGT)加时长至少为100ms的低电平信号,/且该信号下降沿时间小于1ms。启动后,15 脚的信号应保持高电平./*/void Start_GSM(void)IGT=0;Delay_ms(1000);IGT=1;Delay_ms(1000);/*/函数void GSM_INIT(void);实现功能:初始化TC35模块/
展开阅读全文