基于ARM的实时温度监控系统--毕业论文.doc

上传人:可****阿 文档编号:91695228 上传时间:2023-05-27 格式:DOC 页数:27 大小:1.28MB
返回 下载 相关 举报
基于ARM的实时温度监控系统--毕业论文.doc_第1页
第1页 / 共27页
基于ARM的实时温度监控系统--毕业论文.doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《基于ARM的实时温度监控系统--毕业论文.doc》由会员分享,可在线阅读,更多相关《基于ARM的实时温度监控系统--毕业论文.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 西 华 师 范 大 学毕业设计(论文)基于ARM的实时温度监控系统目 录1 前 言42 监控系统主要元器件介绍52.1 基于CORTEX-A8的FS_S5PC100的开发板52.2 LM75温度传感器62.2.1 LM75功能特性72.2.2 LM75引脚配置72.2.3 LM75在本开发平台的电路原理图82.3 WISMO218模块芯片82.3.1WISMO218模块特性92.3.2 AT指令介绍92.3.3 AT 指令的基本用法92.3.4 AT指令的常用命令102.4 PWM驱动蜂鸣器112.4.1 PWM概述112.4.2 蜂鸣器概述112.4.3 PWM驱动蜂鸣器122.4.4 P

2、WM驱动蜂鸣器在本开发平台的电路原理图123 监控系统各个模块功能实现133.1 PWM驱动蜂鸣器133.1.1蜂鸣器硬件原理图133.1.2蜂鸣器驱动程序设计133.1.3蜂鸣器应用程序设计153.2 LED报警灯153.2.1 LED报警灯的原理图如图9所示153.2.2 LED报警灯驱动程序设计163.2.3蜂鸣器应用程序设计173.3 GSM通信模块173.3.1GSM 通信模块设计流程图183.3.2串口的初始化及读写183.3.3GPRS模块初始化193.3.4短信的发送193.3.5经过封装后向外部提供的函数接口203.4 LM75温度传感模块203.4.1 LM75温度传感模块

3、介绍203.4.2LM75温度传感模块硬件原理图213.4.3 LM75驱动程序设计213.4.4LM75运用程序接口设计224 控制系统软件设计234.1 主程序235 结 论25参考文献25致 谢26基于ARM的实时温度监控系统(西华师范大学计算机学院 2008级5班 李林)【摘 要】本文所介绍的是一种温度监控系统,该系统采用了时下流行的嵌入式技术,即采用三星公司的S5PC100的平台和linux 2.6.35 内核。该系统通过温度传感器LM75实时采集当前环境温度,一旦温度超过用户设定的极限值,便启动由LED灯和蜂鸣器组成的声光报警系统,并通过GSM模块发出短信通知相应人员。该系统测量精

4、确度为0.5,测量范围是-55125。用户可以根据需求自定义报警温度上下限,该系统精确度高、测温范围广、报警及时等优点。可广泛的运用到实际的温度监控环境中。【关键词】嵌入式;linux;LM75;GSM;S5PC100Real-Time Temperature Monitoring System Based on Arm(China West Normal University Computer College Grade 2008 Class 5 Li Lin)【Abstract】Described in this article is a temperature monitoring sy

5、stem, which uses the popular embedded technology, the Samsung S5PC100 platform and the the linux 2.6.35 kernel. Real-time acquisition system through the temperature sensor LM75 current ambient temperature, once the temperature exceeds the limits set by the user will start by the LED light and buzzer

6、 sound and light alarm system, and through the GSM module to send messages to notify the appropriate personnel. The measurement accuracy to 0.5 measurement range is -55 125 . According to the needs of self-defined alarm temperature lower limit of the system is high accuracy, wide temperature range,

7、the alarm in a timely manner. Can be widely applied to the actual temperature monitoring environment.【Keywords】Embedded ; Linux; LM75; GSM; S5PC100271 前 言 温度是环境的一种最基本的参数,对我们人类而言,这不仅仅是一个物理参数的反映,而是与我们的生活息息相关。不论是工业生产中需要实时监控温度的变化,还是农业生产中也离不开对温度的测量。随着这些需要的不断提高,我们的先辈发明温度传感器。温度传感器是最早开发,应用最广的一类传感器。从17世纪初伽利略

