基于短信回传的温度监测节点设备设计_毕业论文(编辑修改稿)内容摘要:

码用于发送普通 Ascill 字符,如英文和数字, 8bit 编码通常用于发送数据信息,如图片和铃声,而 16bit 编码用于发送 Unicode 字符,如中文和英文。 三种编码可以发送长度分别为 160,14,和 70. 发送中文短信具体步骤如下: 1GB2312 编码到 Unicode 编码转换 2Unicode 编码到 16bit 编码转换 注意 这个转换过程中 Unicode 编码最开始的 0xffff 标记要去掉,在 0xffff之后内容才是真正的 Unicode 字符。 Unicode 是双字节。 如果系统是小端字节序,则存储时,先存地位再高位。 如果是大端节序,就不需要转换了。 而且,请注意在 PDU 格式中, TYPE、TPMR、 TPPID、 TPVP 分别设置为 1 00、 00、 0 01(以上均为 16 进制数)。 形成标准的发送包 发送短信编码格式为:服务中心地址、 PDU 类型、接收方地址、协议识别码、数据译码方案、有效周期、用户数据长度、用户数据。 接收短信编码格式为:服务中心地址、 PDU 类型、发送方地址、协议识别码、数据译码方案、 服务中心收到消息时间、用户数据长度、用户数据。 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 9 系统加电后,为使 TC35 进入工作状态,必须给 IGT 加以延时大于 100MS 的低脉冲,电平下降持续时间不可超过 1MS。 启动后, IGT应保持高电平( 3V)否者 TC35 不会正常工作。 IGT电平控制是通过单片机 I/O 控制的。 PC 系列微机串行口 RS232 为标准接口,这与 TC35 末班接口不一致,他们之间转换采用 MAX232 接口芯片来完成。 要发送 “你好 ”到手机 15828591132,通过串口调试助手发送过程如下: 1,AT+CMCS=0190x0D 019 为数据内容的 字节数 2,等待返回的 ASCII 字符: “” 3,输入数据 00 11 00 0D 91 68 3187173910F1 00 08 A7 04 4F60597D 0x1A 表 2:数据说明 数据 含义及其说明 00 SMSC 长度, 00 代表使用 SIM 卡中存入的号码 11 文件的头字节,默认为 11 00 信息类型,默认为 00 00 号码长度(号码为 15828591132) 91 号码类型 68 中国国际区号 3187173910F1 号码编辑,经过位移处理 00 协议 标识 08 Unicode 编码模式 A7 短消息有效期 04 短消息数据长度 4F60597D 汉字 “你 ”“好 ”编码 1A 结束符 PDU 数据格式分析 当来一条短消息时,通过串口调试助手可以看见显示 +CMTI:“ME”, 17。 接收此条短消息使用接收指令 AT+CMCR=17CR.可以阅读短信内容为 08 91 683108701305F0 04 0D 91 68318637404F1 00 08 701130320xx223 04 4F60597D 表 3:数据说明 数据 含义及说明 0B 地址 信息的长度 91 SMSC 地址格式 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 10 683108701305F0 SMSC 地址,补 F 凑成偶数 04 基本参数 0D 恢复地址数字个数,共 13 个十进制数 91 回复地址格式 68318637404F1 回复地址,补 F 凑成偶数 00 协议标识 08 用户信息 Unicode 编码方式 701130320xx223 时间 04 用户信息长度,长度为 4 字节 4F60597D 用户信息, “你好 ” PDU 数据格式分析 短消息收发系统由 GSM 通信模块、用户手机、 PC 机、单片机系统等组成。 如图 1。 GSM 通信模块由 TC35 模块及其外围电路组成,图 2 为 TC35 模块及其外围电路。 AT 指令 系统主要的任务是监测被控对象的温度.然后通过 TC35i发送到监测中心(手机)。 系统软件设计的重点在于单片机的编程。 向 TC35i写入不同的 AT 指令完成多种功能。 单片机对 TC35i 所有的控制都是通过串口发送 AT 指令进行的, TC35i 的每一个动作都对应了一个 AT 指令,而且每一个指令之后都要有一个回车符以告诉 TC35i该条命令已经发完。 一些常用的 AT 指令下表。 表 4: 常用 AT 指令表 ASCI 码指令 功能 手机回答 AT 回 车 握手 OK ATE 简化显示 OK AT+CMGR=X 回车 读取第 X 条短信 短消息内容 AT+CMGF=1 回车 用 TEXT 格式 AT+CMGF=1 回车 AT+CMGD=X 回车 删除第 X 条短信 AT+CMGD=X 回车 AT+CMGS=6 回车 发送短消息的字节数 AT+CMGS=6 回车 AT+CNMI=1,1,2 设置收到短消息提示 OK +CMTI: “SM”, 4 4 表示手机内短消息数量 AT+CSCA 短信服务中心地址。 AT+CSQ 信号质量。 +CSQ: 17,99 AT+CGMI 给 出模块厂商的标识 AT+CCID 获得 SIM 卡的标识。 这个命令使模块读取 SIM 卡上的EFCCID 文件。 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 11 图 7:应用软件界面图 使用前,我们要对板子进行测试,测试模块是否正常工作。 用录下的 “”测试程序来对实验板进行测试。 测试步骤如下: 先将 SIM卡装入开发板,拧上 GSM天线。 将开发板上跳线设置成 PCTC35I通信模式。 插上配套电源,然后按一下板上的开机按键,时间大于 200ms即可。 找到光盘 “TC35I测试程序 ”目录下的 “”测试程序来进行测试。 先点击 “打开端口 ”,然后点击 “TC35I初始化 ”,如果连接成功后会出现 “DSR信号线有问题 ”的提示,没关系,不用管它,我们确实没用到这条线。 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 12 图 8:串口运行图 使用电话拨号板子上 SIM卡的号码,如果电话能打通,则表示模块已正常工作,测试完成。 关于通信跳线说明: 在通信过程中进行了三种通信跳线方式的选择: PC 机与 MCU 通信; PC 机与 TC35I模块通信; MCU 与 TC35I 模块通信。 用 PC 机来进行模块的测试,收发短信或进行语音呼叫实验,请将跳线设置成: PC 与 TC35I 模块通信。 ,即完成 ISP 下载功能, 请将跳线设置成: PC 与MCU 通信。 MCU 来控制 TC35I 模块,请将跳线设置成: MCU 与 TC35I 模块通信 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 13 图 9:硬件实物图 6 STC 芯片烧写软件 首先要把编写完成的程序烧到 STC89C51RC 里 ,写软件的使用步骤: 打开 STC 芯片烧写软件的窗口 → 选择单片机型号 STC89C51RC; 打开文件 Open File→ 选择通过编译生成的 HEX 文件; 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 14 图 10:烧写设置 选择串行口,最高波特率等参数选择默认值; 点击下载 Download,再给 MCU 上电,程序的烧写工作完成。 7 结论 通过本次毕业设计我学到了不少的知识,进一步巩固了单片机的基础知识,实际动手能力有所提高,能够将理论与实际相结合。 该毕业设计 主要由 GSM 模块 TC35i、 STC89C51 单片机、 DSl8B20 温度传感器等构成。 过程是:首先单片机要实现测温功能,通过单片机上的温度传感器 DSl8B20 采集到周围的温度。 其次实现单 片机与 GSM 模块的通信,手机发送短信给 GSM 模块的 SIM卡, GSM 模块接收信息后收集单片机上当时的温度,并把该温度发给手机,这样就实现了远程温控。 GSM 模块是用 AT 指令控制的。 (如果有短信来, GSM 模块会通过串口向单片机发送字符串,单片机读取短信,发信息给手机回复温度) 在设计过程中,由于以前课程有所涉及,接触各方面时间比较长 , 但由于缺乏自己动手实际操作 ,在实际制作硬件和软件编写过程中遇到了不少的麻烦,但在指导老师的帮助下,通过 有 针对性地查找资料,了解了些相关方面的资料,既增长了自己见识,补四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 15 充最新的专业知识 ,又提高了自己的应用能力,能够自行解决一些基本的问题。 在大学四年的时间,大多在学习理论基础知识,实践的 机会 并不是太多。 经过这次毕业设计,我积累了相关的使用调试经验,发现了自己很多不足之处,体会到了所学理论知识的重要性,知识掌握得越多,设计得就更全面、更顺利、更好。 总之,这次毕业设计让我能把理论知识和工程实践相结合、基础知识与创新意识相结合,培养了自己的全面素质。 这些在我今后的学习和工作当中都会有很大的帮助。 附 录 软件程序设计 include include define uchar unsigned char define uint unsigned int define RxIn 100 //定义接收的数组长度为 100 char s[20]=Temperature= 0C。 uchar code AT[]=AT。 //握手信号 uchar code ATE[]=ATE。 //关回显 uchar code AT_CNMI[]=AT+CNMI=2,1。 //设置这组参数来了新信息直接显示到串口, 不作存储 uchar code AT_CSCA[]=AT+CSCA=\+8613800510500\。 //设置服务中心号码 uchar code AT_CMGF[]=AT+CMGF=1。 //设置短信的格式为 text 格式 uchar code AT_CMGR[]=AT+CMGR=。 //读取短信指令 四川大学锦城学院本科毕业论文 基于短信回传的温度监测节点设备设计 16 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 AT_delete[12]。 uchar AT_Read[12]。 //用来存储发送读取短信指令 uchar AT_SendNumber[25]。 //用来存储发送短信号码指令 uchar numberbuf[3]。 //用来保存短信条数 uchar idata SystemBuf[RxIn]。 //储存出口接收数据 uchar CommandBuf[6]。 //用来储存指令 uchar idata state[17]。 //用来存储 IO 口状态 uchar idata state1[17]。 //用来存储 IO 口状态 uchar Rx=0。 uint temp。 //记录状态 uchar temp1。 // 用于记录 P0 口状态 uchar temp2。 // 用于记录 P2 口状态 bit check=0。 //查询标志位 bit receiveready=0。 //接收短信标志位 bit sendready=0。 //发送短信准备标志位 bit send=0。 //发送短信标志位 bit flag=0。 //指令标志位 sbit P3_7=P3^7。 //启动 GSM 的启动线连 IGT sbit realy0=P0^0。 //继电 sbit realy1=P0^1。 //继电器 2 sbit realy2=P0。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。