tc35i程序

合集下载

基于TC35i的智能家居系统设计

基于TC35i的智能家居系统设计

基于TC35i的智能家居系统设计摘要本文提出了一种基于tc35i的低成本的可远距离控制的智能家居控制系统设计方案。

该系统以51单片机为中央处理单元,结合gsm通信模块实现家居系统的智能管理及远程控制。

关键词智能家居;单片机;gsm;tc35i中图分类号tp2 文献标识码a 文章编号1674-6708(2010)30-0255-020 引言利用gsm服务可以方便实现诸如住户防火、防盗以及家用电器远程控制等功能。

利用gsm移动通信通用模块tc35i结合51单片机可实现低功耗、高可靠性、高性价比的远距离智能家居控制。

1 总体原理介绍如图1所示,本智能家居控制系统是51单片机为核心处理器,首先将采集后的家居环境信息、安防信号、家电运行状态,经处理器将数据处理后,输出到lcd上,实现直接监控。

同时,将以上信息进行编码打包,通过tc35i通讯模块,在需要查询或异常的情况下,将信息送到预先设置好号码的手机上,以此实现用户对于家统实现远程的检测与控制。

具体包含以下功能:1)家庭环境监测及控制。

通过数字温度湿度传感器采集室内外温度湿度信息,缓存在单片机内,采用自动货远程控制的方式,启动货关闭继电器,控制空调或加湿器开关,使其能自动工作,保持室内环境的舒适。

2)安防报警。

在设防状态下,通过门磁开关,热释电传感器,烟雾传感器,二氧化碳传感器等传感器,采集室内安防信息,出现意外时自动发送报警信息到预设的用户手机上。

3)红外家电控制。

通过短信或拨号方式远距离控制单片机,由单片机控制红外发射单元,产生与家电遥控器相同的红外编码,来控制家电的运行。

2 硬件设计2.1 中央处理单元结合系统要实现的功能和性价比采用目前性能稳定、价格低廉的at89s52。

该处理器控制简单,功能丰富,含有8k字节flash,256字节ram,32位i/o口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

基于GSM模块的TC35i外围电路设计

基于GSM模块的TC35i外围电路设计

、l 口 】 l l 口 n 】
埘 I-i ¨ 7
【【 N

I¨ 自%-
【【 【【 【【 【N1 .
【【l 、【【l_【 t 【【l h
T一十 H】H …
… 1
第 6 期