8、发明温度计开始,人们开始利用温度进行测量。真正把温度变成电信号的传感器是1821年由德国物理学家赛贝发明的,这就是后来的热电偶传感器。温度监控是生产中的一个重要环节,尤其在环境及其恶劣和复杂的工业现场,温度监控更是起着不可替代的作用。因此,研究温度测量的方法和装置具有重要的意义。而测量温度的关键是温度传感器。通过温度传感器实时采集环境的实时温度,对采集到的数据进行处理,发出相应的动作,已达到我们的需求。本系统的温度测量端采用National semiconductor公司的lm75芯片,该芯片是一种含9位ADC、温度分辨率为0.5的数字温度传感器,测量范围是-55125。它提供两条支持I2C总

9、线协议的接口来监测温度,并具备自校准功能。上位机可以随时要求lm75读取温度,当温度超过设定的温度时,芯片系统会自动输出一个超温报警信号。对环境温度进行数据的采集和存储。该系统具有读取数据方便、测温范围广、测温准确等优点。该温度监控系统由四个基本组件组成,分别由lm75温度传感器、LED灯、蜂鸣器、GSM模块组成,其中由LED灯、蜂鸣器组成声光报警系统。该温度监控系统由lm75温度传感器实时采集当前环境温度,当环境温度超过用户设定的温度值时,将触发声光报警系统,使LED灯闪烁、蜂鸣器发出警告,并有GSM发出短信通知用户。2 监控系统主要元器件介绍 2.1 基于Cortex-A8的FS_S5PC

10、100的开发板 FS_S5PC100 开发平台用三星公司先进的基于Cortex-A8 内核的 S5PC100 处理器设计而成。S5PC100 处理器采用了64/32 位的内部总线结构,最大833M 赫兹的运算速度。包括强大的硬件加速器,如:动态视频处理,显示控制和缩放。支持多种格式的硬件编解码如MPEF-1/2/4、H263/H264 等。其视频解码能力很强大并且省电, 编解码能力达到 1280x720 ,支持电视输出(NTSC/PAL/HDMI)。支持2D/3D 加速。本处理器广泛应用于智能手机、平板电脑等产品。2.1.1 FS_S5PC100开发板FS_S5PC100拥有丰富的硬件资源,开

11、发板实物图如图1所示。存储器:256M Byte 的NAND Flash,256M Byte 的DDR2 内存,2M 的NorFlash;显示输出接口:LCD 接口、VGA 接口、TVout 接口、HDMI 接口;视频输入接口:Camera 接口;串口:2 路5 线串口、1 路3 线串口;红外通讯接口:1 路红外收发;存储卡接口:SD 卡接口;SPI:SPI 的E2PROM (用于SPI 实验);I2C:I2C 的温度传感器(用于I2C 实验);A/D: 变阻器(用于A/D 实验);USB:USB2.0-OTG 接口、4 路USB Host 接口;PWM:蜂鸣器(用于PWM 实验);网络接口:

12、DM9000AE 以太网控制器,实现10M/100M 自适应以太网通信;外扩接口:蓝牙、wifi 等;音频接口:WM9714;图 1 FS_S5PC100开发板2.2 LM75温度传感器LM75温度传感器包含一个-模/数转换器和一个数字过热检测器。主机可通过器件的I2C接口随时查询LM75,读取温度数据。当温度超过可编程温度门限时,漏极开路过热报警输出(OS)将吸入电流。OS输出具有2种工作模式:比较器模式或中断模式。主机控制报警触发门限(TOS)和滞回温度(THYST),温度低于滞回门限时解除报警条件。另外,主机还可以读取LM75的Tos和THYST寄存器。LM75的地址有三个引脚设置,允许

13、多个器件工作在同一个总线。器件上电时进入比较器模式,默认条件下Tos = +80oC且THYST= +75摄氏度。3.0V至5.5V供电电压范围、低电源电流以及I2C接口使得LM75成为需要热管理和保护应用的理想选择。2.2.1 LM75功能特性 LM75芯片如图2所示。n SO(SOP)和uMAX(uSOP)封装;n I2C总线接口;n 独立的漏极开路OS输出作为中断或比较器、温度调节器输入;n 寄存器回读功能;n 上电默认状态允许独立工作在温度调节状态;n 3.0V至5.5V供电电压;n 较低的工作电流:250uA(典型值)、1mA(最大值);n 4uA(典型值)关断模式有效降低功耗;n

