首页 基于TC35模块的GSM远程智能家居控制系统的设计_毕业设计_好

基于TC35模块的GSM远程智能家居控制系统的设计_毕业设计_好

举报
开通vip

基于TC35模块的GSM远程智能家居控制系统的设计_毕业设计_好基于SIM300模块的GSM远程控制系统的设计 基于TC35模块的GSM远程控制系统的设计 摘要 随着 GSM(Global System for Mobile communication)移动通信网络的迅速普及和竞争的日益激烈,新技术和新业务的开发和应用已经提到一个十分重要的位置。短消息业务(SMS)作为 GSM 网络的一种基本业务,已得到越来越多的系统运营商和系统开发商的重视,基于这种业务的各种应用也蓬勃发展起来。 本文提出了一种基于 GSM 短消息的远程控制系统,在给出系统的总体设计的基础上,设计了系...

基于TC35模块的GSM远程智能家居控制系统的设计_毕业设计_好
基于SIM300模块的GSM远程控制系统的设计 基于TC35模块的GSM远程控制系统的设计 摘要 随着 GSM(Global System for Mobile communication)移动通信网络的迅速普及和竞争的日益激烈,新技术和新业务的开发和应用已经提到一个十分重要的位置。短消息业务(SMS)作为 GSM 网络的一种基本业务,已得到越来越多的系统运营商和系统开发商的重视,基于这种业务的各种应用也蓬勃发展起来。 本文提出了一种基于 GSM 短消息的远程控制系统,在给出系统的总体设计的基础上,设计了系统的硬件和软件,并对其应用领域作了一些探讨和研究。系统以 GSM 网络作为远程信号的传输平台。对 GSM 网络体系结构作了详细的讲解,并且着重讲述了对于本课 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 相当重要的短消息业务的通信原理。数据的传输方式主要是短消息方式,系统中采用 PDU 模式,对短消息的 PDU 编码和解码进行详细的讲述。短消息的接收和发送是通过 AT 指令来实现的,讲述了常见的 AT 指令及其使用方法。 系统的硬件设计中,对主要硬件 TC35 和 MSP430F149 单片机及其外围电路进行了详细的讲述。系统分为两个部分进行设计——控制中心站和远程控制分站:控制中心站硬件包括一台 PC 机,GSM 通信模块 TC35,两者通过 RS232 连接;远程控制分站硬件包括 GSM 通信模块 TC35,MSP430F149 单片机,显示单元,各种传感器和数据采集与处理单元。系统的软件设计包括控制中心站软件设计和远程控制分站软件设计。远程控制分站软件设计中运用 IAR 公司为 MSP430 系列单片机开发的 C430 集成开发环境和 C 语言调试器作为程序开发工具,其软件包括单片机初始化、主程序、信号采集中断程序、通过串口的短消息接收和发送程序。论文的最后部分以 GSM 短消息的远程控制系统为基础,结合温度 检测 工程第三方检测合同工程防雷检测合同植筋拉拔检测方案传感器技术课后答案检测机构通用要求培训 技术设计出一套基于 GSM 的远程温度控制系统,并给出了此系统应用领域的一些探讨和研究。 关键词:MSP430,GSM,TC35,远程控制,AT指令 Abstract Along with rapid popularization and furious competition of GSM net work ,research and application of new technology and new operation have been mentioned to a quite important position. SMS as a basic service of GSM network has been attented by more and more system operator and developer ,and kinds of applications based on this service have been rapid developed .This paper present a remote monitoring system based on GSM-SMS, this paper first presents the system design as a whole, then presents the hard ware and software design of system, at last presents some discussions and investigation in applying field. In this system GSM network is a medium for transmitting the remote signal, it presents detailed explanation of GSM network‘s system structure and emphasizes the communication principle that is important for the task. The mode of transmitting data is most SMS. PDU mode is used during transmitting SMS. It presents en cording and decoding of SMS PDU mode. Transmitting and receiving SMS is realized by using AT command. It presents the familiar AT command and using method. It presents TC35 and microchip MSP430F149 MCU and peripheral circuit during design of system hardware. Hardware of system includes two parts: the monitoring center and the remote monitoring station. It consists of a computer and a TC35 communication module of GSM in the monitoring center .Computer and TC35 are joined by RS232. It includes a TC35 communication module of GSM, a MSP430F149 MCU, a display part and a gathering data part. It includes the monitoring center software and the remote monitoring station software in design of system software. The remote monitoring station software is designed with C430 integration developing environment that IAR designed forMSP430 single chip and C-language debugger. It includes single chip initialization and main program and interrupt of gathering signal and SMS receiving and transmitting program through the serial port .In the end of the paper, it presents a remote temperature monitoring system based on GSM, using the designed system of remote monitoring system based on GSM-SMS and technique of measuring temperature. And then presents any discussions and investigation in applying field. Keywords: GSM; SMS; remote monitoring; PDU mode; AT command;MSP430 目 录 I 摘要 II Abstract IV 目 录 - 1 - 前言 - 3 - 1 总体 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 与论证 - 3 - 1.1 设计方案模块 - 4 - 1.2 无线通信模块 - 4 - 1.3 控制单元模块的选择 - 5 - 1.4 电源模块的选择 - 5 - 1.5 系统总体框架 - 7 - 2 系统硬件模块设计 - 7 - 2.1 电源及复位电路的设计 - 7 - 2.1.1 MSP430电源模块的设计 - 7 - 2.1.2 TC35的电源模块 - 8 - 2.1.3、复位电路 - 9 - 2.2 串口通信模块设计 - 10 - 2.3 GSM模块接口设计 - 10 - 2.3.1、GSM模块简介 - 10 - 2.3.2 GSM模块接口设计 - 12 - 2.3.3 指示灯电路 - 13 - 2.3.4 SIM卡电路 - 14 - 2.4 串行存储器的设计 - 15 - 2.5 采集系统模块设计 - 16 - 2.6 外部继电器控制模块设计 - 17 - 2.7 单片机模块的设计 - 21 - 3系统软件设计 - 22 - 3.1串口程序设计 - 22 - 3.1.1串口初始化程序 - 23 - 3.1.2中断服务程序 - 25 - 3.2 存储程序设计 - 25 - 3.2.1写操作 - 27 - 3.2.2读操作 - 29 - 3.3短消息程序设计 - 29 - 3.3.1 AT命令介绍 - 33 - 3.3.2 短消息的设置 - 39 - 3.4信息采集控制程序设计 - 41 - 总结 - 42 - 致谢 - 43 - 参考文献 - 44 - 附件 - 44 - 附件一:系统总电路图 前言 短消息业务(SMS)作为 GSM(GlobalSystem for Mobile communication)网络的一种基本业务,以其连接简单、费用低廉、覆盖范围广、实现方便等优点得到越来越多的系统运营商和系统开发商的重视,基于短消息业务的各种应用也蓬勃发展起来。短消息业务与语音及传真是 GSM 网络提供的主要电信业务,它通过无线控制信道进行传输,经短消息中心完成存储和转发功能,每条短消息的信息量为 140bit。在短消息的可靠传递基础上,GSM 专业调制解调器的出现给 GSM 的发展注入了新的活力,它改变了传统的以语音为主要的通信手段,使 GSM 网络数据通信得到广泛的应用[1-3]。目前市场上提供的GSM 调制解调器和模块提供了 RS232 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 数据接口,采用 AT 指令控制,符合 ETSI 标准 GSM0707 和 GSM0705。基于这种技术,以 GSM 网络作为无线传输平台可以开发出多种应用领域。 目前远程控制主要有以下几种方式:短距离长线控制;通过市话网;通过 Internet 网络;通过自组网络(CDPD 网);通过数传电台方式。短距离长线控制和通过自组网络(CDPD网)首先要自行建设通信网络,建网初期投资巨大,运营期间自主维护耗费人力物力较大,信号质量得以保证,效果好,相对运营费用高;通过市话网和 Internet 方式以现有的网络为依托,无需自行建设通信网络,但是由于市话网和 Internet 难以达到工业现场覆盖面,接入网络受到限制,局限性很大,网络运行效果取决于网络运营商,线路安全不能得到保证,其通信效果好,信号量大,运营费用相对低廉;数传电台出现较早,应用很广泛,是一种不错的无线数传方式,但是建网初期投资巨大,数传电台的传输范围有限,而且容易受到空间无线信号的干扰,信号不能得到保障,但是数传电台信号传输实时性好,运行费用低。 远程控制系统应用广泛,遍及国民经济的很多领域,而目前这些控制系统无论从成本、可靠性、稳定性、使用方便性、还是维护的难易程度等方面都不能最大限度的使人满意。因此本文把 GSM网络引入到远程控制系统中,提出了基于 GSM 短消息的远程控制系统。GSM 网络是目前基于时分多址技术的移动通信体制中最成熟完善、覆盖面最广、功能最强、用户最多的移动通信网络,GSM 短消息业务不需要建立拨号连接,只需把待发的消息加上目的地址发送至短消息中心,再由短消息中心转发到最终目标。运用 GSM 短消息实现远程控制可靠性高、信号传播距离远、覆盖面积广,并且可以节省建网初期的巨额投资,运营期间无需维护网络,运行费用低廉。 1 总体方案与论证 1.1 设计方案模块 本设计是一个基于GSM模块的远程控制系统,GSM就是global system for mobile communications 【电信】全球通, 全球移动通信系统 (亦称“泛欧数字式移动通信系统”, 是一个根据欧洲电信标准协会出版的 GSM 技术规范建造的国际无线蜂窝网) 。GSM模块,是将GSM射频芯片、基带处理芯片、存储器、功放器件等集成在一块线路板上,具有独立的操作系统、GSM射频处理、基带处理并提供标准接口的功能模块。本设计是一种利用手机短信息实现对远程监控设备如交通路灯,家庭里的门锁、家用电器、可视对讲、报警装置等进行智能控制或信息采集交流的设计思路。系统的开发基于短信息技术、自动控制技术、计算机技术、数字通信技术及加密技术,系统利用相关的网络、计算机系统和控制器,以短信息为基本控制指令和数据信息传送方式,实现手机无线遥控和数据传送,通过专设的短信控制中心和服务中心,为远程监控设备提供全方位的数字化服务。本设计就是用单片机控制GSM模块采集和控制远程设备信息的无线通信控制系统。本设计采用模块化设计,整个系统由GSM模块、控制模块、电源模块和外围模块组成,系统的整体方案框图如下图1-1: 1.2 无线通信模块 我们设计此系统的前提是基于短信方式,简单、方便使用、价格低廉的实用性系统,而不需要联网使用的GPRS通信模块,如SIM300T和MC35等系列模块。所以我们有两种选择,一是用TC35模块和TC35i模块。TC35和TC35i功能相似,随着西门子公司对TC35系列产品的发展,TC35i在相同技术领域相对TC35更胜一筹,但它的价格比TC35要昂贵得多,而且在本设计系统中的技术要求TC35同样能够达到标准,因此综合来考虑,选择TC35做为本设计系统的无线通信模块。 1.3 控制单元模块的选择 控制模块是本设计的核心,通过外围电路和向GSM模块写入相关程序,控制部分要实现能够控制GSM模块短消息的接收和发送、接收频率、功耗大小、工作模式等各项参数的功能。因此必须需要一个微控制器才能达到要求,而MSP430F149单片机开发板不仅满足设计要求,而且是自带A/D转换器、显示器和本设计调试时所需的温度传感器模块,在短时间内和有限的条件下使设计更加轻松和方便。因此本设计采用MSP430F149单片机开发板作为系统的控制核心。 1.4 电源模块的选择 单片机的供电电压要求是3.3V,TC35模块要求的供电电压要求是2.5V~5.0V。由于收音机模块的应用范围很广,比如手机中就采用3.7V锂电池供电,DVD、电视等系统中则是对220V市电进行变压后供电。本设计中采用7805稳压芯片对系统进行供电,由于这个电源可以很容易得到,设计中不再单独给出。 1.5 系统总体框架 本系统采用MSP430控制TC35无线模块进行远程通信。通过读取TC35接收到的短信内容从而控制相应的外部继电器组工作,或者控制数据采集系统工作,把相应的数据通过串口0发给TC35模块,进而发送数据。 图1.1所示为系统远程端系统框图: 图1.1 系统远程端框图 系统远程端负责数据采集及控制外部设备,以及存储重要的数据。系统由MSP430单片机主控,TC35作为无线通信模块,继电器组控制外部设备,传感器组为数据采集模块,24LC02B串行存储器作为数据存储器,电源模块提供模块的电源供应。 图1.2所示为系统终端系统框图: 图1.2 系统终端框图 系统终端由用户GSM手机或者PC机,PC由串口接TC35模块,上位机控制TC35模块通信。 2 系统硬件模块设计 通过图1.1可知,硬件系统主要包括电源模块、串口模块、采集控制模块、GSM模块、串行存储器模块及单片机模块。下面对各个模块进行详细介绍。 2.1 电源及复位电路的设计 2.1.1 MSP430电源模块的设计 MSP430电源模块: 使用TPS70633稳压芯片经稳压得到3.3V电压。如图2.1所示。 图2.1 3.3V电源电路 为了使输出的3.3V输出电源的纹波小,在输出部分用了一个100uf和0.1uf的电容,另外在芯片的输入管脚也放置了一个100nf的滤波电容,以减小输入端受到的干扰。 2.1.2 TC35的电源模块 TC35模块需要提供4V直流电压,如图2.2 图 2.2 3.6V电源电压 对于TC35模块采用的4V供电,为了使输出的4V电压的纹波小,在输出部分用了一个22pf和100uf的电容,实现滤波。另外在芯片的输入管脚也放置了100nf的滤波电容,以减小输入端受到的干扰。 2.1.3、复位电路 在单片系统中,为了保证系统在上电时进行初始化,同时也为了保证对电源的监视,需要采用复位芯片,在此系统中采用MAX809STR芯片,复位电路如下图: 图2.4 复位电路 由上图可以看出:该电路非常简单,只在电源管脚处加了一个0.1uf的电容进行滤波处理,以减小干扰。 2.2 串口通信模块设计 该系统实现的串口电路(RS-232电路)主要是MSP430与上位机进行通信,实现单片机系统与上位机进行通信处理。由于单片机与上位机进行通信时接口电平不同,因此需要进行接口转换,这里采用MAX3238E芯片来完成接口电平的转换。具体的RS-232电路图如图所示。 图2.5 RS-232电路图 由图可以看出,通过一个上拉电阻将SHDN管脚拉高,使该芯片一直处于工作状态,如果系统需要处于低功耗状态,也可以通过单片机来控制该管脚。工作时将该管脚设置为低电平,需要处于低功耗时将该管脚设置为高电平这样很容易实现控制。在管脚C1+、C1-、C2+、C2-、V+和V-分别放置0.1uf电容实现充电作用,满足相应的充电电泵的要求,管脚T1OUT、TIN、R1OUT和RIN分别是232转换的输入/输出脚,实现单片机的TTL电平与上位机的接口电平的转换。考虑到减小电源的干扰,还需要在芯片的电源输入管脚加一个104pf的电容来实现滤波,以减小输入端受到的干扰。 2.3 GSM模块接口设计 2.3.1、GSM模块简介 本系统采用TC35。 TC35是西门子公司推出的一种完整的无线GSM模块,主要由GSM基带处理器、GSM射频模块、供电模块(ASIC)、闪存、ZIF连接器、天线接口六部分组成。它可以快速、安全可靠地实现系统方案中的数据传输、语音传输、短消息服务(Short Message Service)和传真服务。模块的工作电压为3.3~4.8V。该模块有AT指令集接口,支持文本和PDU模式的短消息第三组的二类传真等。此外,该模块还具有电话簿功能、多方通话、漫游检测等功能。常用工作模式有省电模式、IDLE、TALK等模式。通过独特的40管脚ZIF连接器,实现电源连接、指令、数据、语音信号、及控制信号的双向传输。通过ZIF连接器及50Ω天线连接器,可分别连接SIM卡支架和天线。基带处理器作为TC35的核心,主要处理GSM终端内的语音、数据信号,并涵盖了蜂窝射频设备中所有的模拟和数字功能。在不需要额外硬件电路的前提下,可支持FR、HR和EFR语音编码。 2.3.2 GSM模块接口设计 TC35模块主要通过串口与单片机进行连接,从而单片机实现对TC35模块的控制。虽然TC35的串口提供了许多控制线,但由于考虑到设计接口的简单性,并且与单片机的UART进行连接,所以采用两线(TXD、RXD)连接。对TC35模块通信的控制可以通过软件来实现,采用软件实现控制具有使用灵活等特点,也很好地避免了过多硬件信号的检测。对于TC35的其它管脚在不使用的时候,如果该管脚为输出时,一般将该管脚悬空;如果该管脚为输入管脚,则需要将该管脚通过10Ω的电阻上拉。另外由于/IGT管脚是控制TC35模块工作的管脚,所以需要将该管脚上拉,并且将该管脚与单片机进行连接,从而可以通过单片机来控制TC35模块的工作状态。在设计时需要考虑TC35模块的电源管脚并连在一起,由于TC35是一个功能完全的模块,因此这里不需要做任何的信号处理和射频处理。另外TC35模块还需要连接SIM卡座,这样才能够实现一个完整独立的GSM终端。以下为TC35模块的接口设计。 由图可以看出,TC35接口电路的设计比较简单。在进行串口设计时,虽然TC35模块串口管脚的工作电平是CMOS电平,单片机串口管脚的工作电平是TTL电平,但由于单片机的高电平和低电平的逻辑判断电平可以实现屯TC35的管脚进行连接(具体可以参看MSP430F149的数据 手册 华为质量管理手册 下载焊接手册下载团建手册下载团建手册下载ld手册下载 ),因此TC35模块的串口线直接与单片机的串口线进行连接。由于TC35模块的串口管脚中的DTR0和RTS0两个管脚是输入管脚,因此分别通过10KΩ的电阻将这两个管脚拉高。/IGT为TC35模块的工作状态控制管脚,该管脚首先通过一个电阻拉高,平时该管脚为高电平,处于不工作状态;另外该管脚还同时与单片机的一般I/O端口进行连接,这样通过单片机来实现对TC35模块的工作状态的控制,当单片机在该管脚送低电平时,则TC35模块工作。TC35模块的SYNC管脚用来指示GSM模块的工作状态,连接一个指示灯来指示工作状态,如图2.6、图2.7所示。 图2.6 TC-35_ZIF管脚接口电路 2.3.3 指示灯电路 TC35 有一个同步信号脚SYNC (32脚 synchronization signal ) ,该脚是一个同步信号输出端,该脚输出的信号,反应了模块的工作情况。本系统在该端通过一个三级管接入 LED 灯,接法如图 2.7 所示。 LED 灯受到该脚信号控制,可以显示 TC35 模块运行的状态。 图2.7 指示灯电路 1)、 LED 灯熄灭时:表示 TC35 处于关闭、休眠、报警或者充电状态二; 2)、 LED灯 600ms 亮/ 600ms 暗:表示 SIM 卡没有插入,或者正在搜索网络,或者正在认证用户,或者正在注册网络; 3)、 LED 灯 75ms 亮/ 3S 暗: 表示已经注册上网,处于待机状态二; 4)、 LED灯 75ms 亮/ 75ms 暗/ 75ms 亮/ 3S 暗:表示一个或多个 GPRS 文件被激活二; 5)、 LED 灯闪烁:表示 GPRS 的数据传输,当 GPRS 数据传输时,在交换一个数据包后, LE 。灯将会在一秒内点亮。闪烁的持续时间约为 0 . 5 秒。 2.3.4 SIM卡电路 TC35模块的SIM卡座采用的是Molex座,该座有8个管脚,而TC35模块的SIM管脚只有6个管脚,如下图所示。其中编程端我们不用,其它的接口分别对应于 TC35 的 5 个管脚,SIM上的CCRST、CCIO、CCCL、CCVCC和CCGND通过SIM卡阅读器与TC35的同名端直接相连。其接口示意图如下图 图2.8所示: 图2.8 SIM卡接口示意图 图2.8 所示的图为SIM座接口电路图,由图可以看出SIM座直接与TC35模块的ZIF连接器对应的SIM卡管脚进行连接,在需要的地方加了电容进行滤波处理。当SIM座的管脚7与TC35模块的SIMDATA进行连接时,则用来模拟SIM卡插入的情况;当SIM座的管脚7不与TC35模块的SIMDATA进行连接时,则用来模拟SIM卡没有插入的情况。图2.9为sim座接口电路。 图2.9 SIM座接口电路图 2.4 串行存储器的设计 在本系统中,串行存储器使用24LC02B芯片来实现。24LC02B主要是通过I2C实现与单片机的连接,具体的电路如图2.10所示。 图2.10 串行存储器电路 由图可以看出,该电路的设计比较简单。将24LC02B的第7管脚(写保护管脚)接地,可使该芯片始终处于可以进行读/写的状态。在实际设计的时候,也可以将WP管脚与单片机的一个一般I/O端口进行连接,通过单片机来控制24LC02B就处于写保护状态;单片机在该管脚输出低电平,则24LC02B不处于写保护状态。在本电路中,主要为了简化设计,直接将WP管脚接地,使24LC02B不处于写保护状态。24LC02B的A0、A1和A2都接地,表示该器件的地址为000.由于I2C是总线工作方式,该总线上可以挂接很多器件,所以总线上的每个器件都应该有相应的地址,这样才能实现寻址操作。24LC02B的SCL和SDA管脚分别与单片机的P1.2和P1.3进行连接,连接的方式是I2C总线方式。由于MSP430系列单片机里有的单片机没有I2C接口,因此本系统在设计时采用MSP430单片机的一般I/O端口P1.2和P1.3分别作为I2C总线的SCL和SDA线,采用软件来模拟I2C总线,从而实现与24LC02B进行接口。在设计时,需要将SCL和SDA分别通过一个10KΩ的电阻将其拉高,以满足I2C工作条件。此外,为了减小电源的干扰,还需要在24LC02B芯片的电源输入管脚加一个0.1uf的电容来实现滤波,以减小输入端受到的干扰。 2.5 采集系统模块设计 在该系统中主要考虑模拟前端为传感器,从传感器送来的是标准信号,即4mA到20mA,这样设计具有一定的通用性,只要前端接不同的传感器就可以采集不同的信号源。由于A/D转折基准为电压,也就是参考源为电压,所以A/D转换的是电压,这样需要将电流信号转换成电压信号。如图2.11所示为模拟量采集具体的电路。 图2.11 采集电路设计 由图可以看出,采集电路通过一个电阻将电流信号转换成电压信号,为了提高采集的进度,需要采用高精度的电阻,这里采用的是精度为1%的电阻。电路中采用二极管作为ESD保护电路,考虑到干扰问题,采用电容进行滤波处理,增加采集电路的抗干扰问题。 2.6 外部继电器控制模块设计 在某些应用场合,需要控制设备的状态,比如开机或者关机,因此本系统也设计了相应的控制电路。该控制电路相对比较简单,主要利用继电器来实现,具体的控制电路如图2.12所示。 在图2.12中,P4.0、P4.1、P4.2和P4.3与单片机连接的同时也接地。在一般状态下,继电器处于开路状态,当单片机在P4.0、P4.1、P4.2和P4.3管脚输出高电平时,继电器吸合,则电路导通,这样就可以控制设备的状态了。 图2.12 控制电路 2.7 单片机模块的设计 MSP430F149 结构概述 MSP430 系列单片机是一个特别强调超低功耗性能的单片机品种。它适合应用在各种要求极低功耗的场合,具有一定的技术特点。在这个系列中有多个型号,它们由一些基本功能模块按不同的应用目标组合而成。其中 FLASH 型芯片又可分为几个分支,如 11x、11x1、13x、14x 等。它们都具有开发设备简便、可现场编程等特点。MSP430 系列采用存储器-存储器结构,即用一个公共的空间对全部功能模块寻址,同时用精简指令组对全部功能模块进行操作[34,35]。图2.13 是 MSP430F14x 系统结构图。首先来看一下 CPU(Central Processing Unit)。MSP430 的 CPU 运行正交的精简指令集,由 16 位 ALU(Arithmetic and Logic Unit)、指令控制逻辑和 16 个寄存器组成。寄存器中有 4 个具有特殊用途,即程序计数器R0/PC(Register 0/Program counter)、堆栈指针 R1/SP(Stack pointer)、状态寄存器和常数发生器 R2/SR/CG1(Special Register/Constant Generator 1)、R3/CG2。除了 CG1 和 CG2,所有寄存器都可作为通用寄存器,用所有指令操作。常数发生器只用于指令执行时提供常数,但不能存储数据。对CG1、CG2 访问时的寻址模式可以区分所获得的常数数值。PC(program counter)、SP 和 SR 配合精简指令所实现的控制,可以使应用系统的程序设计实现复杂的寻址模式和软件算法。对程序存储器进行访问时,对于程序代码总是以字形式取得,而对于数据可以用字或字节指令进行访问。每次访问均需要 16 位数据总线(MDB,即:Memory Data Bus)和访问当前存储器模块所需的地址总线(MAB,即:Memory Address Bus)。存储模块由内部模块允许信号自动选中,这样可以减少总的电流消耗。对于 MSP430F 系列,程序存储器是 FLASH 的。在程序设计中,可以将数据安排在程序存储器中,它们可以用字或字节指令方式访问,因此可以实现查表处理等应用。64 KB 空间顶部的 16 字(0FFFFh~0FFE0h)保留用作复位及中断的向量地址。数据存储器(RAM)与程序存储器相同,经地址总线(MAB)和数据总线(MDB)与 CPU 相连。RAM 内的数据可以以字或字节宽度访问。RAM与程序存储器是经过相同的地址总线和数据总线与 CPU 相连。 图2.13 单片机电路图 单片机电路作为整个系统的核心控制部分,主要采集来自传感器的数据,将数据传输数据中心。单片机通过A/D通道进行数据采集,单片机与GSM模块之间的通信采用单片机的串口0(UART0)来实现,GSM模块与单片机接口时不不需要进行电平转换。单片机与PC通信则需要通过串口芯片(SP3220)完成接口电平的转换。此外,单片机还与串行存储器接口,以记录某些关键数据。单片机电路如图2.13所示。 通过图2.13可以看出,该单片机的接口电路非常简单。在单片机的时钟设计上与其他单片机有一定的区别:MSP430F149单片机采用两个时钟输入,即一个32KHZ的时钟信号,另外一个为8MHZ的时钟信号,该系统的时钟部分都是采用晶体振荡器来实现的。考虑到电源的输入纹波对单片机的影响,在电源的管脚增加一个0.1uf的电容来实现滤波,以减小输入管脚处受到的干扰,另外单片机还有模拟电源的输入端,因此在这里需要考虑干扰问题,由于在该系统中的干扰比较小,因此模拟地和数字地共地,并在模拟电源输入管脚增加一个滤波电容以减小干扰。单片机的串口0与GSM模块接口,串口1与PC进行通信,由于接口电平不同,因此串口1与RS-232芯片进行连接。单片机的P1.2和P1.3管脚与串行存储器进行接口。此外,单片机的P4.0、P4.1、P4.2和P4.3分别与继电器进行连接,以控制设备的状态。 3系统软件设计 经过前面的系统硬件设计可知,系统的软件主要包括串口程序、存储程序、短消息程序、采集控制程序和测试程序等。本系统软件采用了前后台的设计方式,前台系统是主程序,后台是由所有的中断服务程序,如串口接收中断服务程序,定时器中断服务程序等功能模块组成。装置的远程报警和开启功能通过软件控制实现,在使用装置前需准备好一张已开通的GSM网SIM卡,并在手机终端上向SIM卡第一个电话本位置存入报警的目的手机号码(无+86),此号码也是用户进行远程开启时的唯一 有效号码;向SIM卡的第一个短信存储位置存入欲发送的报警短信内容。将设置好的SIM卡装入装置并上电后,装置即可按程序设计的流程运行。IAR 公司为 MSP430 系列单片机开发的 C430 集成开发环境和 C 语言调试器作为程序开发工具,程序主要由三部分代码组成:启动与初始化、报警监控、远程开启与控制。 启动与初始化的设计 图3.1 TC35模块的初始化 装置上电后首先必须对单片机、系统变量等进行初始化,然后通过拉低IGT启动TC35,并通过发送AT命令进行模块的初始化设置,初始化流程如图3.1所示。单片机的初始化包括设置波特率、设置外部中断(电平触发方式)和串口中断等,TC35的初始化包括设置短信到达时提醒方式、接收短信的存储位置、电话薄的寻址位置等,初始化过程中用到的AT命令详见表1。 3.1串口程序设计 在本系统中,串口0与GSM模块接口,串口程序部分需要实现串口0。串口程序主要包括初始化和中断服务程序两个部分。下面具体介绍程序实现的代码。 3.1.1串口初始化程序 串口初始化程序主要包括初始化和中断服务程序两个部分。下面为体和程序。void Init_UART0(void) { //将寄存器的内容清零 U0CTL = 0X00; //数据位为8bit U0CTL += CHAR; //将寄存器的内容清零 U0TCTL = 0X00; //波特率发生器选择SMCLK U0TCTL += SSEL1; //波特率为19200 UBR0_0 = 0Xa1; UBR1_0 = 0X01; //调整寄存器 UMCTL_0 = 0X49; //使能UART0的TXD和RXD ME1 |= UTXE0 + URXE0; //使能UART0的RX中断 IE1 |= URXIE0; //使能UART0的TX中断 IE1 |= UTXIE0; //设置P3.4为UART0的TXD P3SEL |= BIT4; //设置P3.5为UART0的RXD P3SEL |= BIT5; //P3.4为输出管脚 P3DIR |= BIT4; return; } 通过上面的程序可以看出,只要设置相应的寄存器就可以设置串口工作的参数。在上面的程序中,串口0的通信率为19200波特/秒。 3.1.2中断服务程序 串口进行数据的发送和接收处理时,采用中断服务程序来实现,下面为具体的中断服务程序。 //////////////////////////////////////// // 处理来自串口 0 的接收中断 #if __VER__ < 200 interrupt [UART0RX_VECTOR] void UART0_RX_ISR(void) #else #pragma vector=UART0RX_VECTOR __interrupt void UART0_RX_ISR(void) #endif { char chrTemp; //接收来自的数据 UART0_RX_BUF[nRX0_Len_temp] = RXBUF0; nRX0_Len_temp += 1; chrTemp= UART0_RX_BUF[nRX0_Len_temp - 1]; if((chrTemp == 13) || (chrTemp == 10)) { //接收到一帧信号 nRX0_Len= nRX0_Len_temp; nRev_UART0 = 1; nRX0_Len_temp = 0; } } //////////////////////////////////////// // 处理来自串口 0 的发送中断 #if __VER__ < 200 interrupt [UART0TX_VECTOR] void UART0_TX_ISR(void) #else #pragma vector=UART0TX_VECTOR__interrupt void UART0_TX_ISR(void) #endif { if(nTX0_Len != 0) { // 表示缓冲区里的数据没有发送完 nTX0_Flag = 0;TXBUF0 = UART0_TX_BUF[nSend_TX0]; nSend_TX0 += 1; Delay_us(5); if(nSend_TX0 >= nTX0_Len) { //数据发送完毕 nSend_TX0 = 0; nTX0_Len = 0; nTX0_Flag = 1; } } } 在上面的中断服务程序中,为了与其他程序进行数据交互,使用全局变量或者全局缓冲区来实现,例如“UART1_TX_BUF[]”和“Ntx1_Flag”等。 3.2 存储程序设计 在本系统中,利用串行存储器存储某些重要数据。单片机通过I2C与串行存储器进行接口。由于本系统使用的单片机是MSP430F149,该单片机没有I2C外围接口,因此需要采用一般的I/O端口来模拟I2C总线的功能,从而实现串行存储器的读/写操作。本系统使用的串行存储器为24LC02B.串行存储器主要有读/写操作,下面分别进行详细介绍。 3.2.1写操作 24LC02B的写操作有两种形式:单字节写和按页写。下面对单字节写和按页写两种方式分别进行介绍。 单字节写就是在指定的地址中写入内容。首先单片机发送控制字节,然后发送地址字节,最后输入写的内容,具体程序如下。 int WriteSingleByte(char nAddr,char nValue) { int nTemp = 0xA0;//写命令 // 启动数据总线 I2C_START(); // 发送控制字节 I2C_TxByte(nTemp); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 发送地址字节 I2C_TxByte(nAddr); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 发送数据字节 I2C_TxByte(nValue); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 停止总线 I2C_STOP(); return (nTemp & SDA); } 按页写是一次写入8个字节。按页写操作的第一个字节的操作和按字节写操作是一致的。当写完第一个字节后,单片机继续写下一个内容,在写完最后一个字后,单片机在总线上产生停止信号,需要注意的是:一次最多只能写入8个字节,如果操作多于8个字节,则写入的内容会被黑覆盖。下面为具体的程序。int PageWrite(char nAddr,char pBuf[]) { int i; int nTemp = 0xA0;//写命令 // 启动数据总线 I2C_START(); // 发送控制字节 I2C_TxByte(nTemp); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 发送地址字节 I2C_TxByte(nAddr); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 发送数据字节 for(i = 0; i < 8;i++) { I2C_TxByte(pBuf[0]); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; } // 停止总线 I2C_STOP(); return (nTemp & SDA); } 3.2.2读操作 24LC02B的读操作有3种形式:当前地址、随机读和顺序地读。当前地址读需要知道上次读操作后的地址,因此不具有操作独立性,这里不做介绍。下面对随机读和顺序读你好吗进行介绍。 随机读可以读任何地址的数据。首先由单片机发送一个控制字节,然后发送地址数据,最后读出该地址的数据。下面给出具体的程序。int ReadRandom(char nAddr, char *nValue) { //写命令 int nTemp = 0xA0; // 启动数据总线 I2C_START(); // 发送控制字节 I2C_TxByte(nTemp); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 发送地址字节 I2C_TxByte(nAddr); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; // 启动数据总线 I2C_START(); // 发送控制字节 nTemp = 0xA1; I2C_TxByte(nTemp); // 等待 ACK nTemp = I2C_GetACK(); if(nTemp & BIT3) return 0; //读取数据 *nValue = I2C_RxByte(); // 停止总线 I2C_STOP(); //成功返回 return 1; } 顺序读是连续读出多个字节。它的开始操作和随机读是一样的,在读完一个字节后,对24LC02B发送确认(ACK)信号,再继续下一个字节,当读到最后一个字节的时候,音片机需要在总线上产生停止信号,具体程序如下。 int ReadSeq(char nAddr, char nValue[], int nLen) { int i; int nTemp = 0xA0; //写命令 I2C_START();// 启动数据总线 I2C_TxByte(nTemp); // 发送控制字节 nTemp = I2C_GetACK();// 等待 ACK if(nTemp & BIT3) return 0; I2C_TxByte(nAddr); // 发送地址字节 nTemp = I2C_GetACK();// 等待 ACK if(nTemp & BIT3) return 0; I2C_START();// 启动数据总线 nTemp = 0xA1; I2C_TxByte(nTemp); // 发送控制字节 nTemp = I2C_GetACK();// 等待 ACK if(nTemp & BIT3) return 0; for(i = 0; i < nLen; i++)//读取数据 { nValue[i] = I2C_RxByte();//读一个字节数据 I2C_SetACK();//发送ACK } I2C_STOP();// 停止总线 return 1; //成功返回 } 3.3短消息程序设计 在本系统中,单片机通过串口0向GSM模块发送相应的AT命令来实现短消息的发送和接收。在介绍具体程序之前,首先简单介绍消息相关的AT命令。 3.3.1 AT命令介绍 AT命令是一套用于对GSM模块控制的命令,通常以“AT”开头。单片机通过向GSM模块的控制。不同的AT命令控制GSM模块的不同动作。通常情况下,AT命令以字母“AT”开头,以ASCII码为13的字符结尾。下面介绍几种常用的AT指令,下面的命令如果不做特殊说明,都是需要带ASCII码为13的字符结尾,如果不带,则会对该条命令进行说明。 同一般的有线MODEM一样,GSM模块的AT指令集支持标准的V.25ter指令集,也支持传真指令集。作为GSM模块,它支持满足规范GSM07.05 和GSM07.07的指令集。其中GSM07.07主要是短消息的应用,考虑到本章介绍的是短消息应用系统,这里只讨论GSM07.05指令集。GSM07.05指令集提供的AT命令主要实现短消息的发送、删除、存储等操作,下面对某些AT命令进行具体的介绍。 tc35 模块中与 SMS 有关的 GSM AT 指令介绍 GSM 引擎模块提供的命令接口符合 GSM07.05 和 GSM07.07 规范。GSM07.07 中定义的 AT Command 接口, 提供了一种移动平台与数据终端设备之间的通用接口;GSM07.05 对短消息作了详细的规定。在短消息模块 收到网络发来的短消息时,能够通过串口发送指示消息,数据终端设备可以向 GSM 模块发送各种命令。与SMS 有关的 GSM AT 指令如表(1) 所列。GSM AT 指令集,是由诺基亚、爱立信、摩托罗拉和 HP 等厂家共同为GSM 系统研制的,其中包含了对 SMS(Short Message Service)的控制。 表1 相关AT指令 AT指令功能详解: (1)短消息发送命令: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数据包里,具体的数据格式在后面进行详细说明。 (2)删除短消息命令:AT+CMGD (删除SIM卡内存的短消息) 该命令主要用于短消息的删除,因为一般手机的存储量或者SIM卡的存储量是有限的,因此有时需要删除已经阅读过的短消息。它具体提供两条指令,具体的指令格式如下。 AT+CMGD=? 响应为OK。该指令主要是用来进行测试的。 AT+CMGR=INDEX 该命令主要用来删除指定位置的短消息。如果删除成功,则响应为OK,如果删除失败,则响应为:+CMS ERROR:。 (3)阅读短消息命令: AT+CMGR 该命令主要用于阅读短消息的内容,它具体提供两条指令,具体的指令格式如下。 AT+CMGR=? 响应为OK。该指令主要用来进行测试。 AT+CMGR=INDEX 该命令主要用来阅读指定位置的短消息。如果操作成功,则响应为具体的短消息内容,针对TEXT模式和PDU模式,有不同的响应内容;如果操作失败,则响应变:+CMS ERROR:。关于短消息内容的解析在后面会进行详细介绍。 (4)选择消息格式命令:AT+CMGF 该命令主要用于设置短消息的格式,将短消息设置成TEXT格式或者PDU格式,它具体提供三条命令,具体的指令格式如下。 AT+CMGF=? 响应为OK。该指令主要用来进行测试。 AT+CMGF? 该命令主要用来读取格式。如果操作成功,则响应为+CMGF:OK。 AT+CMGF= 该命令主要用来设置格式。如果操作成功,则响应为+OK。当mode的值为“0”时,代表PDU格式;mode的值为“1”时,代表TEXT格式。 (5)短信中心设置命令:AT+CSCA 该命令主要用于设置短信中心,它具体提供三条命令,具体的指令格式如下。 AT+CSCA=? 响应为OK。该指令主要用来进行测试。 AT+CSCA? 该命令主要用来读取短信中心的地址。如果操作成功,则响应为+CSCA:OK。响应中的为短信中心的地址;用来表示为地址类型识别号,可以参照AT+CMGS命令中的含义。 AT+CSCA=,[] 该命令主要用来设置短信中心的地址。如果操作成功,则响应为+OK。为短信中心的地址;用来表示为地址类型识别号,可以参照AT+CMGS命令中的含义。 以上只列出了短消息操作的一些AT命令,其他AT命令就不再进行详细介绍了,具体可以参看AT命令手册。 3.3.2 短消息的设置 通过前面AT命令的介绍可知,由于短消息发送可以采用TEXT格式,也可以采用PDU格式,因此在发送短消息之前,需要设置短消息的格式。另外,也需要设置短信中心号码,下面为上体的程序。 1.短消息中心地址的设置 在短消息的发送过程中,源GSM终端将短消息发送到另外一个目的GSM终端,源GSM终端首先将短消息发送到短信中心,由短信中心再转发给目的终端,因此实现的机制是存储转发的机制,这样就必须要正确设置好短信中心的地址。下面为该部分程序的具体代码。 // 设置短信中心地址 int setCsca(char pBuf[],char phone[]) { int offset; int i; pBuf[0] = 'A'; pBuf[1] = 'T'; pBuf[2] = '+'; pBuf[3] = 'C'; pBuf[4] = 'S'; pBuf[5] = 'C'; pBuf[6] = 'A'; pBuf[7] = '='; pBuf[8] = '"'; offset = 9; for(i = 0;i < 14;i++) { pBuf[offset + i] = phone[i]; } offset += 14; pBuf[8] = '"'; offset += 1; pBuf[offset] = ','; offset += 1; pBuf[offset] = '1'; offset += 1; pBuf[offset] = '4'; offset += 1; pBuf[offset] = '9'; offset += 1; pBuf[offset] = 13; offset += 1; return offset; } 在该程序中,封装的数据为“AT+CASC=“+8613800230500”,149”这样的数据,函数返回的是数据包的长度。命令中的参数必须是字符形式;命令中的短信中心地址必须为“+863800230500”这样的格式;命令中的“149”为地址识别号,这里地址信息中使用了“+”,因此识别号为“149”。 2.短消息格式的设置 在发送短消息时,需要选择短消息的格式,短消息的格式有TEXT和PDU两种格式。 下面为具体的程序。 //设置短消息格式 int setCmgf(char pBuf[],int format) { pBuf[0] = 'A'; pBuf[1] = 'T'; pBuf[2] = '+'; pBuf[3] = 'C'; pBuf[4] = 'M'; pBuf[5] = 'G'; pBuf[6] = 'F'; pBuf[7] = '='; pBuf[8] = (char)('0' + format); pBuf[9] = 13; return 10; } 在该程序中,封装好命令“AT+CMGF=n”(n的值为0或者1)后,函数返回的是数据包的长度。当n的值为0时,格式为PDU格式;当n的值为1时,格式为TEXT格式。 通过上面的程序也可以看出,对于短消息的处理,主要是针对相应的AT命令将数据进行封装的,具体的数据发送和接收则由串口发送中断服务程序和串口接收中断服务程序完成。 3. 发送短消息 通过前面AT命令的介绍可知:短消息可以是按照TEXT模式或者PDU模式发送,具体采用哪种模式发送短消息,需要根据系统的需要来决定。另外,也要取决于GSM模块支持的具体格式,有的GSM模块只支持TEXT模式,有的GSM模块只支持PDU模式,也有的GSM模块两种模式都支持。 在此,将对这两种模式进行介绍。基于TEXT模式的发短信代码实非常简单,实现起来也十分容易,只要将电话号码和发送内容封装好即可,但最大的缺点是不能收发中文短信;而 PDU 模式不仅支持中文短信,也能发送英文短信。基于PDU模式的实现要稍微复杂一点,由于PDU数据包有具体的帧结构,因此必须按照PDU数据包的格式进行封装数据。下面先分析PDU数据包的帧结构,因此必须按照PDU数据包的格式进行封装数据。下面先分析PDU数据包的帧结构。如表2所示为PDU数据包的帧结构。 表2 PDU数据包的帧结构 SMSC PDU类型 MR DA PID DCS VP UDL UD 在PDU数据包的帧结构中,“SMSC”字段为短消息中心的地址;“PDU类型”指明数据包的类型;“MR”协议识别号;“DCS”为短消息的编码格式。对于数字或者字符采用编码值为“00”,如果内容是汉字,则采用的编码值为“08”,采用的是“UNICODE”编码方式。在该系统中采用的字符编码方式为:“VP”表示短消息的有效时间;“UDL”表示数据内容的长度;“UD”为具体的短消息的内容。这里需要强调的是:在PDU数据包里面,所有的数字是以字符形式发送的。 根据前面介绍的短消息发送的AT命令可知:首先发送头信息,然后必须等待TC35模块的响应,当响应为“>”时,则继续发送具体的内容数据。其流程图如下图3.2。 图3.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 位十六进制数。 北京经纬星航科技发展有限公司 www.jingweigps.com E:信息类型,2 位十六进制数。 F:被叫号码长度,2 位十六进制数。 G:被叫号码类型,2 位十六进制数,取值同 B。 H:被叫号码,长度由 F 中的数据决定。 I:协议标识,2 位十六进制数。 J:数据编码方案,2 位十六进制数。 K:有效期,2 位十六进制数。 L:用户数据长度,2 位十六进制数。 M:用户数据,其长度由 L 中的数据决定。J 中设定采用 UCS2 编码,这里是中英文的 Unicode 字符。 4.短消息接收和处理(包括短消息的删除和接收) 根据前面对短消息读取AT命令的分析可以看出,短消息的接收主要饰物三个步骤:首先发送读取短消息的命令;然后GSM模块返回响应;最后对响应进行解析得到短消息的内容。在分析响应数据时,根据采用的是TEXT模式还是PDU格式,其分析程序也会不同。 一般来说,手机的存储量或者SIM卡的存储量是有限的,因此需要删除已经阅读过的短消息。短消息的删除操作主要是通过发送删除的AT命令,前面已经介绍过,在此不再详述。 短信接收、处理流程的流程图如图3.3所示. 图 3.3短信接收、处理流程的流程图 3.4信息采集控制程序设计 模拟量采集模块主要是单片机通过A/D通道采集来自传感器的信号,并将信号进行处理。MSP430F149的A/D转换有几种模式,比如序列通道单次转换、序列通道多次转换。考虑到有8路采集,因此选用序列通道单次转换,当然也可以采用序列通道多次转换,关于转换模式的选择主要设置相应的A/D转换的寄存器来实现。数据采集的时间间隔则通过定时器A来完成,就是在每次定时器A中断到来时读取A/D采集得到的数据,在读数据之前先停止A/D 转换,当读取数据完毕后启动A/D转换,如果得到数据,则设置一个标志位通知主程序,告诉主程序已经得到新的数据。整个模块采用中断服务程序的结构。如图3.4所示为该模块的程序流程图。该模块主要涉及A/D转换和定时器A的操作。 图3.4 信息采集软件流程 总结 经过一年左右的分析、研究、设计和调试,本次毕业设计最终实现了一套比较完整的基于 GSM 短消息的远程控制系统。 本系统着眼于建立一个基于 GSM 短消息方式的远程控制平台,能够实现控制中心站与远程控制分站的 GSM 远程通信。在详细分析研究 GSM网络协议和短消息通信原理的基础上,给出了系统的大体框架,设计了短消息通信软件。同时给出了远程控制分站部分的硬件结构方案,设计了基于 MSP430 系列单片机的远程控制分站子系统,实现了对控制对象的数据采集和处理功能,并通过 GSM 通信模块 TC35 与控制中心站通信。 最终设计出来的系统分为控制中心站和远程控制分站两大部分。控制中心站能够成功接收远程控制分站的控制数据并且保存在数据库当中,根据需要还可随时调用和打印出来,同时也能实时控制远程控制对象的状态,还可以通过发送短消息的方式发送设置命令给远程控制分站。 同时将本系统与温度检测相结合,成功地实现了基于 GSM 的远程温度控制。研究结果表明,将 GSM 短消息方式应用于控制系统是切实可行的,基于 GSM 短消息的远程控制系统具有其他一些控制系统无法比拟的优势,因此该系统的广泛应用将指日可待。由于作者水平有限,同时又由于时间和费用的限制,本系统很多细节方面的开发还有很多不能够做到非常完美。这套系统整个研发过程都局限在实验室中,没能够在工业现场中进行运行调试,同时随着通信系统的进步和发展,以后将对这一系统升级和更新,采用更为先进和完善的 GPRS网络进行数据传输是将来的努力方向。 致谢 参考文献 (1)MSP430单片机常用模块与综合系统实例精讲 秦龙 编著 电子工业出版社 2007.7 (2)MSP430系列16位超低功耗单片机原理与应用 沈建华 杨艳琴 翟骁曙 编著 清华大学出版社 2004.11 (3)通信原理(第六版) 樊昌信 曹丽娜 编著 国防工业出版社 2009.5 (4)综合电子系统设计与实践 藏春华 邵杰 魏小龙 编著 北京航空航天大学出版社 2009.11 〔5〕裘岚,张晓芸等译,C语言程序设计实用教程,电子工业出版社,北京,2001.7. (6)樊天晴,Internet信息终端技术的研究,西北工业大学,硕士学位论文,2002. (7)魏小龙,璐P430系列单片机接口技术及系统设计实例,北京航空航天大学出版社,北京,2002.11. 附件 附件一:系统总电路图 袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈 芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈 � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� � EMBED \* MERGEFORMAT ��� - 40 - - 44 - _1234567893.vsd _1234567895.vsd _1234567897.vsd _1234567899.vsd _1234567900.vsd _1234567898.vsd _1234567896.vsd _1234567894.vsd _1234567891.vsd MSP430F149 TC35模块 串行存储器 继电器组 传感器组 电源及复位模块 GSM网络 _1234567892.vsd TC35模块 PC机 RS232 GSM网络 手机终端 终端 _1234567890.vsd 图1.1 方案框图
本文档为【基于TC35模块的GSM远程智能家居控制系统的设计_毕业设计_好】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
北溟愚鱼
暂无简介~
格式:doc
大小:4MB
软件:Word
页数:0
分类:工学
上传时间:2018-09-23
浏览量:9