的 S 接 口。 为 了 适 合 外 部 的 S 接 口. 接 口连 接 到 主 接 M M 该 口 f I连 接 器 ) 在 ( ZF 。 l l S 卡 预 留 5 引 脚 的 基 l为 M L 个 础 上 . C 5 t I 连 接 器 上 为 S 卡 接 口 预 留 了 6 引脚 . T 3i ZF M 个
的 默认 配 置 为 Vo ' H — S 一 3 / l 【 持 话 筒 . l n H a o I 0 3vL ,手 】 语
的正常运行 。设计 电路 时. 在麦克风 、 耳机 、 以及手 持听筒 的 插 孔 处都 接 有 电感 。 此外 . 虑 到 静 电保 护 的 因 素 . 有 语 音 考 所

自 自 自 自 I 】埘 i 自 一 自 I 自
3 H 1 X
I 誉
一十 自 Z l 3 k ・ 3
Ⅲm ± 一 Ⅲ

… /5 33k I 8 ) 1 ± 5 自- 【 g Z 日 【
电平 转 换 及 串 口通 信 功 能 。
TI 司 的 MA 2 8 片 供 电 电 压 为 3 5 5 , 合 公 X33 芯 ~ V符
TH 厄 H 一 2 2 和 IJv 2 标 准 。 具 有 独 特 的 ± 1 V 人 3 一F I 8 l 5 K
兼容 5 v逻辑输入. 内含 3 接收、 路发送 路 5 所添加 的 (: :l 脚用 来 检测 S 卡 支架 中是否 插 有 S ( N引 M M 体静 电保护措施. 最大 数据传 输速率 可达 2 0 h 该芯片 的 5 I k 卡 。 当插 入 S 卡 . 引脚 置 为 高 电平 . 统 方 可 进 入 正 常 工 串行通信接 口. M 该 系

TC35i在远程压力监控系统中的应用

TC35i在远程压力监控系统中的应用

0 引 言
管道 压力检测装置 一般 安装 在偏僻 的地 方 , 易 不 检测和 发 现 异 常。本 文 设 计 的 压 力 检测 系 统 , 用 利 T 3i C 5 通信模块 , 于移动 公 司的 G M 网络 的短信 功 基 S 能实现远 程压 力监 测 。G M 系 统是 目前 基 于 时分 多 S 址 技术的移动通 信体制 中比较成熟 、 完善 、 用最广 泛 应
维普资讯
T 3i C 5 在远程压力监控 系统 中的应用

烨。 等
T 3 i 远 程 压 力 监 控 系统 中的应 用 C5 在
Ap l a in o C 5 n R mo e P e s r pi t fT 3 i e t rs ue Mo i r g S s e c o i nt. e e yt o bns i l a Psi yt ( P ) n h t e t xl ie o t hw s e om neis be n i l Whnt s m cm i t Go l ot nSs m G S i te u r-h ep s is i f st ea e hs e e w h b io e fu e o v p n
wi e p e i l c td t f r moe s nf a tp a t a ot ie s l b rc s yl ae .I of s r i i c n r ci lw r n s . l e o e g i c h
Ke wo d y r s: T 5imo ue AT isr cin S otme sg evc S n l hp c mp tr C3 d l n tu t h r s a e s rie o i gec i o ue
文 献标识 码 :B

基于TC35i公交站信息显示系统设计

基于TC35i公交站信息显示系统设计
图 3 示。 所
10B 以内 , 满 足公 交 站 信 息 显示 的要 求 。短 4 能
消息业 务用 于公 交 站信 息 显示 的最 大 优点 在 于 ,
其无需 建立连 接 , 服务费用 低 。
1 硬件电路设计
系统 整 体 硬 件 设 计 由 电源 电路 TC 5 接 口 3i 电路 和单 片机系 统 电路 等 组 成 , 硬件 结 构 示 意 图
单 片 机 系 统 电 路 如 图 4所 示 , 统 采 用 系 S C 9 5 6 D+作 为 主 控 芯 片 [ 。芯 片 内 部 设 T 8C 1R 4 ]
维普资讯
18 O
交通与计算机
20 0 8年第 3 期
第2 6卷
总 12期 4
基 于 TC 5 公交 站信 息 显 示 系统设 计 3i
许伦 辉 刘风磊 眭相 林
( 西 理 工 大 学 赣 州 3i C 5 的公交站信息显示 系统的整体设计 。分析 了系统硬件 电路 , T 3 i 对 C 5 接
O 引 言
公交 站信息 显示 系统可 以动态 显示公 交 车到 站所需 的 时 间 并 提 供 多 种 温 馨 提 示 。在 基 于
单 片机 系统提供 电源[ 。TC 5 模 块输 入 电压 范 3i 围为直流 3 3 . 发 射状 态所 需平 均 电流 约 . ~4 8V, 为 3 0mA , 峰 值 电流 达 到 2 5A。选 用 的稳 0 但 . 压芯 片 的输 出电 流一 定 要 大 于 2 5A・ . 否则 模 块 不 能正 常工作 。系统 电源 的输 入 为 1 直 流 输 2V
引脚用来 检 测 SM 卡是 否插好 , 设计 中此 引脚 I 本
没有联 接 , 默认 S M 卡 已经插 好 。 I

TC35i模块详细资料

TC35i模块详细资料

TC35i模块详细资料目前,国内已经开始使用的GSM 模块有Falcom的A2D系列、Wavecome的WMO2系列、西门子的TC35系列、爱立信的DM10/DM20系列、中兴的ZXGM18系列等,而且这些模块的功能、用法差别不大。

其中西门子的TC35系列模块性价比很高,并且已经有国内的无线电设备入网证。

所以本设计选用的是西门子TC35系列的TC35i。

这是西门子推出的最新的无线模块,功能上与TC35兼容,设计紧凑,大大缩小了用户产品的体积。

TC35i是一个支持中文短信息的工业级新版西门子GSM模块,与GSM的2/2+兼容、工作在EGSM900和GSM1800双频段,采用RS232数据接口、符合GSM0707和GSM0705ETSI标准,且易于升级为GPRS模块。

它可传输语音和数据信号, 功耗在EGSM900(4类)和GSM1800(1类)分别为2W和1W。

该模块集射频电路和基带于一体,为用户提供标准的A T命令接口,为数据、语音、短消息和传真提供快速、可靠、安全的传输,方便用户的应用开发及设计。

TC35i主要特性与技术指标包括以下几点:①频段为双频GSM900MHz 和GSMl800MHz (phase2/2+);②②支持数据、语音、短消息和传真;③高集成度(54.5mm × 36mm × 3.6mm);④质量为9g;⑤电源电压为单一电压3.3~4.8 V;⑥可选波特率300bps~115kbps,动波特率 4.8~115kbps;⑦电流消耗:休眠状态为3.5mA,空闲状态为25mA,发射状态平均为300mA,峰值2.5A;⑧⑧温度范围:正常操作-20℃~+55℃,存放-30℃~+85℃;⑨⑨SIM 电压为3V/1.8V。

TC35i硬件设计:TC35i的硬件图:TC35i模块有40个引脚,通过一个ZIF(Zero Insertion Force,零阻力插座)连接器引出。

这40个引脚可以划分为5类,即电源、数据输入/输出、SIM卡、音频接口和控制。

基于TC35i模块的呼救中心终端系统的设计

基于TC35i模块的呼救中心终端系统的设计

基于TC35i模块的呼救中心终端系统的设计揭琳锋;奚海庭;王志誉【摘要】利用GSM网络搭建呼救平台是一种行之有效有效的方法,其覆盖面广,安全保密性高,且不需要组建专用网络和进行维护.研究开发了一套基于TC35i GSM 模块的呼救中心终端系统,给出了一套完整的软硬件解决方案,实现了信息接收和处理等功能.该系统扩展性好,使用方便和快捷,为进一步建立事故呼救中心基站平台奠定了基础.%It is an effective way to use GSM networks to construct distress alert platform, for it has wide coverage, high safety secrecy and does not need to build special networks and carry out maintenance. In this paper we develop a set of terminal-systems for distress alert centre based on TC35i GSM module, and propose a complete set of hardware and software solutions, which achieves the functions of information receiving and processing. The system is good in scalability, convenience and facile in use, it lays a foundation for further establishing the base station platform of distress alert centre for accidents.【期刊名称】《计算机应用与软件》【年(卷),期】2011(028)002【总页数】3页(P176-178)【关键词】TC35i;呼救中心;串行通信;GSM【作者】揭琳锋;奚海庭;王志誉【作者单位】南昌大学机电工程学院,江西,南昌,330031;南昌大学机电工程学院,江西,南昌,330031;南昌大学机电工程学院,江西,南昌,330031【正文语种】中文0 引言随着社会经济的发展和人民生活水平的不断提高,人们对防盗呼救、老年人、残障人士和儿童等弱势群体呼救,车辆事故呼救、危险作业呼救等提出远程呼救、无线呼救的要求。

基于TC35i的远程温度监测系统设计

基于TC35i的远程温度监测系统设计

基于TC35i的远程温度监测系统设计1 引言随着科技的发展和自动化水平的提高,温度的自动监测已经成为各行各业进行安全生产和减少损失采取的重要措施之一。

特定场合下由于监测分站比较分散、偏远,采用传统的温度测量方式周期长、成本高,而且测量员必须到现场进行测量,因此工作效率非常低。

且不便于管理。

本文提出了基于GSM的远程温度监测系统,采用美国Dallas公司生产的DSl8820数字温度传感器,通过现有的GSM网络将监测结果以短信方式发送至相应的监控终端(如手机、PC机)。

系统具有结构简单、可靠性高、成本低等特点,可广泛应用于桥梁混凝土测温、油气井场、电力电缆火灾监测、粮仓及物资仓库温度监测。

2 远程温度监测系统硬件设计2.1系统构成系统分为监测中心站和远程监测分站两部分:监测中心站主要由监测中心站服务器、GSM无线通信模块、数据库系统及其应用软件组成;远程监测分站主要由AT89C52单片机及外围电路、温度传感器和GSM无线通信模块(TC35i)组成。

监测中心控制GSM无线通信模块收发短消息,接收各监测分站采集的温度数据,然后对数据进行显示、处理和打印等。

远程监测分站实现温度数据的采集、处理和显示。

同时控制GSM无线通信模块收发短消息。

监测中心站与远程监测分站之间通过GSM网络实现无线远程通信。

实现了基于GSM网络的远程监测系统。

系统总体结构如图1所示。

2.2单片机外围电路设计该系统的MCU采用Atmel公司生产的AT89C52单片机。

它是一种低电压、低功耗、高性能的CMOS 8位单片机,片内含8 kB可反复擦写的程序存储器和256 B的数据存储器。

单片机外围电路除了包括单片机正常工作所必须的元件外,还包括键盘、LED显示电路及看门狗电路等,系统硬件电路原理图如图2所示。

按键用于对终端进行参数设置。

4位LED显示器可以显示现场的温度数据。

方便相关人员现场读取。

为了实现可靠的复位信号,并且能在计算机受到干扰,程序不能正常运行时自动产生复位信号。

基于TC35I的汽车智能报警控制系统设计

基于TC35I的汽车智能报警控制系统设计

中外教 育研 完 ・
21 0 0年 1 月 N 1 1 O. 1
基于 T 3 I C 5 的汽车智能报警控制 系统设 计★
凌 杰 陆培 民 福 州大学物理 与信 息工程 学院
【 摘 要 】 文综 合分 析 了现 有汽 车报 警 系统 的优缺 点 ,设 计 了一种 采用 A 8 S2单 片机 为主 控制器 、基 于 GS 无 线通信 技 术 本 T95 M 的汽车 报警控 制 系统。 本 系统结合 振 动传感 和 热释 红 外传感 采集 报警 信息 ,通 过单 片机对 采 集 的信 息进 行分 析处 理 ,对 不 同 的信 号采 取 不 同的报警 策略 ;又 由于 系统使 用 了 T 3 I 门子 GS 通信 模块 ,从 而使该 系统突破 了距离 的 限制 ,并 具有 了双 向控 制功 能。 C 5西 M
【 关键词 】 T 9 5 G M 通信 传感技术 报警控制 A 8S2 S 【 中图分类号 】 6 . U436 【 文献标识码 】 A 【 文章编号 】10 — 62( 00)l —02 —0 0 6 9 8 2 1 1 00 3
【 btat C m r es eaa s fh d atgs n i d at e f e xsn a a r ss m, ei e cnrlr s g A s c 】 o pe ni nl io e vnae adds vna s iigcr lm t ds n da ot l i r h v பைடு நூலகம்s t a a g ot e t h a y e g oeu n
I ywo d AT 9 5 GS c mmu iain S nigtc n lg Alr c nr l r s】 8 S 2 Ke M o nc t e s h oo y o n e am o t o
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include<reg51.h>#include<string.h>#include<stdio.h>#define Buf_Max 200 //缓存长度200#define Delay_Time 3000 //延时长度sbit LED1 = P2^0; //状态指示灯1sbit LED2 = P2^1; //状态指示灯2sbit LED3 = P2^2; //状态指示灯3sbit LED4 = P2^3; //状态指示灯4sbit relay = P1^6; //继电器sbit a = P0^1; //按键1,拨打电话sbit b = P0^3; //按键2,挂断电话sbit c = P0^5; //按键4,发送一条英文短信息sbit d = P0^2; //按键5,发送一条中文短信息char code num[]="183********F"; //定义要拨打的电话号码,拨打其它电话在这时修改c har code sms[]="6E295EA6FF1A003300350043"; //"温度:35C"的Unicode码,发送其它中文,可在这里修改char code str3[]="AT+CSCS=GSM\n"; //定义字符串3char code str4[]="AT+CSMP=17,16 7,0,8\n"; //定义字符串4char code str5[]="AT+CMGS="; //定义字符串5char code str 6[]="0891683108200805f011000D9168"; //定义字符串6char code str7[]="000800"; //定义字符串7sbit IGT = P2^4; //点火信号unsigned char i = 0; //定义缓存指针unsigned char Rec_Buf; //定义缓存数组void Serial_Init(void); //声明串口初始化函数void Send_ASCII(unsigned char *b); //声明发送字符(ASCII码)函数void Delay_ms(unsigned int time); //声明延时函数vo id CLR_Buf(void); //声明清除缓存内容void Send_Hex(unsigned char b); //声明发送字符(十六进制)函数bit Hand(unsigned char *a); //声明判断缓存中是否含有指定的字符串函数void GSM_Call(unsigned char *num); //声明拨打指定电话函数void GSM_init ();void GSM_Hang();void GSM_Sent_PDU_Message(char num[],char sms[]);/**********************************主函数******************************/void ma in(void){ GSM_init(); //初始化串口 while(1){ if(a==1){Delay_ms(20);if(a==1){ De lay_ms(20);EA=0;ES=0;TI=1;GSM_Sent_PDU_Message(num,sms);//发送指定短信Delay_ms (50);EA=1;ES=1;TI=0;} }if(b==1){Delay_ms(20);if(b==1){ Delay_ms(20);GSM_Hang(); //挂电话EA=1;ES=1;TI=0;} }if(c==1){Delay_ms(20);if(c==1){ Delay_ms(20);EA=0;ES=0;TI=1;GSM_Call(num);//拨打电话} }if(strstr(Rec_Buf,"+CMTI")!=NULL) //若缓存字符串中含有"+CMTI"就表示有新的短信{CLR_Buf(); //清除缓存内容Delay_ms(Delay_Time); //延时Send_ASCII("AT+CMGR=1"); //发送读取信息指令 Send_Hex(0x0d); //发送回车符 Send_Hex(0x0a); //发送换行符D elay_ms(Delay_Time); //延时 while(!Hand("OK")); //等待设置成功//LED2 = 0; //点亮设置成功指示灯if(strstr(Rec_Buf,"7EE7753556685F00")!=NULL) //如果信息内容是"继电器开" relay = 0; //继电器打开 else if(strstr(Rec_Buf,"7EE7753556685173")!=NULL) //如果信息内容是"继电器关" relay = 1; //继电器关闭CLR_Buf(); //清除缓存内容 Delay_ms(Delay_Time); //延时Send_ASCII("AT+CMGD=1"); //删除读取后的信息Send_Hex(0x0d); //发送回车符 Send_Hex(0x0a); //发送换行符De lay_ms(Delay_Time); //延时while(!Hand("OK")); //等待设置成功CLR_Buf(); //清除缓存内容} }}void GSM_init()//GSM模块初始化{IGT=0; Delay_ms(1000); //延时 IGT=1; Serial_In it(); //初始化串口CLR_Buf(); //清除缓存内容 Delay_ms(60000); //延时 while(!Han d("OK")) //判断是否握手成功,如果不成功延时一会,再发送AT握手指令{Send_ASCII("AT "); //发送联机指令 Send_Hex(0x0d); //发送回车符 Send_Hex(0x0a); //发送换行符De lay_ms(60000); //延时}CLR_Buf(); //清除缓存内容//LED1 = 0; //点亮握手成功指示灯Delay_ms(Delay_Time); //延时 Send_ASCII("AT+CPMS=\"MT\",\"MT\",\"MT\"");//所有操作都在MT(模块终端)中进行Send_Hex(0x0d); //发送回车符 Send_Hex(0x0a); //发送换行符Delay_ms(Delay_Time); //延时while(!Hand("OK")); //等待设置成功CLR_Buf(); //清除缓存内容//LED2 = 0; //点亮设置成功指示灯Delay_ms(Delay_Time); //延时Sen d_ASCII("AT+CNMI=2,1");//设置当有新短信到来时提示 Send_Hex(0x0d); //发送回车符Send_Hex(0x0a); //发送换行符Delay_ms(Delay_Time); //延时while(!Hand("OK")); //等待设置成功CLR_Buf(); //清除缓存内容//LED3 = 0; //点亮设置成功指示灯Delay_ms(Delay_Time); //延时Send_ASCII("AT+CMGF=0"); //文本(pdu)模式 Send_Hex (0x0d); //发送回车符Send_Hex(0x0a); //发送换行符Delay_ms(Delay_Time); //延时wh ile(!Hand("OK")); //等待设置成功CLR_Buf(); //清除缓存内容//LED4 = 0; //点亮设置成功指示灯Delay_ms(Delay_Time); //延时Send_ASCII("AT+CMGD=1"); //删除第一条信息Send_Hex (0x0d); //发送回车符 Send_Hex(0x0a); //发送换行符Delay_ms(Delay_Time); //延时w hile(!Hand("OK")); //等待设置成功CLR_Buf(); //清除缓存内容LED1 = 0; //点亮设置成功指示灯}void Serial_Init(void)//串口初始化函数{ SCON = 0x50;//串口:方式1,允许发送和接收 TMOD = 0x20;//定时器1:模式2,8位自动重装模式,用于产生波特率 TH1 = 0xFD; //11. 0592MHZ晶振,波特率为9600 TL1 = 0xFD; TR1 = 1; //开启定时器1 ES = 1; //开启串口中断 EA = 1; //开启全局中断}void Serial_Int() interrupt 4 //串口中断处理函数{ES = 0; //关串口中断,防止中断嵌套if(TI) //如果是发送中断,则不做任何处理{TI = 0; //清除发送中断标志位}if(RI) //如果是接送中断,则进行处理{RI = 0; //清除接收中断标志位Rec_Buf[i] = SBUF; //将接收到的字符串存到缓存中i++; //缓存指针向后移动if(i>200) //如果缓存满,将缓存指针指向缓存的首地址{i = 0;}}ES = 1; //开启串口中断}void Send_ASCII(unsigned char *b) //发送字符(ASCII)函数 { ES = 0; //关串口中断for (b; *b!='\0';b++) { SBUF = *b; while(TI!=1); //等待发送完成TI = 0; //清除发送中断标志位} ES = 1; //开串口中断}void Delay_ms(unsigned int time) //time ms延时函数{ unsigned char j; for(;time>0;time--) { j = 1500; while(j--); }}void CLR_Buf(void) //清除缓存数据函数{unsigned char k; for(k=0;k<Buf_Max;k++) / /将缓存内容清零 {Rec_Buf[k] = 0;} i = 0; //接收字符串的起始存储位置}void Send_Hex(unsigned char c) //发送字符(十六进制)函数 { ES = 0; //关串口中断SBUF = c; while(TI!=1); //等待发送完成 TI = 0; //清除发送中断标志位ES = 1; //开串口中断}bit Hand(unsigned char *a) //判断缓存中是否含有指定的字符串函数{ if(strstr(Rec_ Buf,a)!=NULL) return 1;elsereturn 0;}void GSM_Sent_PDU_Message(char num[],char sms[]) //发送指定短信到指定号码{ unsi gned char i; printf("%s",str3); //使用GSM字符集 Delay_ms(1000); LED2=0; printf ("%s",str4); //设置PDU模式参数,8为使用Unicode编码 Delay_ms(1000); LED3=0; pri ntf("%s",str5); printf("%d\n",strlen(sms)/2+15); //字节长度,与实际短信内容长度有关 Delay_ms(1000); LED4=0; printf("%s",str6); //一开始发送的字符,包括短信中心号码等,这部分一般都是固定不变的,可以不用管它 //strcat(num,"F"); //在接收端号码后面补F,使之成为12位字符 for(i=0;i<6;i++ //然后再两位两位分别调换位置 { print f("%c%c",num[2*i+1],num[2*i]); } printf("%s",str7); //固定字符 printf("%02x",st rlen(sms)/2); //中文短信内容字数 printf("%s\x1a",sms); //发送内容的Unicode编码字符串+(CTRL+Z) Delay_ms(1000); LED2=1;LED3=1;LED4=1;}void GSM_Call(unsigned char *num) //拨打电话{ printf("ATD"); printf("%s;\n",nu m); Delay_ms(100); LED2=0;}void GSM_Hang(void) //挂断电话{ printf("ATH\n"); Delay_ms(100); LED2=1;}。

相关文档
最新文档