14、同一总线可最多挂接8个LM75;n 引脚和寄存器兼容Maxim升级版传感器,例如:MAX7500、MAX6625。图2 LM75芯片2.2.2 LM75引脚配置LM75引脚配置如图3所示。图3 LM75引脚配置2.2.3 LM75在本开发平台的电路原理图LM75在本开发平台的电路原理图如图4所示。图4 LM75在开发板的原理图2.3 WISMO218模块芯片WISMO218模块芯片如图5所示。图 5 WISMO218模块芯片2.3.1WISMO218模块特性n WISMO 218 GSM / GPRS无线通讯模块。它具有体积小,易用性强,品质优良等特性。以极具竞争力的价格,推向M2M行业。n

15、频段:GSM900/1800MHz, CSD, SMS, FAX, GPRS class10,顺从3GPP.n 信号灵敏度: -108dbm .n 全球认证: CE, GCF, China RTE, R&TTE,FCC, PTCRB, AT&T.n 语音编码: HR, FR, EFR, AMRn 温度范围: -30 - 75度n 工作电压: 3.2 - 4.8Vn 功耗: 36uA(off) / 1.6mA(Idle) / 205mA(connected)n 硬件接口: 46PIN邮票口封装, 1个语音, 1个SPI, 1个ADC, 1个RTC, 1个BUZZER,1个串口, 3个GPIO,

16、3个PWM .n SIM卡接口: 1.8和3Vn 尺寸: 25x25x2.8mm2.3.2 AT指令介绍AT 即Attention,AT指令一般应用于终端设备与PC应用之间的连接与通信。AT指令集是从终端设备(Terminal Equipment,TE)或数据终端设备(Data Terminal Equipment,DTE)向终端适配器(Terminal Adapter,TA)或数据电路终端设备(Data Circuit Terminal Equipment,DCE)发送。其对所传输的数据包大小有定义:即对于AT指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)

17、。每个AT命令行中只能包含一条AT指令;对于由终端设备主动向PC端报告的URC指示或者response响应,也要求一行最多有一个,不允许上报的一行中有多条指示或者响应。AT指令以回车作为结尾,响应或上报以回车换行为结尾。2.3.3 AT 指令的基本用法AT指令是以AT作首, 字符结束的字符串,AT指令的响应数据包在 中。每个指令执行成功与否都有相应的返回。其他的一些非预期的信息(如有人拨号进来、线路无信号等),模块将有对应的一些信息提示,接收端可做相应的处理。大概分为测试指令、读取指令和执行指令。1)测试命令(Test Command)在AT指令后面加上“=?”即构成测试命令。例如“AT+CS

18、CS=?”会列举出所有支持的字符集; 2)读取命令(Read Command)在AT指令后面加上“?”即构成读取命令。例如“AT+CSCS?”会列举出当前设置; 3)执行命令(Execute Command)一般而言在AT指令后加上“=”及命令参数即可。有些命令例如AT+CMGR命令没有参数,直接就可以执行。 注:并不是所有的AT指令都支持1和2;2.3.4 AT指令的常用命令AT 测试连接是否正确 ATE0 关闭回显。程序初始化AT部分首先关闭回显。 ATE1打开回显。使用超级终端测试命令时打开。AT+CGMI 得到厂商信息 AT+CGMR 得到手机版本号 AT+CGSN 得到手机序列号(I

19、MEI) AT+CIMI 得到手机IMSI号码 AT+CSCS 获取、设置手机当前字符集。可设置为GSM或UCS2 AT+CBC 获取手机电量 AT+CCLK 获取设置手机时钟 AT+CSQ 当前信号 AT+COPS 网络营运商 AT+CSCA 短信中心号码AT+CPMS 选择短信储存地点。可选择ME(SIM卡)和MT(机身) AT+CMGL 列出指定状态的短信息的PDU代码AT+CMGR 列出指定序号的短信息PDU代码 AT+CMGS 发送短信 AT+CMGD 删除指定的短信 AT+CMGF 短信格式。分为Text模式和PDU模式 AT+CNMI 设置新短消息通知电脑端2.4 PWM驱动蜂鸣

20、器2.4.1 PWM概述PWM脉宽调制,是靠改变脉冲宽度来控制输出电压,通过改变周期来控制其输出频率。而输出频率的变化可通过改变此脉冲的调制周期来实现。这样,使调压和调频两个作用配合一致,且于中间直流环节无关,因而加快了调节速度,改善了动态性能。由于输出等幅脉冲只需恒定直流电源供电,可用不可控整流器取代相控整流器,使电网侧的功率因数大大改善。利用PWM逆变器能够抑制或消除低次谐波。加上使用自关断器件,开关频率大幅度提高,输出波形可以非常接近正弦波。 在本开发平台S5PC100的内部有5个32位的定时器,这些定时器能产生内部中断到ARM子系统。并且定时器0,1,和2具有产生PWM的能力来驱动外部

