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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

stm32的溫濕度加pm2.5相冊(cè)的制作 附源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
可以實(shí)現(xiàn)溫濕度顯示pm2.5顯示可以根究外界亮度改變亮度可以更換flash內(nèi)的圖片

單片機(jī)源程序如下:
  1. #include "stm32f10x.h"
  2. #include "stdio.h"
  3. #include "dida.h"
  4. #include "usar.h"
  5. #include "lcd.h"
  6. #include "HTU21D.H"
  7. #include "iic.h"
  8. #include "spi.h"
  9. #include "flash.h"
  10. #include "adc.h"
  11. #include "pwm.h"
  12. #include "iwdg.h"
  13. const u8 pm[]={"pm2.5:"};
  14. const u8 ug[]={"ug/m3"};
  15. extern u8 G,j;
  16. extern u8 cnt;
  17. u16 pmu;
  18. u8 j1,m;
  19. static float tem=-5,htu=0;
  20. static int data;
  21. int main()
  22. {        
  23.         adc_init();//adc-gpio初始化
  24.         SPI_Flash_Init();                  //SPI FLASH 初始化9g
  25.         Lcd_Init();                        //初始化OLED
  26.         LCD_ShowPicture(0,0,239,239,0);
  27.         TIM1_PWM_Init(4096,71);
  28.         HTU21DInit();//HTU21D初始化函數(shù)
  29.         usart_init(9600);//串口初始化
  30.         LCD_ShowChinese(10,180,0,16,WHITE,1);
  31.         LCD_ShowChinese(26,180,1,16,WHITE,1);
  32.         LCD_ShowChar(42,180,':',1,WHITE);
  33.                                 
  34.         LCD_ShowChinese(10,200,2,16,WHITE,1);
  35.         LCD_ShowChinese(26,200,3,16,WHITE,1);
  36.         LCD_ShowChar(42,200,':',1,WHITE);
  37.         LCD_ShowChinese(92,200,5,16,WHITE,1);
  38.                                 
  39.         LCD_ShowString(10,220,pm,WHITE);
  40.         LCD_ShowString(92,220,ug,WHITE);
  41.         didal_init(90000);//滴答定時(shí)器初始化
  42.         iwdg_init(4,1500);//看門狗初始化
  43.         while(1)
  44.         {
  45.                 data=Get_Adc_Average(3,1);
  46.                 if(data<400)
  47.                 {
  48.                         TIM_SetCompare1(TIM1,(4096-data));
  49.                 }
  50.                 else
  51.                 {
  52.                         TIM_SetCompare1(TIM1,(4096-400));
  53.                 }
  54.                 if(j!=j1)
  55.                 {
  56.                         j1=j;
  57.                         LCD_ShowPicture(0,0,239,239,j);
  58.                         LCD_ShowChinese(10,180,0,16,WHITE,1);
  59.                         LCD_ShowChinese(26,180,1,16,WHITE,1);
  60.                         LCD_ShowChar(42,180,':',1,WHITE);
  61.                                 
  62.                         LCD_ShowChinese(10,200,2,16,WHITE,1);
  63.                         LCD_ShowChinese(26,200,3,16,WHITE,1);
  64.                         LCD_ShowChar(42,200,':',1,WHITE);
  65.                         LCD_ShowChinese(92,200,5,16,WHITE,1);
  66.                                 
  67.                         LCD_ShowString(10,220,pm,WHITE);
  68.                         LCD_ShowString(96,220,ug,WHITE);
  69.                 }
  70.                 if(G&&(j==j1))
  71.                 {
  72.                         G=0;
  73.                         if(tem>=0)
  74.                         {
  75.                                 LCD_Fill1(50,180,114,196,j);
  76.                                 LCD_ShowNum1(50,180,tem,4,WHITE);
  77.                                 LCD_ShowChinese(92,180,4,16,WHITE,1);
  78.                         }
  79.                         else
  80.                         {
  81.                                 LCD_Fill1(50,180,116,196,j);
  82.                                 LCD_ShowChar(50,180,'-',1,WHITE);
  83.                                 LCD_ShowNum1(58,180,tem,4,WHITE);
  84.                                 LCD_ShowChinese(100,180,4,16,WHITE,1);
  85.                         }
  86.                         LCD_Fill1(50,200,90,216,j);
  87.                         LCD_ShowNum1(50,200,htu,4,WHITE);
  88.                         LCD_Fill1(58,216,88,234,j);
  89.                         LCD_ShowNum(58,220,pmu,4,WHITE);
  90.                         if(tem<20)
  91.                         {
  92.                                 LCD_Fill1(160,180,224,196,j);
  93.                                 LCD_ShowChinese(160,180,6,16,WHITE,1);
  94.                                 LCD_ShowChinese(176,180,7,16,WHITE,1);
  95.                                 LCD_ShowChinese(192,180,8,16,WHITE,1);
  96.                                 LCD_ShowChinese(208,180,9,16,WHITE,1);
  97.                         }
  98.                         else if(tem>20&&tem<37)
  99.                         {
  100.                                 LCD_Fill1(160,180,224,196,j);
  101.                                 LCD_ShowChinese(160,180,10,16,WHITE,1);
  102.                                 LCD_ShowChinese(176,180,11,16,WHITE,1);
  103.                                 LCD_ShowChinese(192,180,12,16,WHITE,1);
  104.                                 LCD_ShowChinese(208,180,13,16,WHITE,1);
  105.                         }
  106.                         else if((tem>37))
  107.                         {
  108.                                 LCD_Fill1(160,180,224,196,j);
  109.                                 LCD_ShowChinese(160,180,14,16,WHITE,1);
  110.                                 LCD_ShowChinese(176,180,15,16,WHITE,1);
  111.                                 LCD_ShowChinese(192,180,16,16,WHITE,1);
  112.                                 LCD_ShowChinese(208,180,17,16,WHITE,1);
  113.                         }
  114.                         if(htu<45)
  115.                         {
  116.                                 LCD_Fill1(160,200,224,216,j);
  117.                                 LCD_ShowChinese(160,200,18,16,WHITE,1);
  118.                                 LCD_ShowChinese(176,200,19,16,WHITE,1);
  119.                                 LCD_ShowChinese(192,200,20,16,WHITE,1);
  120.                                 LCD_ShowChinese(208,200,21,16,WHITE,1);
  121.                         }
  122.                         else if((htu>45)&&(htu<60))
  123.                         {
  124.                                 LCD_Fill1(160,200,224,216,j);
  125.                                 LCD_ShowChinese(160,200,10,16,WHITE,1);
  126.                                 LCD_ShowChinese(176,200,11,16,WHITE,1);
  127.                                 LCD_ShowChinese(192,200,12,16,WHITE,1);
  128.                                 LCD_ShowChinese(208,200,13,16,WHITE,1);
  129.                         }
  130.                         else if(htu>60)
  131.                         {
  132.                                 LCD_Fill1(160,200,224,216,j);
  133.                                 LCD_ShowChinese(160,200,22,16,WHITE,1);
  134.                                 LCD_ShowChinese(176,200,23,16,WHITE,1);
  135.                                 LCD_ShowChinese(192,200,24,16,WHITE,1);
  136.                                 LCD_ShowChinese(208,200,25,16,WHITE,1);
  137.                         }
  138.                         if(pmu<=50)
  139.                         {
  140.                                 LCD_Fill1(160,220,224,236,j);
  141.                                 LCD_ShowChinese(160,220,26,16,WHITE,1);
  142.                         }
  143.                         else if((pmu>50)&&(pmu<=100))
  144.                         {
  145.                                 LCD_Fill1(160,220,224,236,j);
  146.                                 LCD_ShowChinese(160,220,27,16,WHITE,1);
  147.                         }
  148.                         else if((pmu>100)&&(pmu<=150))
  149.                         {
  150.                                 LCD_Fill1(160,220,224,236,j);
  151.                                 LCD_ShowChinese(160,220,28,16,WHITE,1);
  152.                                 LCD_ShowChinese(176,220,29,16,WHITE,1);
  153.                                 LCD_ShowChinese(192,220,30,16,WHITE,1);
  154.                                 LCD_ShowChinese(208,220,31,16,WHITE,1);
  155.                         }
  156.                         else if((pmu>150)&&(pmu<=200))
  157.                         {
  158.                                 LCD_Fill1(160,220,224,236,j);
  159.                                 LCD_ShowChinese(160,220,32,16,WHITE,1);
  160.                                 LCD_ShowChinese(176,220,33,16,WHITE,1);
  161.                                 LCD_ShowChinese(192,220,34,16,WHITE,1);
  162.                                 LCD_ShowChinese(208,220,35,16,WHITE,1);
  163.                         }
  164.                         else if((pmu>200)&&(pmu<=300))
  165.                         {
  166.                                 LCD_Fill1(160,220,224,236,j);
  167.                                 LCD_ShowChinese(160,220,36,16,WHITE,1);
  168.                                 LCD_ShowChinese(176,220,37,16,WHITE,1);
  169.                                 LCD_ShowChinese(192,220,38,16,WHITE,1);
  170.                                 LCD_ShowChinese(208,220,39,16,WHITE,1);
  171.                         }
  172.                         else if((pmu>300))
  173.                         {
  174.                                 LCD_Fill1(160,220,224,236,j);
  175.                                 LCD_ShowChinese(160,220,40,16,WHITE,1);
  176.                                 LCD_ShowChinese(176,220,41,16,WHITE,1);
  177.                                 LCD_ShowChinese(192,220,42,16,WHITE,1);
  178.                                 LCD_ShowChinese(208,220,43,16,WHITE,1);
  179.                         }
  180.                 }
  181.                 tem=HTU21DWork(0xf3)/(float)100;//觸發(fā)開啟溫度檢測(cè)
  182.                 htu=((HTU21DWork(0xf5)/(float)100));//觸發(fā)開啟濕度檢測(cè)
  183.                 IWDG_ReloadCounter();
  184.         }
  185. }
