2022年温湿度检测程序 .pdf
《2022年温湿度检测程序 .pdf》由会员分享,可在线阅读,更多相关《2022年温湿度检测程序 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、华北水利水电学院毕业设计1 附录三:系统源程序代码#include /头文件#include /*#define uchar unsigned char/定义一下方便使用#define uint unsigned int/定义一下方便使用#define ulong unsigned long/定义一下方便使用#define TEMP_ML 0 x03/00000011温度命令#define HUMI_ML 0 x05/00000101温度命令sbit k1=P30;/定义 I/O 口 P1.1,连接按键 1,传感器开始工作sbit k2=P31;/定义 I/O 口 P1.2,连接按键 2,进入
2、设置温度上下限状态sbit kTH=P32;/定义 I/O 口 P3.2,连接按键 kTH,设置上限值sbit KTL=P33;/定义 I/O 口 P3.3,连接按键 kTL,设置下限值sbit k5=P34;/定义标志位 flag sbit k6=P36;sbit k7=P37;/unsigned char error;/全局错误变量unsigned char ack;/全局应答变量unsigned char temp_h;/全局应答变量unsigned char temp_LL;/全局应答变量unsigned char temp_zi;/全局应答变量unsigned char humi_z
3、i;/全局应答变量unsigned char ml;unsigned char flag;/全局应答变量unsigned int xianzhi_t=0;/温度显值unsigned int xianzhi_h=0,z;/湿度显值int TH=400;/上限值,初始化为40 int TL=100;/下限值,初始化为10 int HH=800;int HL=200;unsigned char BZ_flag=0;/蜂鸣器扫描函数speaker()的启动/关闭标志,为1则启动,为 0 则关闭unsigned char RT_flag=0;/读取与转换温度函数ReadTemperature()的启动/
4、关名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 11 页 -华北水利水电学院毕业设计2 闭标志,为 1 则启动,为 0 则关闭unsigned char SHT11_flag;/SHT11的工作标志,当按键按下,该变量为1 sbit DATA=P20;/数据sbit SCK=P21;/时钟sbit gwei=P26;/个位sbit beep=P07;/定义 I/O 口 P1.7,连接蜂鸣器,低电平启动蜂鸣器报警sbit swei=P25;/十位sbit bwei=P24;/百位sbit qwei=P23;/千位sbit blueled=P03;/定义 I/O 口 P1.3,连接
5、蓝灯,温度传感器工作状态灯sbit greenled=P04;/定义 I/O 口 P1.4,连接绿灯,设置温度灯sbit redled=P05;/定义 I/O 口 P1.5,连接红灯,温度超过设置报警值的最大值的报警灯sbit yellowled=P06;/定义 I/O 口 P1.5,连接绿灯,温度超过设置报警值的最小值的报警灯sbit led=P02;unsigned char code dispcode=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90;/共阳/*基本驱动程/*函数功能:外部中断 0 服务程序,设置报警上
6、限值入口参数:出口参数:*/void INT0ISR(void)interrupt 0 using 3 if(flag=1&xianzhi_t500)xianzhi_t=(xianzhi_t+10);if(flag=254&xianzhi_h500)xianzhi_t=500;/设置的上限最高为99/else if(xianzhi_h900)xianzhi_h=900;/else if(xianzhi_t0)xianzhi_t=0;/设置的下限最低为0/else if(xianzhi_h0)xianzhi_t=(xianzhi_t-10);if(flag=254&xianzhi_h100)xi
7、anzhi_h=(xianzhi_h-10);/if(xianzhi_t10)/xianzhi_t=0;/设置的下限最低为0/if(xianzhi_h0;x-)for(y=110;y0;y-);/*函数功能:按键扫描程序入口参数:出口参数:*/void button(void)if(k1=0)blueled=0;/除了 SHT11 的工作灯(黄灯)亮之外,其余灯灭greenled=1;RT_flag=1;/启动温度读取与转换函数ReadTemperature()BZ_flag=1;/启动蜂鸣器扫描函数speaker()SHT11_flag=1;/SHT11 标志位为 1 EX0=0;/关外部中
8、断 0 EX1=0;/关外部中断 1 if(k2=0)delay(300);if(k2=0)greenled=0;/除了设置报警值时的状态灯(绿灯)亮之外,其余灯灭blueled=1;RT_flag=0;BZ_flag=0;xianzhi_t=200;/进入设置报警值时,初始显示30 xianzhi_h=500;EX0=1;/开外部中断 1 EX1=1;/开外部中断 1 if(k5=0)名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 11 页 -华北水利水电学院毕业设计5 delay1(100);if(k5=0)while(!k5);delay(50);while(!k5);fl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年温湿度检测程序 2022 温湿度 检测 程序
限制150内