久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
STM32+DHT11帶oled7腳的源程序
[打印本頁]
作者:
a574637947
時間:
2018-7-19 21:14
標(biāo)題:
STM32+DHT11帶oled7腳的源程序
自測可用
單片機(jī)源程序如下:
#include "stm32f10x.h"
#include "DHT11.h"
#include "Delay.h"
#include "bsp_usart.h"
#include "oled.h"
DHT11_Data DHT11;
void DHT11_GPIO_IN(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin = DHT11_PIN;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //設(shè)置浮空輸入
GPIO_Init(DHT11_PORT,&GPIO_InitStructure);
}
/********************************************************
函數(shù):DHT11_GPIO_OUT
描述:設(shè)置GPIO口為輸出狀態(tài)
參數(shù):無
返回:無
********************************************************/
void DHT11_GPIO_OUT(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin = DHT11_PIN;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //設(shè)置推挽輸出
GPIO_Init(DHT11_PORT,&GPIO_InitStructure);
}
/********************************************************
函數(shù):DHT11WriteStart
描述:發(fā)起開始信號
參數(shù):無
返回:無
********************************************************/
void DHT11WriteStart(void)//開始標(biāo)志
{
DHT11_GPIO_OUT(); //設(shè)置io為輸出模式
DHT11_DATA_OUT(1); //拉高
DHT11_DATA_OUT(0); //拉低
Delay_Ms(20); //主機(jī)拉低總線必須大于18ms
DHT11_DATA_OUT(1); //拉高
Delay_Us(30); //主機(jī)發(fā)送開始信號結(jié)束后延時等待20-40us
DHT11_GPIO_IN(); //啟動信號開始后,為如數(shù)據(jù)將io設(shè)置設(shè)置為輸入模式
}
/********************************************************
函數(shù):DHT11ReadByte
描述:從DHT11中讀取一位數(shù)據(jù)
參數(shù):無
返回:返回讀出來的數(shù)據(jù)
********************************************************/
u8 DHT11ReadByte(void)
{
u8 temp=0,i;
for(i=0;i<8;i++)//讀取8位數(shù)據(jù)
{
while(DHT11_DATA_IN()==0);//等待變高電平[DHT在單片機(jī)采集DATA引腳輸出低電平時,從低功耗模式轉(zhuǎn)至高速模式,等待DATA引腳變?yōu)楦唠娖絔
/*DHT11 以26us~28us的高電平表示“0”,以70us的高電平表示“1”
每一bit數(shù)據(jù)都以50us低電平時隙開始,當(dāng)檢測到60us后的電平區(qū)別狀態(tài)*/
Delay_Us(60);//1.DHT輸出 60us低電平 作為應(yīng)答信號2.DHT輸出 80us高電平 通知微處理器準(zhǔn)備接受數(shù)據(jù)
if(DHT11_DATA_IN()==1) //60us后還是高電平則是“1”
{
while(DHT11_DATA_IN()==1);
temp|=(u8)(0x01<<(7-i));
}
else //否則是“0”
{
temp&=(u8)~(0x01<<(7-i));
}
}
return temp;
}
/********************************************************
函數(shù):DHT11Read
描述:采樣當(dāng)前溫濕度值
參數(shù):
RH:濕度值的整數(shù)部分
RL: 濕度值的小數(shù)部分
TH: 溫度值的整數(shù)部分
TL: 溫度值的小數(shù)部分
返回:
********************************************************/
char a[5];
int temp;
void DHT11Read(void)
{
DHT11WriteStart(); //發(fā)起開始信號
if(DHT11_DATA_IN()==0)
{
while(DHT11_DATA_IN()==0);
while(DHT11_DATA_IN()==1);
DHT11.RH= DHT11ReadByte(); //濕度高8位
DHT11.RL= DHT11ReadByte(); //濕度低8位
DHT11.TH= DHT11ReadByte(); //溫度高8位
DHT11.TL= DHT11ReadByte(); //溫度低8位
DHT11.sum= DHT11ReadByte(); //校驗(yàn)和
DHT11_GPIO_OUT(); //采樣結(jié)束后設(shè)置io口為輸出,等待下一次開始信號
DHT11_DATA_OUT(1); //設(shè)置總線空閑狀態(tài)為高電平
}
if(DHT11.sum== DHT11.RH+DHT11.RL+DHT11.TH+DHT11.TL) //校驗(yàn)和與計算出的數(shù)據(jù)相等
{
// OLED_ShowString(6,6,"c");
// printf("當(dāng)前環(huán)境濕度為%d.%d﹪,當(dāng)前環(huán)境溫度為%d.%d℃\r\n",DHT11.RH,DHT11.RL,DHT11.TH,DHT11.TL);
// DHT11.TL=2;
OLED_16x16CNStr(0,0,"23");
OLED_ShowChar(32,0,':');
temp=(int)DHT11.RH;
sprintf(a,"%d",temp);
OLED_ShowString(48,0,a);
OLED_ShowChar(64,0,'.');
temp=(int)DHT11.RL;
sprintf(a,"%d",temp);
OLED_ShowString(72,0,a);
OLED_ShowChar(80,0,'%');
OLED_16x16CNStr(0,2,"45");
OLED_ShowChar(32,2,':');
temp=(int)DHT11.TH;
sprintf(a,"%d",temp);
OLED_ShowString(48,2,a);
OLED_ShowChar(64,2,'.');
temp=(int)DHT11.TL;
sprintf(a,"%d",temp);
OLED_ShowString(72,2,a);
OLED_16x16CNStr(80,2,"6");
}
}
復(fù)制代碼
所有資料51hei提供下載:
DHT11.rar
(47.18 KB, 下載次數(shù): 46)
2018-7-20 05:05 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者:
admin
時間:
2018-7-20 05:06
此貼需要補(bǔ)全原理圖等資料后可獲得100+積分
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
夜夜草视频
|
高清视频一区二区三区
|
久久宗合色
|
国产成人在线一区
|
日本 欧美 三级 高清 视频
|
www.av在线
|
天天干夜夜操
|
国产精品一区二区av
|
在线免费观看视频黄
|
亚洲精品一区二区三区中文字幕
|
蜜桃日韩
|
国产一区欧美
|
91精品国产综合久久久久久
|
超碰美女在线
|
四虎影院在线播放
|
日韩免费福利视频
|
欧区一欧区二欧区三免费
|
日韩精品四区
|
91香蕉视频在线观看
|
久久久久久国产精品免费
|
亚洲视频在线观看免费
|
91视频大全
|
国产一区欧美一区
|
玖玖视频国产
|
国产91一区
|
欧美性大战久久久久久久蜜臀
|
精品视频一区二区在线观看
|
国产一级电影在线观看
|
91 在线
|
国产精品一区二区三区四区
|
欧洲一区二区三区
|
www.成人.com
|
久久久精品一区二区三区四季av
|
国产东北一级毛片
|
日韩欧美在线不卡
|
狠狠色综合久久丁香婷婷
|
男人天堂网av
|
在线免费观看a级片
|
国产成人精品一区二区
|
成人综合视频在线观看
|
欧美视频精品
|