ImageVerifierCode 换一换
格式:DOC , 页数:37 ,大小:857KB ,
资源ID:1976464      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/1976464.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(远程天然气报警控制系统的设计与实现课程设计论文.doc)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

远程天然气报警控制系统的设计与实现课程设计论文.doc

1、 + 现代电子系统设计与实践课程设计 题 目: 远程天然气报警控制系统的设计与实现 指导教师: 专业班级: 11级电子信息科学与技术 学 号: 姓 名: 同组人员: 日 期: 2014-12-15 37 目录一、绪论31.1 课题背景及意义31.2 课题目标及功能实现3二、硬件系统42.1 通信模块ATM900V42.2 MQ-4气敏元件42.3 单片机STC12LE60S242.4 实验步骤5三、软件系统53.1 主程序53.2 系统初始化函数63.3 发送中文短信程序73.4 MQ-4程序83.5 时间程序93.6 GPRS程序133.7 时间显示193.8 汉字字模的数据结构定义25四、

2、总结354.1实验结果354.2 心得体会35 一、绪论1.1 课题背景及意义 近年来,全国天然气作为清洁能源已在工商业和城镇居民用户中得到广泛应用,特别是随着“西气东输”工程的快速进展,燃气行业发展潜力巨大。城市燃气的普及与应用无疑对改善城市的环境质量和提高居民的生活质量发挥了巨大的作用。但是随着燃气的广泛应用,由于燃气泄漏所引发的爆炸、中毒和火灾事故也时有发生,这在某种程度上增加了城市的不安全和不稳定因素。为了减少并杜绝各种因燃气泄漏而引发的爆炸及火灾事故,各燃气使用单位及居民用户选择一种适合的煤气报警器实为必要之举。 本次课程设计的题目是远程天然气报警控制系统的设计,天然气泄漏报警电路是

3、用于当天然气泄漏达到一定危害浓度时就立即发出报警,它在实际生活中有着十分广泛的应用。我相信通过本次课程设计,我将进一步加深对传感器应用的理解,同时也对电子设计的方法有一定的了解,为今后的学习和工作打下一定的基础。1.2 课题目标及功能实现 实现对天然气的远程监控,若有燃气泄漏情况则马上启动通讯模块发送短信。 二、硬件系统2.1 通信模块ATM900V ATM900V是一个通信模块,负责通信,采用AT指令来驱动。2.2 MQ-4气敏元件 MQ-4是一个气敏元器件,有二端输出,共四个引脚AO、DO、GND、VCC,其中DO是信号输出,当气体浓度达到限定值时就会引发信号,由DO输出的信号发生变化,由

4、高电平变为低电平。2.3 单片机STC12LE60S2 STC12LE60S2是一个类似于51的单片机,但是时钟频率更高,内存更大,比较适合与通信模块相连。2.4 实验步骤 使用ATM900V与STC单片机连接,通过烧录单片机的程序来控制通信模块正常工作,并且能在有燃气泄漏的情况下,立即启动通讯模块发送短信。 三、软件系统3.1 主程序*主程序*程序说明:本程序实现开机自动发送一条中文短信1.我们的程序全部都是通过单片机串口2与SIM300通讯,串口1用于下载程序和观察SIM300返回的数据(串口2收到的SIM300返回的数据会通过串口1发送到电脑中,用于观察数据),使用过程中,如果没有特殊要

5、求跳线帽不用变动。2.在开发板上放入您的手机卡,接好天线,打开电源,接入耳机。3.把程序编译后下载到单片机中,使用STCISP下载,具体请参照教程。4.开机自动发送短信到指定的手机上。号码和内容请在开头的数组里面修改 *#include systerm.h#include mq4.hvoid SysInital(void);void SendUDPMessage(char* pnum, char* context, void (*sendfun)(char*);/在此处修改发送号码和内容uchar n13 = 15009719926;/短信号码uchar context = 674E74268

