久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2019|回復: 0
打印 上一主題 下一主題
收起左側

51溫度傳感+LCD代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:201207 發表于 2017-5-16 09:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
//****************************************************************//
//
#include
typedefunsignedcharU8;/*definedforunsigned8-bitsintegervariable無符號8位整型變量*/
typedefsignedcharS8;/*definedforsigned8-bitsintegervariable有符號8位整型變量*/
typedefunsignedintU16;/*definedforunsigned16-bitsintegervariable無符號16位整型變量*/
typedefsignedintS16;/*definedforsigned16-bitsintegervariable有符號16位整型變量*/
typedefunsignedlongU32;/*definedforunsigned32-bitsintegervariable無符號32位整型變量*/
typedefsignedlongS32;/*definedforsigned32-bitsintegervariable有符號32位整型變量*/
typedeffloatF32;/*singleprecisionfloatingpointvariable(32bits)單精度浮點數(32位長度)*/
typedefdoubleF64;/*doubleprecisionfloatingpointvariable(64bits)雙精度浮點數(64位長度)*/
#defineucharunsignedchar
#defineuintunsignedint
#defineData_0_time4
//----------------------------------------------//
//----------------IO口定義區--------------------//
sbitP2_0=P2^0;
//----------------定義區--------------------//
U8U8FLAG,k;
U8U8count,U8temp;
U8U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;
U8U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;
U8U8comdata;
U8outdata[5];//定義發送的字節數
U8indata[5];
U8count,count_r=0;
U8str[5]={"RS232"};
U16U16temp1,U16temp2;
U8a[]={"Temperature:"};
U8b[]={"Humidity:"};
U8wd_sw,wd_gw,sd_sw,sd_gw;
voidDelay(U16j)
{
U8i;
for(;j>0;j--)
for(i=0;i<27;i++);
}
voidDelay_10us(void)
i--;
voidCOM(void)
for(i=0;i<8;i++)
U8FLAG=2;
while((!P2_0)&&U8FLAG++);
Delay_10us();
U8temp=0;
if(P2_0)U8temp=1;
while((P2_0)&&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();
voidRH(void)
//主機拉低18ms
P2_0=0;
Delay(180);
P2_0=1;
//總線由上拉電阻拉高主機延時20us
//主機設為輸入判斷從機響應信號
//判斷從機是否有低電平響應信號如不響應則跳出,響應則向下運行
if(!P2_0)//T!
//判斷從機是否發出80us的低電平響應信號是否結束
//判斷從機是否發出80us的高電平,如發出則進入數據接收狀態
//數據接收狀態
COM();
U8RH_data_H_temp=U8comdata;
U8RH_data_L_temp=U8comdata;
U8T_data_H_temp=U8comdata;
U8T_data_L_temp=U8comdata;
U8checkdata_temp=U8comdata;
//數據校驗
U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
if(U8temp==U8checkdata_temp)
U8RH_data_H=U8RH_data_H_temp;
U8RH_data_L=U8RH_data_L_temp;
U8T_data_H=U8T_data_H_temp;
U8T_data_L=U8T_data_L_temp;
U8checkdata=U8checkdata_temp;
}//fi
voidmain()
U8i,j;
LcdInit();
Delay(1);//延時100US(12M晶振)
while(1)
RH();//調用溫濕度讀取子程序
str[0]=U8T_data_H;
str[1]=U8T_data_L;
str[2]=U8RH_data_H;
str[3]=U8RH_data_L;
str[4]=U8checkdata;
wd_sw=U8T_data_H/10%10+0x30;
wd_gw=U8T_data_H%10+0x30;
sd_sw=U8RH_data_H/10%10+0x30;
sd_gw=U8RH_data_H%10+0x30;
a[12]=wd_sw;
a[13]=wd_gw;
a[14]=0xdf;
a[15]='C';
a[16]='\0';
LcdWriteCom(0x00+0x80);
for(i=0;i<16;i++)
LcdWriteData(a);
b[9]=sd_sw;
b[10]=sd_gw;
b[11]='\%';
b[12]='\0';
LcdWriteCom(0x42+0x80);
for(i=0;i<12;i++)
LcdWriteData(b);
//讀取模塊數據周期不易小于2S
Delay(30000);

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩成人在线观看 | 久久免费精品视频 | 久久国内 | 国产一区2区 | 欧美一级网站 | 91中文字幕在线 | 最新国产在线 | 黄色毛片网站在线观看 | 国产成人精品a视频一区www | 欧美精品三区 | 欧美精品久久久久久久久久 | 一本久久a久久精品亚洲 | 日韩一级欧美一级 | 久久一 | 国产美女自拍视频 | 一级少妇女片 | 国产成人高清视频 | 欧美精品一二三区 | 9久久精品| 国产精品123区 | av在线伊人 | 91看片网| 欧美日日 | 在线看日韩av| 国产在线精品一区二区 | 欧美成人精品欧美一级 | 91超碰caoporn97人人 | 成人蜜桃av | 欧美高清一级片 | 亚洲精品在线播放 | 视频一二三区 | 中文字幕日韩欧美一区二区三区 | 一级午夜aaa免费看三区 | 日日夜夜精品视频 | 国产成人99久久亚洲综合精品 | aaaaaa大片免费看最大的 | 精品粉嫩超白一线天av | 99久久精品免费看国产四区 | 国产视频福利在线观看 | 成人h动漫亚洲一区二区 | 成人免费观看视频 |