粮食仓库温湿度智能检测_系统软件设计毕业论文(编辑修改稿)内容摘要:
程序。 因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到 C 语言,具体应用比如单片机以及嵌入式系统开发。 C 语言 是 功的系统描述语言,用 C 语言开发的 UNIX操作系统就是一个成功的范例。 同时 C 语言又是一种通用的程序设计语言,在国际上广泛流行。 世界上很多著名的计算公司都成功的开发了不同版本的 C 语言, 很多优秀的应用程序也都使用 C 语言开发的,它是一种很有发展前途的高级程序设计语言。 1. C 是中级语言。 它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以像汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。 是结构式语言。 结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。 这种结构化方式可使程序层次清晰,便于使用、维护以及调试。 C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从 而使程序完全结构化。 语言功能齐全。 具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。 而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。 4. C 语言适用范围大。 适合于多种操作系统,如 Windows、 DOS、 UNIX 等等;也适用于多种机型。 C 语言对编写需要硬件进行操作的场合,明显优于其它解释型高级语言,有一些大型应用软件也是用 C 语言编写的。 C 语言具有较好的可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。 它是数值计算的高级语言 [5]。 汇 编语言是低级语言,在编写程序的时候会把根据不同的情况指定使用不同的寻址方式,能够对内存和 CPU 里的通 用寄存器直接操纵。 不同的计算机系列会有不同的汇编语言此次课题 选择了 C 语言进行编写。 3 系统软件设计 10 3 系统软件设计 系统硬件工作原理 该系统的硬件电路由以下几部分电路模块组成:单片机、温度传感器检测电路、湿度传感器检测电路、数码管显示电路、键盘开关电路、蜂鸣器报警电路等部分。 系统硬件框图如图 所示。 图 系统硬件框图 系统软件设计概述 本 章在硬件电路设计的基础上,全面阐述各部分软件的设计思想和具体实现方法。 整个软件采用模块化设计结构,并利用汇编语言编制。 整个程序由主程序、显示、 报警 、 测量 等子程序模块组成 [6]。 主程序模块设计 主程序框图如图 所示。 程序初始化包括寄存器设置、堆栈设置和相关单元清零设置等。 主程序存放于 89c52 中,启动后循环执行,不停地进行采样计算,得出实际温、湿度值,并与设定值进行比较,实现声光报警信号。 在 主程序是单片机程序的主体,整个单片机端系统软件的功能的实现都是在其中完成的。 软件设计的主要思路是将采集、接 收、显示灯功能编成独立的模块。 S18B20 温度传感器 HS1101 湿度传感器 STC89C52 单片机 串行 LED 显示 报警电路 键盘 西安工业大学北方信息工程学院毕业设计(论文) 11 是 否 是 否 图 主程序流程图 /* 主函数 */ /************************************/ void main() { EA=1。 //开总中断 init_t0()。 //初始化定时器 init_t1()。 TR0=1。 //定时器开始工作 TR1=1。 ET0=1。 lcd_init()。 //初始化 LCD ok_menu()。 BEEP=0。 while(1) { if(key1==0) Key1 键按下。 显示湿度 Key2 键按下。 显示温度 开始 结束 西安工业大学北方信息工程学院毕业设计(论文) 12 { lcd_init。 wendu_Menu ()。 do { Read_Temperature()。 Disp_Temperature()。 baojing()。 } while(key2)。 } if(key2==0) { lcd_init。 shidu_Menu()。 do { if(int_flag==1) { disp()。 } } while(key1)。 } } 温度采集模 块程序设 计 根据 DS18B20 的通讯协议,主机(单片机)控制 DS18B20 完成温度转换必须经过三个步骤: 每一次读写之前都要对 DS18B20 进行复位操作,复位成功后发送一条 ROM指令,最后发送 RAM 指令,这样才能对 DS18B20 进行预定的操作。 复位要求主 CPU将数据线下拉 500 微秒,然后释放,当 DS18B20 收到信号后等待 16~ 60 微秒左右,后发出 60~ 240 微秒的存在低脉冲,主 CPU 收到此信号表示复位成功 [7]。 西安工业大学北方信息工程学院毕业设计(论文) 13 否 是 图 温 度检测程序流程 DS18B20 中的温度传感器可完成对温度的测量,以 12 位转化为例:用 16 位符号扩展的二进制补码读数形式提供,以 ℃ /LSB 形式表达,其中 S 为符号位 [8]。 图 DS18B20 温度值 初始化是否成功。 初始化 从 18B20 读字节 向 18B20 写字节 开始 结束 读取温度 西安工业大学北方信息工程学院毕业设计(论文) 14 这是 12 位转化后得到的 12 位数据,存储在 18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0,这 5 位为 0,只要将测到的数值乘于 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加 1再乘于 即可得到实际温度(例如 +125℃ 的数字输出为 07D0H, +℃ 的数字输出为 ℃ 的数字输出为 FF6FH, 55℃ 的数字输出为 FC90H) [9]。 /********************************************************** /************温度测量 ************************************** /********************************************************** / /*初始化 ds1820 */ /*******************************************************************/ Init_DS18B20(void) { DQ = 1。 //DQ 复位 Delay(8)。 //稍做延时 DQ = 0。 //单片机将 DQ 拉低 Delay(90)。 //精确延时 大于 480us DQ = 1。 //拉高总线 Delay(8)。 presence = DQ。 //如果 =0 则初始化成功 =1 则初始化失败 Delay(100)。 DQ = 1。 return(presence)。 //返回信号, 0=presence,1= no presence } /* 读一个字节 */ /*******************************************************************/ ReadOneChar(void) { unsigned char i = 0。 unsigned char dat = 0。 for (i = 8。 i 0。 i) { DQ = 0。 // 给脉冲信号 dat = 1。 DQ = 1。 // 给脉冲信号 if(DQ) 西安工业大学北方信息工程学院毕业设计(论文) 15 dat |= 0x80。 Delay(4)。 } return (dat)。 } /* 写一个字节 */ /*******************************************************************/ WriteOneChar(unsigned char dat) { unsigned char i = 0。 for (i = 8。 i 0。 i) { DQ = 0。 DQ = datamp。 0x01。 Delay(5)。 DQ = 1。 dat=1。 } } /* 读取温度 */ /*******************************************************************/ Read_Temperature(void) { Init_DS18B20()。 WriteOneChar(0xCC)。 // 跳过读序号列号的操作 WriteOneChar(0x44)。 // 启动温度转换 Init_DS18B20()。 WriteOneChar(0xCC)。 //跳过读序号列号的操作 WriteOneChar(0xBE)。 //读取温度寄存器 temp_data[0] = ReadOneChar()。 //温度低 8 位 temp_data[1] = ReadOneChar()。 //温度高 8 位 } /* 数据转换与温度显示 */ /*******************************************************************/ Disp_Temperature() { 西安工业大学北方信息工程学院毕业设计(论文) 16 display[4]=temp_data[0]amp。 0x0f。 display[0]=ditab[display[4]]+0x30。 //查表得小数位的值 display[4]=((temp_data[0]amp。 0xf0)4)|((temp_data[1]amp。 0x0f)4)。 display[3]=display[4]/100+0x30。 display[1]=display[4]%100。 display[2]=display[1]/10+0x30。 display[1]=display[1]%10+0x30。 if(display[3]==。粮食仓库温湿度智能检测_系统软件设计毕业论文(编辑修改稿)
相关推荐
闲 ,时尚休闲,如 ONLY等。 人们的生活水平在提高,对于生活的追求也不仅仅只是停留在时尚、潮流的层面,越来越多的女性将自己的注意力转移到对自然的追求上,享受生活,品味休闲。 时尚休闲化或休闲时尚化成为当今一大命题,且受到越来越多的人的欢迎,成为趋势。 7 中价位服装更容易让人接受 对于国内女装来说,主要占据的是中低档市场,而国外女装进入我国后,主要占据的是我国的高档市场。 对于低档市场来说
18 图 链轮机构 链的节距的大小 , 反映了链条和链轮齿各部分尺寸的大小。 在一定条件下 , 链的节距越大 , 承载能力越高,但传动的多 边形效应也要增大,于是振动、冲击、噪声 也越严重。 所以设计时, 为使传动紧凑 , 寿命长 , 应尽量选取较小节距的单排链。 速度高 、功 率大时 , 则 选用小节 距的 多排链。 从经济上考虑 , 中心距小 、 传动比小时 , 选小节距多排链 ; 中心距大
数控机床的特点 现代数控机床集高效率、高精度、高柔性于一身,具有许多普通机床无法实现人特殊功 能,它具有加工精度高、生产率高、自动化程度高、劳动强度低、柔性强、经济效益好、有利于现代化管理的特点。 数控机床的发展前景 晋城职业技术学院毕业设计(论文) 3 提高生产自动化程度,缩短编程时间和降低数控加工成本,在航空航天工业中还发展和使用了一系列先进的 数控加工技术。 如 计算机数控 ,即用小型或
首都食品安全的支柱产业。 搞好物流、储备和加工业务,是 ****一链两翼战略上的重要一环,是集团 突出主业,以做市场做品牌带动集团工业的发展重要物质基础。 通过天津临港粮油物流中心的建设,可以 进一步利用存量资源的优势,对分布在四、五环路周边的粮食仓储企业、加工企业进行战略调整, 有利于集团对 加工业务布局实施退四进六、退城进郊,退陆进港的总体战略,有利于 在粮食加工转化集中区域整合一批客户
04/(100 6000 583200)= 面板的最大挠度小于 ,满足要求 ! (二)、模板支撑木方的计算 木方按照均布荷载下连续梁计算。 (1)钢筋混凝土板自重 (kN/m): q11 = = (2)模板的自重线荷载 (kN/m): q12 = = (3)活荷载为施工荷载标准值与振捣混凝土时产生的荷载(kN/m): 经计算得到,活荷载标准值 q2 = (+)= 静荷载 q1 = + = 活荷载
动态交通分配的研究现状 交通 配流 问题作为路网规划的一个 有机 构成 部分,对其的研究 向来 是学术界感兴趣的项目。 交通分配方法 按照平衡准则可以 分为平衡模型与非 平 衡模型。 非平衡模型又可分为有容量限制分配模型、最短路分配模型及多路径分配模型等 , 这些模型 构造 简单、计算 方便, 但在应用时与实际 效果 相差较大。 而平衡模型 作为新发展起来的 新 式 交通分配模型,这类模型 与非