資源簡介
采用8位的STC89C51單片機做控制器,程序采用C語言編程。內附源碼、原理圖及PCB

代碼片段和文件信息
/*************************************************
更多51單片機資料請關注微信公眾號:電子應用學習館
**************************************************
*****************《電子應用學習館》***************
***************************************************/
#include
#include
#include //頭文件
#define?uc?unsigned?char
#define?ui?unsigned?int
sbit?in_go = P1^3;
sbit?in_back = P1^2;//手動前進后退按鍵?
sbit?out_go = P3^0;
sbit?out_back = P3^5;//電機控制輸出?
sbit?limit_go = P3^4;
sbit?limit_back = P3^6;//前進后退限位開關?
sbit?led_go = P1^4;
sbit?led_back = P1^5;//前進后退限位指示燈?
sbit?light = P1^0;//光線傳感器?
sbit?change = P1^1;//手動自動切換按鍵(默認自動)??
sbit?led_zhishi?= P1^7;
sbit?buzz = P1^6;
sbit?W1=P2^2;
sbit?W2=P2^1;
//定義DHT11數據口
sbit?DATA?=?P2^0;
uc?U8FLAGU8tempU8comdataU8RH_data_H_tempU8RH_data_L_tempU8T_data_H_tempU8T_data_L_tempU8checkdata_temp;
uc?U8RH_data_HU8RH_data_LU8T_data_HU8T_data_LU8checkdata;
uc?Modehumidity;
bit?bdata?FlagStartRHhotcoldhumiddry;
bit?bdata?flag1flag2change_flagflag_shanflag_shan1flag_shan2flag_HH;
uc?mnshan;
uc?code?table[11]={ //共陰極字型碼
0x3f??//--0
0x06??//--1
0x5b??//--2
0x4f??//--3
0x66??//--4
0x6d??//--5
0x7d??//--6
0x07??//--7
0x7f??//--8
0x6f??//--9
0x00???//--NULL
};
//定時器0初始化
void?Timer0_Init()
{
ET0?=?1;????????//允許定時器0中斷
TMOD?=?1;???????//定時器工作方式選擇
TL0?=?0xb0;?????
TH0?=?0x3c;?????//定時器賦予初值
TR0?=?1;????????//啟動定時器
EA=1;
}
void?Delay1(ui?j)
{
????uc?i;
????for(;j>0;j--)
????{?
for(i=0;i<27;i++);
????}
}?
void??Delay_10us(void)
{
????uc?i;
????i--;
????i--;
????i--;
????i--;
????i--;
????i--;
}
void??COM(void)
{
????uc?i;
????for(i=0;i<8;i++) ???
????{
?? ????U8FLAG=2;
??? while((!DATA)&&U8FLAG++);
Delay_10us();
Delay_10us();
Delay_10us();
?? U8temp=0;
????????if(DATA)U8temp=1;
????U8FLAG=2;
while((DATA)&&U8FLAG++);
??? //超時則跳出for循環 ??
??? if(U8FLAG==1)break;
??? //判斷數據位是0還是1 ?
??? ???
//?如果高電平高過預定0高電平值則數據位為?1?
??? ?
U8comdata<<=1;
??? U8comdata|=U8temp;????????//0
????}//rof
}
//--------------------------------
//-----溫濕度讀取子程序?------------
//--------------------------------
//----以下變量均為全局變量--------
//----溫度高8位==?U8T_data_H------
//----溫度低8位==?U8T_data_L------
//----濕度高8位==?U8RH_data_H-----
//----濕度低8位==?U8RH_data_L-----
//----校驗?8位?==?U8checkdata-----
//----調用相關子程序如下----------
//----?Delay();?Delay_10us();COM();?
//--------------------------------
uc?RH(void)
{
????//主機拉低18ms?
????DATA=0;
Delay1(180);??//原來為5
DATA=1;
//總線由上拉電阻拉高?主機延時20us
Delay_10us();
Delay_10us();
Delay_10us();
Delay_10us();
//主機設為輸入?判斷從機響應信號?
DATA=1;
//判斷從機是否有低電平響應信號?如不響應則跳出,響應則向下運行 ??
if(!DATA) ?//T?! ??
{
????U8FLAG=2;
????//判斷從機是否發出?80us?的低電平響應信號是否結束 ?
????while((!DATA)&&U8FLAG++);
????U8FLAG=2;
????//判斷從機是否發出?80us?的高電平,如發出則進入數據接收狀態
????while((DATA)&&U8FLAG++);
????//數據接收狀態 ?
????COM();
????U8RH_data_H_temp=U8comd
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????38431??2016-10-27?10:46??晾衣架\原理圖\Backup?of?mokuai.Sch
?????文件??????37907??2015-12-03?11:11??晾衣架\原理圖\Previous?Backup?of?mokuai.Sch
?????文件?????540672??2015-12-03?11:12??晾衣架\原理圖\zong.Bkp
?????文件?????540672??2016-10-27?10:46??晾衣架\原理圖\zong.ddb
?????文件??????62512??2016-10-27?10:46??晾衣架\原理圖\原理圖.pdf
?????文件?????????44??2018-12-07?00:00??晾衣架\原理圖\更多嵌入式資料.txt
?????文件?????????44??2018-12-07?00:00??晾衣架\更多嵌入式資料.txt
?????文件???????6376??2015-01-13?23:16??晾衣架\源碼\STARTUP.A51
?????文件??????14463??2019-03-22?23:54??晾衣架\源碼\STARTUP.LST
?????文件????????749??2019-03-22?23:54??晾衣架\源碼\STARTUP.OBJ
?????文件??????15577??2019-03-22?23:54??晾衣架\源碼\zidongliangyijia
?????文件???????1085??2019-03-22?23:54??晾衣架\源碼\zidongliangyijia.build_log.htm
?????文件???????2466??2019-03-22?23:54??晾衣架\源碼\zidongliangyijia.hex
?????文件?????????65??2019-03-22?23:54??晾衣架\源碼\zidongliangyijia.lnp
?????文件??????21414??2019-03-22?23:54??晾衣架\源碼\zidongliangyijia.M51
?????文件???????1228??2015-01-13?23:16??晾衣架\源碼\zidongliangyijia.plg
?????文件??????85727??2019-03-22?23:55??晾衣架\源碼\zidongliangyijia.uvgui.Administrator
?????文件???????5469??2019-03-22?23:55??晾衣架\源碼\zidongliangyijia.uvopt
?????文件??????14047??2019-03-22?23:55??晾衣架\源碼\zidongliangyijia.uvproj
?????文件??????55691??2015-01-13?23:16??晾衣架\源碼\zidongliangyijia_uvopt.bak
?????文件??????13428??2015-01-13?23:16??晾衣架\源碼\zidongliangyijia_uvproj.bak
?????文件???????7602??2019-03-22?23:54??晾衣架\源碼\zifongliangyijia.c
?????文件??????15182??2019-03-22?23:54??晾衣架\源碼\zifongliangyijia.LST
?????文件??????17801??2019-03-22?23:54??晾衣架\源碼\zifongliangyijia.OBJ
?????文件?????????44??2018-12-07?00:00??晾衣架\源碼\更多嵌入式資料.txt
?????目錄??????????0??2019-03-22?23:56??晾衣架\原理圖
?????目錄??????????0??2019-03-22?23:56??晾衣架\源碼
?????目錄??????????0??2019-03-22?23:56??晾衣架
-----------?---------??----------?-----??----
??????????????1498696????????????????????28
............此處省略1個文件信息
評論
共有 條評論