21、I/O信号。定时器3,4是一个没有输出引脚的内部定时器,定时器0有一个用于大电流设备的死区生成器。在S5PC100中PWM定时器如图6所示。图6 PWM定时器2.4.2 蜂鸣器概述蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。 ;蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。2.4.3 PWM驱动蜂鸣器PWM 输出口直接驱动是利用PWM 输出口本身可以输出一定的方波来直接驱动蜂鸣器。通过设置几个系

22、统寄存器是用来设置PWM 口的输出的,可以设置占空比、周期等等,通过设置这些寄存器产生符合蜂鸣器要求的频率的波形之后,只要打开PWM 输出,PWM 输出口就能输出该频率的方波,这个时候利用这个波形就可以驱动蜂鸣器了。比如频率为2000Hz 的蜂鸣器的驱动,可以知道周期为500s,这样只需要把PWM 的周期设置为500s,占空比电平设置为250s,就能产生一个频率为2000Hz 的方波,通过这个方波再利用三极管就可以去驱动这个蜂鸣器了。2.4.4 PWM驱动蜂鸣器在本开发平台的电路原理图PWM驱动蜂鸣器在本开发平台的电路原理图如图7所示。图7 蜂鸣器电路原理图3 监控系统各个模块功能实现3.1

23、PWM驱动蜂鸣器3.1.1蜂鸣器硬件原理图蜂鸣器硬件原理图如图8所示。图 8 蜂鸣器硬件原理图3.1.2蜂鸣器驱动程序设计由于这个蜂鸣器是无源的,所以要想使其产生声音必须给他提供一个有一定频率的高低电平。所以这里我们采用S5PC100的PWM定时器来使蜂鸣器发出声音。在S5PC100中,有两个寄存器,TCNTB1、TCMPB1,TCNTB1表示计数器从TCNTB1对应的值开始递减,当其递减到TCMPB1时,电平翻转。当逆变器未使能时,从TCNTB1减到TCMPB1时候TOUT输出高电平,而从TCMPB1到0时输出低电平。由此可知,当TCMPB1相同时,TCNTB1值越大声音越低,反之越尖。实现

24、:关键步骤:1)分别设置定时器1的预分频器值和时钟分频值,以供定时器1的比较缓存寄存器和计数缓存寄存器用;2)设置比较缓存寄存器TCMPB1和计数缓存寄存器TCNTB1的初始值(即定时器0的输出时钟频率);3)关闭定时器1的死区生成器(设置TCON的第4位);4)开启定时器1的自动重载(设置TCON的第3位);5)关闭定时器1的反相器(设置TCON的第2位);6)开启定时器1的手动更新TCNTB1&TCMPB1功能(设置TCON的第1位);7)启动定时器1(设置TCON的第0位);8)清除定时器1的手动更新TCNTB1&TCMPB1功能(设置TCON的第1位)。由此可以看到,PWM的输出频率跟

