標(biāo)題:
單片機(jī)檢測溫濕度
[打印本頁]
作者:
明天怎樣
時間:
2017-10-22 15:45
標(biāo)題:
單片機(jī)檢測溫濕度
芯片用到了STC12,顯示屏是16
#include<STC12C5A60S2.h>
#include <intrins.h>
#include <Lcd_1602.h>
#include <Time_Delay.h>
#include"DHT11.h"
sbit wd_key1=P3^4;
sbit wd_key2=P3^5;
sbit sd_key1=P3^6;
sbit sd_key2=P3^7;
sbit jr_jdq=P2^0;
sbit js_jdq=P2^1;
sbit fs_jdq=P2^2;
void key_sm(void);
extern float F16T,F16RH; //全局變量聲明
unsigned wd_num=20,sd_num=50,t;
void main ()
{
Init_Lcd();
LCD_write_str(0,1,"4561def135"); //液晶預(yù)顯示測試
LCD_value(0,0,34.345);
Delay_ms(200);
Init_Lcd();
TMOD=0X01; //設(shè)置定時器0為模式一,即16位計算模式
TH0=(65536-50000)/256; //給計數(shù)寄存器賦值,
TL0=(65536-50000)%256;
EA=1; //開啟總中斷
ET0=1; //開啟定時器0中斷
TR0=1; //啟動定時器0
while(1)
{
getDHT11();
key_sm();
LCD_write_str(0,0,"T=");
LCD_value(3,0,F16T); LCD_write_str(7,0,"\"C"); //字符" 應(yīng)用轉(zhuǎn)義格式
LCD_write_str(10,0," ");LCD_value(11,0,wd_num);
LCD_write_str(0,1,"RH=");
LCD_value(4,1,F16RH); LCD_write_str(8,1,"%");
LCD_write_str(10,1," ");LCD_value(11,1,sd_num);
Delay_ms(100);
if(t>20)
{
if(F16T<wd_num)
{jr_jdq=0;}else jr_jdq=1;
if(F16RH<sd_num)
{js_jdq=0;}else js_jdq=1;
if((F16T>wd_num)&(F16RH>sd_num))
{fs_jdq=0;} else fs_jdq=1;
t=0;
// Delay_ms(100);
}
}
}
void key_sm(void)
{
if(wd_key1==0)
{
while(!wd_key1);
wd_num=wd_num+1;}
if(wd_key2==0)
{
while(!wd_key2);
wd_num=wd_num-1;}
if(sd_key1==0)
{
while(!sd_key1);
sd_num=sd_num+1;}
if(sd_key2==0)
{
while(!sd_key2);
sd_num=sd_num-1;}
}
//中斷函數(shù),關(guān)鍵字"interrupt" , 這是C語言的中斷函數(shù)表示法,1表時定地器0
void timer() interrupt 1
{
TH0=(65536-50000)/256; //給計數(shù)寄存器賦值
TL0=(65536-50000)%256;
t++;
//key_sm();
}
復(fù)制代碼
02,溫濕度傳感器DHT11
DHT11溫濕度LCD1602.zip
2017-10-22 15:44 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
43.48 KB, 下載次數(shù): 17, 下載積分: 黑幣 -5
作者:
gxlin
時間:
2017-10-26 15:30
給個電路圖
作者:
akaozys
時間:
2018-8-11 15:00
非常贊
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1