6、0015E0860A8597DFF0C6211662F6697604B60A876845973751FFF0C621157285B9E9A8C5BA47B4960A8;/洪旭你好!void main() uint i = 0;SysInital();/初始化 GPRS_RST = 0;/Sim300 复位键置位CleanGsmRcv();while(!Hand(OK)/与GSM模块握手,判断是否收到GSM模块返回的OKUart2SendStr(ATE1r);/打开回显命令DelaySec(1);LCD_prints(0,0,STARTING.);CleanGsmRcv();/清除接收缓存LED

7、1_ON;while(!(Hand(+CREG: 1,1) | Hand(+CREG: 1,5)/检测是否以注册到服务商Uart2SendStr(AT+CREG=1r);/设置服务商状态为数据显示DelaySec(1);Uart2SendStr(AT+CREG?r);/检测服务商状态DelaySec(1);CleanGsmRcv();/清除接收缓存LCD_prints(0,0,GSPR REGISTER);LCD_LIGHT_ON;while(1)if(DOUT=0)/当浓度高于设定值时 ,执行条件函数delay(5);/延时抗干扰if(DOUT=0)/确定 浓度高于设定值时 ,执行条件函数L

8、ED=0;/点亮P1.0口灯delay(500);LED=1;/delay(500);Uart2SendStr(AT+CLCCr);/接通电话返回接通指令DelaySec(1);SendUDPMessage(n, context, Uart2SendStr);LCD_prints(0,1,PDU MSM SEND);DelaySec(2);CleanGsmRcv(); LCD_clr_scr(); 3.2 系统初始化函数/*系统初始化函数*/*函数原型:void SysInital(void)/*函数功能:初始化系统,启动设置各个硬件,寄存器/*输入参数:无/*输出参数:无/*/void Sy

9、sInital(void)/设置P02 P04端口为强上拉,设置P03端口为开漏,外接上拉电阻。以驱动ds1302时钟。P0M0 = 0x1c;/b 0001 1100 P0M1 = 0x08;/b 0000 1000/打开P44 P45 P46 IO功能。P4SW = P44EN|P45EN|P46EN;/定时器0初始化Timer0Init();Uart1Init(0,1,253);/初始化串口,设置波特率115200Uart2Init(0,1,253);/初始化串口,设置波特率115200LCD5510_Init();/初始化1302时钟芯片 DS1302_Initial();/设置初始时

10、间 DS1302_SetTime(init);/注册定时函数 LED1_OFF;LED2_OFF;LED3_OFF;LED4_OFF;/关闭LED3.3 发送中文短信程序/*发送中文短信程序*/*函数原型:void SendUDPMessage(char* num, char* context, void (*sendfun)(char*)/*函数功能:发送中文短信程序/*输入参数:char* num 短信号码指针 char* context 短信内容unicode码指针 void (*sendfun)(char*) 用于和通讯模块发送数据的串口函数指针/*/void SendUDPMessa

11、ge(char* pnum, char* context, void (*sendfun)(char*)unsigned char i=0,x=0;unsigned char con_cnt3 = 0,0,0;unsigned char tabhex = 0123456789ABCDEF;unsigned char num13 = ;strncpy(num, pnum, strlen(pnum);for(i=0; numi!=0; i=i+2)/将号码转换到udp格式,两位一反if(numi+1 = 0)numi+1 = F;x = numi; numi = numi+1;numi+1 = x

12、; (*sendfun)(AT+CMGF=0r);/设置成udp中文短信发送模式DelaySec(1);(*sendfun)(AT+CMGS=);/发送数据位数x = 15+strlen(context)/2;/计算发送位数con_cnt0 = 0x30 + x/10;con_cnt1 = 0x30 + x%10;(*sendfun)(con_cnt);/发送数据位数(*sendfun)(r);DelaySec(1);(*sendfun)(0011000D9168);/固定发送内容,不用改动(*sendfun)(num);/发送号码(*sendfun)(0008A0);/固定发送内容,不用改动

13、x = strlen(context)/2;/转换内容的个数con_cnt1 = tabhexx&0x0f;con_cnt0 = tabhex(x&0xf0)4;(*sendfun)(con_cnt);DelaySec(1);(*sendfun)(context);/发送内容con_cnt0 = 0x1a;con_cnt1 = 0;(*sendfun)(con_cnt);/发送结束符DelaySec(1);3.4 MQ-4程序*MQ-4程序*说明:1、当测量浓度大于设定浓度时,单片机IO口输出低电平*/#include/库文件#define uchar unsigned char/宏定义无符号

14、字符型#define uint unsigned int /宏定义无符号整型/*I/O定义*/sbit LED=P25;/定义单片机P1口的第1位 (即P1.0)为指示端sbit DOUT=P10;/定义单片机P2口的第1位 (即P2.0)为传感器的输入端/*延时函数*/void delay(int t)/延时程序 int i,j;for(i=t;i0;i-) for(j=512;j0;j-);/*主函数*/*void main()/P0=0Xff;while(1) /无限循环LED=1;/熄灭P1.0口灯if(DOUT=0)/当浓度高于设定值时 ,执行条件函数delay(5);/延时抗干扰i

15、f(DOUT=0)/确定 浓度高于设定值时 ,执行条件函数LED=0;/点亮P1.0口灯delay(500);LED=1;delay(500);*/3.5 时间程序*时间程序*#include systerm.hvolatile unsigned int data timer0_cnt = 0;uint data timer0_debug_cnt = 0;volatile int data sec_cnt = 0;void (code * pfun1)(void) = 0;/ 定时到达时操作函数的函数指针1#define T0H 0xFC #define T0L0x66/*初始化定时器0*/*

16、函数原型:Timer0Init/*函数功能:初始化定时器0/*/void Timer0Init(void)TMOD=0x01; /设置定时器0为工作方式1/AUXR|=T0x12;TH0=T0H; /放入初值,11.0592M,1msTL0=T0L;/ 设置定时器0中断优先级(优先级1)IPH &= PT0H;PT0 = 1;EA=1; /开总中断ET0=1; /开定时器0中断 TR0=1; /启动定时器0/*定时器0中断*/*函数原型:Timer0/*函数功能:每1ms执行一次中断,中断内部重新赋值/*/void timer0() interrupt 1uchar i = 0;TH0=T0H

17、;TL0=T0L;#ifdef UART1_DEBUG/发送数据用于调试。timer0_debug_cnt+;if(timer0_debug_cnt = 20)timer0_debug_cnt = 0;Uart1SendStr(DebugBuf_U2);for(i=0; iMAXBUF; i+)DebugBuf_U2i = 0;Debug2RcvCnt = 0;Uart2SendStr(DebugBuf_U1);for(i=0; iMAXBUF; i+)DebugBuf_U1i = 0;Debug1RcvCnt = 0;#endiftimer0_cnt+;if(timer0_cnt = 100

18、0)timer0_cnt = 0;sec_cnt+;#ifdef SHOW_TIME_DEBUG if(timer0_cnt = 500)/显示时间 ShowTime(0, 4);/显示日期ShowDate(0, 5);#endif /SHOW_TIME_DEBUG/*定时函数*/*函数原型:void DelaySec(unsigned char sec)/*函数功能:是函数等待一段时间/*输入参数:sec,要等待的时间(秒)/*/void DelaySec(unsigned char sec)sec_cnt = 0;while(sec_cnt =24) i=i-24;init2 = (i/10)4) + i%10;init1= (*(pos+29)-0x30)4) + *(pos+30)-0x30;init0 = (*(pos+32)-0x30)4) + *(pos+33)-0x30;init6 = (*(pos+23)-0x30)4) + *(pos+24)-0x30;init3 = (*(pos+14)-0x30)=MAXBUF-1)Debug1RcvCnt = 0

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服