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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4181|回復(fù): 8
打印 上一主題 下一主題
收起左側(cè)

學(xué)習(xí)STM32單片機(jī)自帶RTC的使用,SSD1306 OLED顯示,DHT11數(shù)據(jù)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:845241 發(fā)表于 2020-11-28 22:13 | 只看該作者 |只看大圖 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
STM32F103 學(xué)習(xí)STM32自帶RTC的使用,SSD1306 OLED顯示,DHT11數(shù)據(jù)


單片機(jī)源程序如下:
  1. #include "delay.h"
  2. #include "sys.h"
  3. #include "oled.h"
  4. #include "bmp.h"
  5. #include "rtc.h"
  6. #include "dht11.h"

  7. int main(void)
  8.   {        u8 t;
  9.         delay_init();                     //延時函數(shù)初始化          
  10.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 設(shè)置中斷優(yōu)先級分組2         //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  11.         OLED_Init();                        //初始化OLED
  12.         OLED_ColorTurn(0);//0正常顯示,1 反色顯示
  13.         OLED_DisplayTurn(0);//0正常顯示 1 屏幕翻轉(zhuǎn)顯示               
  14.         OLED_Clear();
  15.                
  16.         while(RTC_Init())                //RTC初始化        ,一定要初始化成功
  17.         {
  18.                 OLED_ShowString(8,6,"RTC ERROR!     ",16,1);
  19.                 OLED_Refresh();
  20.                 delay_ms(800);
  21.                 OLED_Clear();
  22.                 OLED_ShowString(8,6,"RTC Trying...  ",8,1);
  23.                 OLED_Refresh();
  24.                 delay_ms(800);
  25.                 OLED_Clear();
  26.         }       
  27.        
  28.         OLED_ShowString(8,6,"RTC OK!  ",8,1);
  29.         OLED_Refresh();       
  30.   delay_ms(800);
  31.         OLED_Clear();
  32.         OLED_ShowChinese(25,4,9,12,1);//12*12 年       
  33.         OLED_ShowChinese(50,4,10,12,1);//12*12 月       
  34.         OLED_ShowChinese(76,4,2,12,1);//12*12 日       
  35.         OLED_ShowChinese(0,52,11,12,1);//12*12 溫
  36.         OLED_ShowChinese(13,52,13,12,1);//12*12 度
  37.         OLED_ShowChinese(69,52,12,12,1);//12*12 濕
  38.         OLED_ShowChinese(82,52,13,12,1);//12*12 度
  39.         OLED_ShowChinese(48,52,14,12,1);//12*12 ℃       
  40.         OLED_ShowChinese(116,52,15,12,1);//12*12 %       
  41.         //OLED_DrawCircle(100,26,18);
  42.         OLED_Refresh();

  43.         while(1)
  44.         {               
  45.                 if(t!=calendar.sec)
  46.                 {
  47.                         t=calendar.sec;
  48.                         OLED_ShowString(28,19,":",24,1);
  49.                         OLED_ShowNum(0,5,calendar.w_year,4,12,1);               
  50.                         OLED_ShowNum(38,5,calendar.w_month,2,12,1);       
  51.                         OLED_ShowNum(63,5,calendar.w_date,2,12,1);
  52.                         OLED_Refresh();
  53.                         //switch(calendar.week)
  54.                         //{
  55.                         //        case 0:
  56.                         //                OLED_ShowChinese(62,1,2,12,0); //12*12 日
  57.                         //                break;
  58.                         //        case 1:
  59.                         //                OLED_ShowChinese(62,1,3,12,0); //12*12 一
  60.                         //                break;
  61.                         //        case 2:
  62.                         //                OLED_ShowChinese(62,1,4,12,0); //12*12 二
  63.                         //                break;
  64.                         //        case 3:
  65.                         //                OLED_ShowChinese(62,1,5,12,0); //12*12 三
  66.                         //                break;
  67.                         //        case 4:
  68.                         //                OLED_ShowChinese(62,1,6,12,0); //12*12 四
  69.                         //                break;
  70.                         //        case 5:
  71.                         //                OLED_ShowChinese(62,1,7,12,0); //12*12 五
  72.                         //                break;
  73.                         //        case 6:
  74.                         //                OLED_ShowChinese(62,1,8,12,0); //12*12 六
  75.                         //                break;  
  76.                         //}
  77.                 OLED_ShowNum(4,20,calendar.hour,2,24,1);
  78.                 OLED_ShowNum(40,20,calendar.min,2,24,1);
  79.                 OLED_ShowNum(68,32,calendar.sec,2,12,1);
  80.                 OLED_Refresh();

  81.                 if(DHT11_ReadData())  //如果DHT11讀取到數(shù)據(jù)了,那么就顯示                 
  82.                         {  
  83.                                 OLED_ShowNum(32,52,DHT11_GetTemp()/256,2,12,1);    //輸出溫度  
  84.                                 OLED_ShowNum(100,52,DHT11_GetHem()/256,2,12,1);    //輸出濕度
  85.                          }  
  86.                 else   //若DHT11采集不成功,那么就失敗  
  87.                         {  
  88.                                 OLED_ShowString(32,52,"??",12,1);   
  89.                                 OLED_ShowString(100,52,"??",12,1);   
  90.                         }  
  91.                         delay_ms(500);
  92.                         delay_ms(500);  //延時,避免刷新DHT11數(shù)據(jù)太塊                         
  93.         }          
  94. }
  95. }
