找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2815|回復(fù): 1
收起左側(cè)

正式開始的第一個(gè)項(xiàng)目:stm32+dht11+oled+bh1750代碼

[復(fù)制鏈接]
ID:958636 發(fā)表于 2022-2-27 14:37 | 顯示全部樓層 |閱讀模式

實(shí)物圖片

實(shí)物圖片

串口數(shù)據(jù)

串口數(shù)據(jù)


樓下是main.c函數(shù),有關(guān)于引腳接口,在代碼里面都有,可以下載查看
51hei.png
Keil代碼下載: stm32c8t6TEMP.7z (215.92 KB, 下載次數(shù): 82)



回復(fù)

使用道具 舉報(bào)

ID:958636 發(fā)表于 2022-2-27 14:38 | 顯示全部樓層
#include "stm32f10x.h"
#include "delay.h"
#include "oled.h"
#include "sys.h"
#include "DTH117.h"
#include "usart.h"
#include "timer.h"
#include "led.h"
#include "bh1750.h"
u8 temp = 0;//定義全局變量
u8 humi = 0;
u8 t = 0;
u8 light = 0;

void TIM2_Int_Init(u16 arr,u16 psc);//對該函數(shù)進(jìn)行提前聲明,防止**《》**標(biāo)記行報(bào)錯(cuò)
//void LED_Init();//包含了頭文件這個(gè)可以省
int main()
{               
                SystemInit();//開啟系統(tǒng)時(shí)鐘
                delay_init();//初始化延時(shí)函數(shù)       
                TIM2_Int_Init(4999,7199);//**《》**       
//                LED_Init();
                NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
                //0正常顯示;1對應(yīng)的反顯和旋轉(zhuǎn)顯示。
                OLED_ColorTurn(0);
                OLED_DisplayTurn(0);
                OLED_Init();//oled初始化
//                OLED_Clear();//對oled進(jìn)行一次清屏
/*******************************dht11操作函數(shù)*********************************/
                Usart1_Init(115200);//開啟串口一
                DHT11_Init();//初始化dht11模塊
                bh1750_Init();//初始化bh1750
//顯示溫濕度       

                                OLED_ShowChinese(0,16,4,16,1);
                                OLED_ShowChinese(16,16,3,16,1);
                                OLED_ShowChinese(32,16,5,16,1);
                       
                                OLED_ShowChinese(0,32,2,16,1);
                                OLED_ShowChinese(16,32,3,16,1);
                                OLED_ShowChinese(32,32,5,16,1);
                                //顯示冒號u8*是強(qiáng)制類型轉(zhuǎn)換
                                OLED_ShowString(49,16,(u8*)":",16,1);
                                OLED_ShowString(49,32,(u8*)":",16,1);
                                OLED_Refresh();
                while(1){
/*******************函數(shù)功能:啟動(dòng)dht11并進(jìn)行溫濕度檢測,進(jìn)行串口打印******************/
//                                DHT11_Read_Data(&temp,&humi);//DHT11讀取數(shù)據(jù)
//                               
//                                UsartPrintf(USART_DEBUG,"濕度%d 溫度%d",temp,humi);//串口打印函數(shù)
//                                delay_ms(100);//延時(shí)0.1秒
/*******************函數(shù)功能:啟動(dòng)BH1750光照強(qiáng)度傳感器********************/
//                                 Light=getValue();
//                                bh1750_ReadOneTime();
//                                bh1750_ReadContinuous1();
/*******************函數(shù)功能:啟動(dòng)OLED顯示屏********************/
//這個(gè)函數(shù)沒用起來,還請大佬門在評論區(qū)幫忙解決一下,罵輕點(diǎn)。。。。
//////////                                OLED_ShowString(35,16,(u8*)"濕度:",16,1);
//////////                                OLED_ShowString(35,32,(u8*)"溫度:",16,1);
//////////                                OLED_Refresh();
                               
                                if(t%10==0)                        //每100ms讀取一次
                                {                                               
                                        DHT11_Read_Data(&temp,&humi);        //讀取溫濕度
                                        UsartPrintf(USART_DEBUG,"濕度%d 溫度%d",temp,humi);        //打印串口數(shù)據(jù)        ,再加一個(gè)光照強(qiáng)度%d    light                            
                                        OLED_ShowNum(57,16,humi,2,16,1);        //顯示濕度                    
                                        OLED_ShowNum(57,32,temp,2,16,1);        //顯示溫度        
//                                 OLED_ShowNum(57,64,light,2,16,1);          
                                        OLED_Refresh();                //更新顯示到OLED
                                }                                  
                                delay_ms(50);
                                t++;
                                       
               
        }  
//////////                OLED_ShowString(0,0,(u8*)"溫度",16,0);       
//delay_ms(5000);
}


       

第一次發(fā)見諒,main.c沒發(fā)出去
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表