91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 44KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-07-18
  • 語言: 其他
  • 標簽:

資源簡介

該程序為51單片機控制加濕器繼電器,通過1602顯示DHT11溫度濕度的應該程序,帶有手動按鍵功能,報警功能和提示音等,帶管教說明。經過測試,完美運行。

資源截圖

代碼片段和文件信息

/***************************************************************

**功能描述:1602顯示?dht11溫度濕度
**管腳說明:顯示器1602管腳RS_P2.4RW_P2.5EN_P2.6?排口P0
????????????dht11管腳date_P2.7?
??蜂鳴器P2^3?
??加濕器繼電器控制端_P2^2
藍牙TX_RX?RX_TX
按鍵KEY1_P12?KEY2_P11?KEY3_P10
水位輸出為P21
**更新時間:2019/4/16

****************************************************************/

#?include??????????????//頭文件不需做修改
#?include?

typedef?unsigned?char?BYTE;?????//定義部分
typedef?unsigned?int?WORD;
#define?uint?unsigned?int?
#define?uchar?unsigned?char?


sbit?beep=P2^3;???????????????????//蜂鳴器
sbit?hd=P2^2;???????????????????//繼電器控制端
sbit?io=P2^7;???????????????????//dht11data端接單片機的P2.7口?
sbit?rw=P2^5;???????????????????//一下三行是設置lcd1602的使能端
sbit?rs=P2^4;?
sbit?ep=P2^6;?

sbit?key1=P1^2;???//按鍵聲明
sbit?key2=P1^1;?
sbit?key3=P1^0;?

sbit?water=P2^1;?//讀取水位腳
?

typedef?bit?BOOL;???????????????//此聲明一個布爾型變量即真或假//?

uchar?data_byte;????????????????//定義部分
uchar?RHRLTHTLnum;?

?

//***************延時函數*************************************?

?void?delay(uchar?ms)??????????//毫秒延時模塊//?
{?
??uchar?i;?
??while(ms--)?????????????????
??for(i=0;i<100;i++);?
}?


void?delay1()??????????????????//一個for循環大概需要8個多機器周期,一個機器周期為1us,晶振為12MHz,本函數延時8us?
{?
??uchar?i;?
??for(i=0;i<1;i++);?
}?
/****************************************************************/

/**************************lcd模塊*******************************/?

BOOL?lcd_bz()//測試lcd忙碌狀態返回值為布爾型數值真或假‘1‘.‘0‘??
{?
??BOOL?result;
??rs=0;???????????//?讀忙信號
??rw=1;
??ep=1;
??_nop_();
??_nop_();
??_nop_();
??_nop_();
??result?=?(BOOL)(P0&0x80);
??ep=0;
??result?;
}?????

void?write_cmd(uchar?cmd)//寫指令//?
{?
??while?(lcd_bz());
??rs=0;
??rw=0;
??ep=0;
??_nop_();
??_nop_();
??P0=cmd?;
??_nop_();
??_nop_();
??_nop_();
??_nop_();
??ep=1;
??_nop_();
??_nop_();
??_nop_();
??_nop_();
??ep=0;
}?
void?write_addr(uchar?addr)//寫地址//?
{?
??write_cmd(addr|0x80);//LCD第一行的首地址為0x80第二行的首地址為0x80+0x40=0xc0?
}?
void?write_byte(uchar?dat)?//寫字節//?
{?
??while?(lcd_bz());
??rs=1;
??rw=0;
??ep=0;
??_nop_();
??_nop_();
??P0=dat?;
??_nop_();
??_nop_();
??_nop_();
??_nop_();
??ep=1;
??_nop_();
??_nop_();
??_nop_();
??_nop_();
??ep=0;
}
/******************************************************************************/

/*******************************初始化函數**************************************/

void?lcd_init()?//lcd初始化//?
{?
??write_cmd(0x38);//設置LCD兩行顯示一個數據由5*7點陣表示數據由8跟線傳輸?
??delay(1);?
??write_cmd(0x0c);//清除屏幕顯示?
??delay(1);?
??write_cmd(0x06);//設定輸入方式增量不移位?
??delay(1);?
??write_cmd(0x01);//開整體顯示關光標不閃爍?
??delay(1);?
}?
void?io_init()//管腳初始化
{
??beep=0;??????//關閉繼電器和蜂鳴器
hd=1;
key1=0;????//按鍵位置零
key2=0;
key3=0;

}
/*******************************************************************************/

/**************************cld顯示函數*******************************************/

void?display(uchar?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????85639??2019-04-25?13:01??程序\1.uvgui.超哥
?????文件????????5454??2019-04-16?14:39??程序\1.uvopt
?????文件???????14024??2019-04-16?14:37??程序\1.uvproj
?????目錄???????????0??2019-04-21?16:06??程序\Listings\
?????文件???????29269??2019-04-21?16:06??程序\Listings\1.m51
?????文件???????21038??2019-04-21?16:06??程序\Listings\main.lst
?????文件???????14545??2019-04-21?16:05??程序\Listings\STARTUP.lst
?????文件???????11348??2019-04-21?17:01??程序\main.c
?????目錄???????????0??2019-04-21?16:06??程序\objects\
?????文件????????6771??2019-04-21?16:06??程序\objects\1
?????文件????????1330??2019-04-21?16:06??程序\objects\1.build_log.htm
?????文件????????3740??2019-04-21?16:06??程序\objects\1.hex
?????文件??????????93??2019-04-21?16:06??程序\objects\1.lnp
?????文件?????????109??2019-04-21?16:06??程序\objects\main.__i
?????文件????????9145??2019-04-21?16:06??程序\objects\main.obj
?????文件?????????828??2019-04-21?16:05??程序\objects\STARTUP.obj
?????文件????????6376??2016-04-01?17:01??程序\STARTUP.A51

評論

共有 條評論