復(fù)制代碼

所有資料51hei提供下載:
RTC+dht11+OLED.rar (361.17 KB, 下載次數(shù): 99)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:490458 發(fā)表于 2020-11-29 18:40 | 只看該作者
能補(bǔ)一下硬件連接說明嗎?
回復(fù)

使用道具 舉報

板凳
ID:229641 發(fā)表于 2020-11-30 13:51 來自手機(jī) | 只看該作者
時間精度呢?
回復(fù)

使用道具 舉報

地板
ID:845241 發(fā)表于 2020-12-1 19:11 | 只看該作者
shenchaobiao 發(fā)表于 2020-11-29 18:40
能補(bǔ)一下硬件連接說明嗎?

附件里面有連接說明
回復(fù)

使用道具 舉報

5#
ID:845241 發(fā)表于 2020-12-1 19:12 | 只看該作者

內(nèi)部時鐘精度不行,提高精度還是需要外部時鐘電路
回復(fù)

使用道具 舉報

6#
ID:820090 發(fā)表于 2020-12-1 19:18 | 只看該作者
資料里面包含什么呢
回復(fù)

使用道具 舉報

7#
ID:87000 發(fā)表于 2020-12-2 08:44 | 只看該作者
這個可以好好參考
回復(fù)

使用道具 舉報

8#
ID:845241 發(fā)表于 2020-12-2 08:46 | 只看該作者
zhiliaoyi 發(fā)表于 2020-12-1 19:18
資料里面包含什么呢

源代碼和所需庫及連接說明
回復(fù)

使用道具 舉報

9#
ID:862583 發(fā)表于 2021-1-4 08:51 | 只看該作者
燒錄成功但oled顯示不出來,怎么回事?
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲国产小视频 | 成人av网站在线观看 | 国产精品1区2区 | 中国三级黄色录像 | 日韩视频在线免费观看 | 日本中文字幕一区 | 精品国产乱码久久久久久闺蜜 | 午夜精品在线观看 | 国产精品视频免费播放 | 国产日韩视频在线 | 欧美日韩国产一区二区三区 | 色综合中文 | 国产区在线 | 久久看精品 | 在线观看中文字幕 | 精品亚洲一区二区三区 | 成人av高清在线观看 | 国内自拍视频在线观看 | 亚洲av一级毛片 | 久久精品国产99国产精品 | 久久国产精品一区二区三区 | 欧美free性 | 成人免费视频 | 欧美a∨| 久久久蜜桃一区二区人 | 国产精品亚洲精品久久 | 99re热这里只有精品视频 | 国产亚洲欧美在线 | 色婷婷一区 | 亚洲欧美视频一区二区 | 精品一区国产 | 欧美影院| 精精国产xxxx视频在线播放 | 亚洲精品一区在线观看 | 精品国产免费人成在线观看 | 国产日韩欧美 | 99热这里只有精品8 激情毛片 | 91免费在线 | 国产精品久久久久久久久久免费看 | 精品国产一区二区久久 | 午夜影院在线免费观看视频 |