復(fù)制代碼

所有資料51hei提供下載:
pcb工程.7z (2.23 MB, 下載次數(shù): 19)
溫濕度pm2.5.7z (200.85 KB, 下載次數(shù): 31)
其他資料.7z (4.66 MB, 下載次數(shù): 24)

評(píng)分

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

查看全部評(píng)分

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

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久精品青青大伊人av | 亚洲视频一区在线 | 亚洲成人网在线 | 日韩美女一区二区三区在线观看 | 有码在线| 亚洲一区免费 | 日韩欧美成人一区二区三区 | 成年男女免费视频网站 | 久草在线在线精品观看 | 精品中文字幕久久 | 国产一区二区成人 | 在线成人免费视频 | 自拍视频一区二区三区 | 国产91av视频在线观看 | 欧美日韩综合 | av一级久久| 亚洲精品在线观看网站 | 亚洲精品一区二区三区蜜桃久 | 午夜在线视频 | 欧美日韩高清在线一区 | www.日本在线播放 | 精品久久香蕉国产线看观看亚洲 | 国产成人精品一区二区三区视频 | 国产日韩欧美一区二区 | 一区二区影院 | 欧美精品在线免费观看 | 视频一区二区三区中文字幕 | 国产精品久久久久免费 | 91精品国产91久久久久久吃药 | 91免费看片神器 | 日韩中文字幕 | 超碰91在线 | 国产精品成人免费 | 欧美性另类 | 精品日韩一区二区 | 国产在线精品一区二区三区 | 亚洲三区在线观看 | 91久久久久久 | 久久亚洲一区二区三区四区 | 日韩欧美一级片 | 91av视频|