資源簡介
源碼 原理圖 PCB 51溫濕度檢測通過1602實時顯示 并且按鍵控制溫濕度閾值 控制四個繼電器 加濕趨勢升溫降溫 帶開題報告參考 論文 材料清單
代碼片段和文件信息
#include?
#include?
#include?
#include?
??
#define?uchar?unsigned?char
#define?uint?unsigned?int
//定義四個輸出端口
sbit?Led_jiashi=P3^4; //加濕
sbit?Led_qushi=P3^3; //去濕
sbit?Led_jiangwen=P3^1; //降溫
sbit?Led_shengwen=P3^2; //升溫
//定義三個設置按鍵
sbit?Key_SET?=?P2^0;
sbit?Key_ADD?=?P2^1;
sbit?Key_SUB?=?P2^2;
sbit?Key_OK??=?P2^3;
//定義24C02數(shù)據(jù)口
sbit?SCL?=?P1^0;
sbit?SDA?=?P1^1;
//定義DHT11數(shù)據(jù)口
sbit?DATA?=?P1^7;
sbit?buzz=P3^5;
//定義LCD1602端口
sbit?E=P1^3; //1602使能引腳
//sbit?RW=P2^6; //1602讀寫引腳
sbit?RS=P1^2; //1602數(shù)據(jù)/命令選擇引腳
//定義全局變量
uchar?U8FLAGU8tempU8comdataU8RH_data_H_tempU8RH_data_L_tempU8T_data_H_tempU8T_data_L_tempU8checkdata_temp;
uchar?U8RH_data_HU8RH_data_LU8T_data_HU8T_data_LU8checkdata;
uchar?Modehumiditytemperature;
char?THTLHHHL;
bit?bdata?FlagStartRHhotcoldhumiddryBJ;
//定時器0初始化
void?Timer0_Init()
{
ET0?=?1;????????//允許定時器0中斷
TMOD?=?0x11;???????//定時器工作方式選擇
TL0?=?0xFF;?????
TH0?=?0x4B;?????//定時器賦予初值
TR0?=?1;????????//啟動定時器
}
//定時器0中斷
void?Timer0_ISR?(void)?interrupt?1?using?0
{
uchar?RHCounter;
TL0?=?0xFF;
TH0?=?0x4B;?????//定時器賦予初值
RHCounter++;
if(RHCounter%10==0&&BJ==1)
buzz=!buzz;
else?if(BJ==0)
buzz=1;
//每2秒鐘啟動一次溫濕度轉(zhuǎn)換
????if?(RHCounter?>=?40)
????{
???????FlagStartRH?=?1;
???RHCounter?=?0;
????}
}
/*********************************
??????base??DRIVE
**********************************/
void?DELAY(unsigned?int?t)
{
while(t!=0)
t--;
}
/******************************
??????IIC??DRIVE
******************************/
void?IICStart(void)
{
?????SCL=0;??
? ?DELAY(1);
?????SDA=1;?SCL=1;?DELAY(1);
?????SDA=0;?DELAY(1);
?????SCL=0;?
}
void?IICStop(void)
{
?SDA=0;SCL=1;?DELAY(1);
?????SDA=1;?DELAY(1);
?????SCL=0;?
}
void?SEND0(void)
{
SDA=0;
SCL=1;
DELAY(1);
SCL=0;
}
void?SEND1(void)
{
SDA=1;
DELAY(1);
SCL=1;
DELAY(1);
SCL=0;
}
bit?Check_Ack(void)
{
unsigned?char?errtime=250;
DELAY(1);
SCL=1;?
DELAY(1);
CY=SDA;
while(CY)
{
errtime--;?
CY=SDA;
if?(!errtime)
{
IICStop();
return?1;
}
}
DELAY(1);
SCL=0;?
return?0;
}
void?Write_byte(unsigned?char?dat)?
{
????unsigned?char?i;
for(i=0;i<8;i++)
{
if((dat< SEND1();
else
SEND0();
}
}
unsigned?char?Read_byte(void)
{
unsigned?char?itemp=0;?????
for(i=0;i<8;i++)
{
????????SDA=1;
????SCL=1;
????DELAY(1);??
if(SDA==1)
{
temp=temp<<1;
temp=temp|0x01;
}
else
temp=temp<<1;
?SCL=0;
??}
??return?temp;
}
/************************************
??????EEPROM??DRIVE
??Addr:from?0x00-->
*************************************/
unsigned?char?rdeeprom(unsigned?char?addr)
{?
????????unsigned?char?temp=0;
bit?flag=0;
IICStart();
Write_byte(0xa0);
????????Check_Ack();
Write_byte(addr);
Check_Ack();
IICStart();
Write_byte(0xa1);
Check_Ack();
temp=Read_byte();
SEND1();
IICStop
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-05-15?21:53??項目?1????基于51單片機溫濕度的檢測及控制的設計\
?????目錄???????????0??2018-04-16?18:04??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\
?????文件????????6376??2017-10-11?11:18??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\STARTUP.A51
?????文件???????14052??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\STARTUP.LST
?????文件?????????749??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\STARTUP.OBJ
?????文件???????31551??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht
?????文件???????28626??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.LST
?????文件???????40829??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.M51
?????文件???????36802??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.OBJ
?????文件????????1059??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.build_log.htm
?????文件???????14616??2017-11-22?12:21??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.c
?????文件????????7388??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.hex
?????文件??????????39??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.lnp
?????文件?????????235??2017-11-24?23:24??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.plg
?????文件??????174830??2018-04-16?18:04??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.uvgui.26964
?????文件???????70737??2018-03-27?13:32??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.uvgui.Shinelon
?????文件????????5737??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.uvopt
?????文件???????14421??2018-04-16?17:38??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht.uvproj
?????文件???????55257??2017-11-24?19:37??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht_uvopt.bak
?????文件???????13389??2017-10-11?11:18??項目?1????基于51單片機溫濕度的檢測及控制的設計\1-源程序\dht_uvproj.bak
?????目錄???????????0??2017-12-05?20:55??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\
?????目錄???????????0??2017-12-05?20:55??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\1602資料\
?????文件??????262017??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\1602資料\1602液晶說明.pdf
?????文件??????268206??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\1602資料\1602液晶資料[1].pdf
?????文件?????1205196??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\1602資料\EN_TC1602.pdf
?????文件?????1347951??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\1602資料\字符手冊.pdf
?????文件??????577648??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\24c02.pdf
?????文件??????267902??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\AT24C02SC.pdf
?????文件?????5226818??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\AT89C51.pdf
?????文件?????1581040??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\AT89S51.doc
?????文件???????52224??2017-10-11?11:19??項目?1????基于51單片機溫濕度的檢測及控制的設計\10-開發(fā)資料\AT89S52的中文資料.doc
............此處省略196個文件信息
評論
共有 條評論