25、比较缓存寄存器和计数缓存寄存器的取值有关,而比较缓存寄存器和计数缓存寄存器的值又跟预分频器和时钟分频器的值有关;要使用PWM功能其实也就是对定时器的相关寄存器进行操作。手册上也有一个公式:定时器输出频率 = PCLK / 预分频器值 + 1 / 时钟分频值。下面我们来通过一个蜂鸣器的实例来说明PWM功能的使用。关键代码:/初始化static void beep_init(void)writel(readl(S5PC100_GPD_BASE)&(0xF4)|(0x24), S5PC100_GPD_BASE);writel(readl(S3C2410_TCFG0) & (0xFF),S3C2410

26、_TCFG0);writel(readl(S3C2410_TCFG1) & (0xF 4 ) | (0x1 4 ),S3C2410_TCFG1);writel(tcntb1,S3C2410_TCNTB(1);writel(tcntb1/2,S3C2410_TCMPB(1);writel(readl(S3C2410_TCON) & (0xF 8) | (0xA 8),S3C2410_TCON);/打开蜂鸣器static void beep_on(void)writel(readl(S3C2410_TCON) & (0xF 8) | (0x9 8),S3C2410_TCON);/关闭蜂鸣器stat

27、ic void beep_off(void)writel(readl(S3C2410_TCON) & (0xf 8),S3C2410_TCON);/设置相关参数static void set_cnt(unsigned long arg)writel(arg, S3C2410_TCNTB(1);writel(arg/2, S3C2410_TCMPB(1);static void set_pre(unsigned long arg)writel(readl(S3C2410_TCFG0) & 0xff) | (arg & 0xff), S3C2410_TCFG0);3.1.3蜂鸣器应用程序设计(1)

28、void beep_start(void); 函数功能:打开蜂鸣器;(2)void beep_stop(void); 函数功能:关闭蜂鸣器;3.2 LED报警灯3.2.1 LED报警灯的原理图 LED报警灯的原理图如图9所示。图 9 LED报警灯的原理图3.2.2 LED报警灯驱动程序设计在裸板程序开发中,对LED的操作很方便,只需要直接对LED的相应的寄存器写1就可以把灯点亮。在本次开发中,把LED写成一个简单的字符设备驱动。关键步骤:由于GPG3 IO口是一个复合端口,需要把GPG3 口置为output状态如图10所示;图 10 GPG3 IO口2)向对应的数据寄存器写1;关键代码:/初始

29、化把GPG3 置为输出状态;static void led_init(void)writel(readl(S5PC100_GPG3_BASE)&(0XFFFF)|(0X1111),S5PC100_GPG3_BASE);/打开led灯,flag表示是哪盏灯;static void led_on(char flag)switch(flag)case 0:writel(readl(S5PC100_GPG3_BASE+0x4)&(0x1)|(0x1),S5PC100_GPG3_BASE + 0x4);break;./关闭led灯,flag表示是哪盏灯;static void led_off(char

30、flag)switch(flag)case 0:writel(readl(S5PC100_GPG3_BASE+0x4)&(0x1),S5PC100_GPG3_BASE + 0x4);break;.3.2.3蜂鸣器应用程序设计(1)void led_off(const int );函数功能:关闭led灯;(2)void led_off(const int ); 函数功能:打开led灯;3.3 GSM通信模块本次设计的GPRS模块 主要需要完成的功能为:通过ARM开发板的串口,控制GPRS短信息模块,实现短信息的即时收发,实时了解库房温度。3.3.1GSM 通信模块设计流程图1)数据流流程图如图1

31、1所示。 AT指令串口GPRS模块GPRS返回字符串图 11 数据流流程2) 程序设计流程图如图12所示。图 12 程序设计流程3.3.2串口的初始化及读写为了串口能正常通信处理,必须做一些相应配置,最后将以下配置步骤合为一个初始化函数 serial_init(char *COM),文件描述符保存在全局变量中。1)打开串:int open(const char *pathname, int oflag, . /* mode_t mode */); 2) 串口初始化配置包括以下这些参数设置:1.设置波特率(一般为115200)2.输入波特率 int cfsetospeed(struct term

32、ios *termptr, speed_t speed); 3.输出波特率 speed_t cfgetospeed(const struct termios *termptr); 4.设置校验位static int set_parity(int fd, char parity)5.设置数据位 static int set_databits(int fd, int databits)6.设置停止位 static int set_stopbits(int fd, int stopbits)7.设置最大等待时间 newflag.c_ccVTIME=time 8.设置最小接收字符数 newflag.c

33、_ccVMIN = min;9.设置未接收的字符 tcflush(serial_fd,TCIFLUSH);3) 激活配置int tcsetattr(int fd, int optional_actions, const struct termios *termios_p); 4) 串口的读写封装的函数分别为 serial_write(char *str);和serial_read(char *str);3.3.3GPRS模块初始化1)测试与GPRS连接状况,向串口写命令,serial_write(atr);如果返回nnOKnn 或 atnnOKnn 则连接成功;2)关闭回显,向串口写命令,se

34、rial_write(ATE0r);如果返回nnOKnn则关闭成功 3)设置波特率,向串口写命令,serial_write(at+ipr=B115200r)返回nnOKnn则设置成功 4)保存设置,serial_write(at&wr);返回nnOKnn则设置成功 3.3.4短信的发送短信的发送本质上就是向串口写数据。短信发送是以中文格式发送的,故有固定发送格式要求。发送中文短信有四个步骤:1) 切换发送模式为中文格式,即serial_write(at+cmgf=0r);2) 向GPRS模块指明发送的字符数,即serial_write(at+cmgs=xxr);其中xx是指发送短信总长度/2

