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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

stm32f407驅動IIC OLED顯示DHT11溫濕度 求幫助

[復制鏈接]
跳轉到指定樓層
樓主
ID:434945 發表于 2018-12-6 17:32 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
700黑幣
stm32f407ze驅動4個引腳的OLED顯示DHT11溫濕度

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

使用道具 舉報

沙發
ID:198608 發表于 2018-12-7 09:35 | 只看該作者
我有51單片機的0.96寸屏幕的。
回復

使用道具 舉報

板凳
ID:434945 發表于 2018-12-7 15:16 | 只看該作者
謝謝,只需要stm32的
回復

使用道具 舉報

地板
ID:529505 發表于 2019-5-7 13:52 | 只看該作者
#include "stm32f4xx.h"
#include "systick.h"
#include "led.h"
#include "uart.h"
#include "oled.h"
#include "gec.h"
#include "dht11.h"
#include "exti.h"


extern  uint8_t RecvData[20];     //±£′æ½óêÕμÄêy¾Y
extern  uint8_t RecvFlag;
uint8_t Screen_flag=0;
uint8_t Temp_default=30;
uint8_t Hum_default=95;

//ÏÔê¾±è½ÏÖμ
uint8_t show_compare_value(void)
{
        uint8_t i;
        uint8_t StrBuf[20];
       
        for(i=0;i<2;i++)
                OLED_ShowCHinese16X16(16*i,0,GEC ,i);  //Ôúμú1¡¢2ò3ÏÔ꾡°Î¶衱á½×Ö
        for(i=8;i<11;i++)
                OLED_ShowCHinese16X16(16*i-96,0,GEC ,i);  //Ôúμú1¡¢2ò3ÏÔ꾡°±è½ÏÖμ¡±á½×Ö
        sprintf(StrBuf,":%hhu",Temp_default);
        OLED_ShowStr(80, 0,StrBuf, 2);
        for(i=2;i<4;i++)
                OLED_ShowCHinese16X16(16*i-32,2,GEC ,i);  //Ôúμú3¡¢4ò3ÏÔ꾡°êa¶è¡±á½×Ö
        for(i=8;i<11;i++)
                OLED_ShowCHinese16X16(16*i-96,2,GEC ,i);  //Ôúμú3¡¢4ò3ÏÔ꾡°±è½ÏÖμ¡±á½×Ö
        memset(StrBuf ,0 ,sizeof(StrBuf));
        sprintf(StrBuf,":%hhu",Hum_default);
        OLED_ShowStr(80, 2,StrBuf, 2);
        OLED_ShowStr(0, 4,"    ", 2);
       
        delay_ms(500);
}
//ÏÔê¾Î¶èêa¶è
uint8_t show_temp_hum(void)
{
        uint8_t i;
        uint8_t ret;
        uint8_t DataBuf[5];
        uint8_t StrBuf[20];
       
        //Çå¿Õ½óêÕÄú′æ
        memset(DataBuf ,0 ,sizeof(DataBuf));
        ret = DHT11_ReadData(DataBuf);
        if(ret)
        {
                printf("DHT11_ReadData Error!\r\n");
                return 0;
        }
        else
        {
                for(i=0;i<2;i++)
                        OLED_ShowCHinese16X16(16*i,0,GEC ,i);  //Ôúμú1¡¢2ò3ÏÔ꾡°Î¶衱á½×Ö
                memset(StrBuf ,0 ,sizeof(StrBuf));
                sprintf(StrBuf,":%hhu.%hhu    ",DataBuf[2],DataBuf[3]);
                OLED_ShowStr(32, 0,StrBuf, 2);
                for(i=2;i<4;i++)
                        OLED_ShowCHinese16X16(16*i-32,2,GEC ,i);  //Ôúμú3¡¢4ò3ÏÔ꾡°êa¶è¡±á½×Ö
                memset(StrBuf ,0 ,sizeof(StrBuf));
                sprintf(StrBuf,":%hhu.%hhu    ",DataBuf[0],DataBuf[1]);
                OLED_ShowStr(32, 2,StrBuf, 2);
                if(DataBuf[2]>=Temp_default||DataBuf[0]>=Hum_default)  //3¬3ö
                {
                        for(i=6;i<8;i++)
                                OLED_ShowCHinese16X16(16*i-96,4,GEC ,i);  //Ôúμú5¡¢6ò3ÏÔ꾡°Î£ÏÕ¡±á½×Ö
                        LED0(LED_ON);
                        LED1(LED_ON);
                        LED2(LED_ON);
                        LED3(LED_ON);
                }
                else
                {
                        for(i=4;i<6;i++)
                                OLED_ShowCHinese16X16(16*i-64,4,GEC ,i);  //Ôúμú5¡¢6ò3ÏÔ꾡°Õy3£¡±á½×Ö
                        LED0(LED_OFF);
                        LED1(LED_OFF);
                        LED2(LED_OFF);
                        LED3(LED_OFF);
                }
        }
        delay_ms(500);
}


int main(void)
{
       
        /****************** ó2¼t3õê¼»ˉ ********************/
        Systick_Init();
        UART_Init(115200);
        LED_Init();
        OLED_Init();
        DHT11_Init();
        EXTI_0_Init();
        printf("HardWare Init Success!\r\n");
        OLED_CLS();//ÇåÆá
       
        /****************** êμÏÖμÄ1|Äü ********************/
        while(1)
        {
                if(Screen_flag==0)
                {
                        show_temp_hum();
                }
                else if(Screen_flag==1)
                {
                        show_compare_value();
                }
        }
       
}
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产亚洲欧美另类一区二区三区 | 欧美在线一区二区三区 | 一级毛片视频在线观看 | 日本视频中文字幕 | 中文字幕一区二区三区在线视频 | 国产91久久久久久 | 午夜av电影 | 国产欧美一区二区三区日本久久久 | 国产亚洲第一页 | 日本精品视频在线观看 | 一区二区精品在线 | 日韩精品一二三区 | 在线久草| 日韩精品一区二区三区中文在线 | 在线国产一区二区三区 | 欧美网址在线观看 | 亚洲男人天堂av | a级黄色网| 丝袜美腿一区二区三区 | 一级毛片免费 | 成人精品鲁一区一区二区 | 日韩在线日韩 | 欧美日韩精品影院 | 中文字幕视频在线 | 色爱综合网 | 91高清视频在线观看 | 欧美日韩精品一区 | 国产成人免费视频网站视频社区 | 午夜免费看 | 欧美一区二区三区在线播放 | 免费午夜剧场 | 国产乱码精品1区2区3区 | 在线观看 亚洲 | 免费在线观看一区二区三区 | 日日干夜夜干 | 国产精品黄视频 | 瑟瑟免费视频 | 欧美日韩一区二区在线观看 | 日韩欧美在线一区 | 欧美日韩国产不卡 | 中文字幕人成乱码在线观看 |