35、-1;3) 向GPRS模块发送要发的短信内容,即serial_write(0011000D916xx0008A0bbcc);其中xx是电话号码,bb是发送的中文数*2,cc是中文内容的Unicode码4)向GPRS模块发送短信结束标记,即serial_write(rx1ar); 如果GPRS模块返回nn+CMGS=xxnn时,表明短信发送成功,其中xx表示总的发送短信成功条数。短信内容:发送当前环境温度,收到的短信内容为:当前温度:xxx.,xxx是温度值;3.3.5经过封装后向外部提供的函数接口1)gsm_init(char *COM)该函数做的工作:打开串口,并初始化,如果出错返回-1;初

36、始化GPRS模块,如果出错返回-2;创建线程,监听串口,如果出错返回-3;2)int send_message(int cmd,int temperature,char *ph_num);向目的号码发送短信。3.4 LM75温度传感模块3.4.1 LM75温度传感模块介绍Lm75内部有五个寄存器,其中四个寄存器命令指针寄存器进行选择,lm75上电默认为00;及选择温度寄存器(Temperature register),这个寄存器中保存了当前采集的温度,如果I2C发出了读命令,lm75会返回该寄存器中的温度值(16位),相关寄存器介绍如下:命令/指针寄存器:(8位只读)主要用于选择温度寄存器、配

37、置寄存器、超阀值寄存器、超阀值温度关闭寄存器,如图13所示。图13 Lm75内部寄存器温度寄存器:如图14所示。图14 LM75温度寄存器MSB:符号位(正、负温度)D8D14:温度数据位LSB:小数位(0.5)THYST AND TOS REGISTER,如图15所示。图15 THYST AND TOS REGISTERD0D6:未定义D7D15: 报警温度和滞后温度. 上电默认TOS = 80C, THYST = 75C.3.4.2LM75温度传感模块硬件原理图LM75温度传感模块硬件原理图如图16所示。图16 LM75温度传感模块硬件原理图3.4.3 LM75驱动程序设计注册为字符设备,

38、设备名称为lm75,设备号自动分配,防止和其他程序员设置的设备号冲突,自动在dev目录创建设备节点,挂接到I2C总线上。系统待用接口有:打开(lm75_open):static int lm75_open(struct inode *inode, struct file *file)关闭(lm75_release):static int lm75_release(struct inode *inode, struct file *file)读(lm_75read):static ssize_t lm75_read(struct file *file, char _user *buff, siz

39、e_t count, loff_t *offset) IO控制(lm75_ioctl)(定义CMD码,控制写哪个寄存器,用于设定温度的超阀值)static int lm75_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)switch(cmd)case SET_OS:lm75_write_value(new_client,LM75_REG_TEMP1, (u16)(arg*2)7);break;case SET_HYST:lm75_write_value(new_client,L

40、M75_REG_TEMP2, (u16)(arg*2)= get_high_tempe()/温度超限后LED灯闪烁,蜂鸣器报警gsm_flag+;if(gsm_flag = 1)/在温度超限回到正常前,只发送一次短信gsm_func_(int)get_current_tempe(),phone_no);if(temperature_temp != get_current_tempe()printf(current_temperature=%.1fn,get_current_tempe();/LED灯的控制led_on(4);led_off(4);/蜂鸣器控制beep_start();beep_

41、stop();else/s温度正常if(temperature_temp != get_current_tempe()printf(current_temperature=%.1fn,get_current_tempe();led_off(4);beep_stop();gsm_flag = 0;return 0;5 结 论本文详细论述了新型数字温度传感器LM75和S5PC100为核心的温度监控系统的设计方案。其硬件和软件简单,安装方便,价廉,可以根据用户的需要设置温度监控范围,提高整套系统的使用的灵活性。该系统严格按照计量产品的标定规范进行,对测量数据进行了分析处理,以及对误差进行了修正,使用精度达到了0.5级。通过实验证明,该系统设计可以实现对工业现场多点温度的监控,并且具有成本低、功能多、可靠性高的和精度高的特点。通过这次毕业论文完成的过程中,学到了很多,也加强了很多大学学习的基本技能,是理论与实际得到很好的结合,在这个过程中,也和同学进行了很多沟通,交流,体会到了团队合作的乐趣,经过最后的调试,系统成功的实现了设计功能,由于时间有限和本身知识水平的欠缺,我们认为本系统可能还有需要改进和提高的地方。参考文献:1 宋宝华. Linux 设备驱动开发详解M.北京:人民邮电出版社出版,2012,112 徐科军.传感器与检测技术M.北京

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