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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4205|回復: 2
收起左側

單片機空氣質量傳感器Proteus仿真程序 LCD12864顯示

[復制鏈接]
ID:751181 發表于 2020-11-17 13:10 | 顯示全部樓層 |閱讀模式
用LCD12864實現顯示個人信息和空氣中顆粒物質量濃度,根據PM2.5質量濃度分析空氣質量等級并顯示。
1.   第一個屏顯示:設計任務名稱,姓名,班級,學號后三位;
2.   第二個屏顯示:PM1.0、PM2.5、PM10的質量濃度數據(帶單位),顯示空氣質量等級;
3.   空氣顆粒物質量濃度數據和學號后三位通過串口從模擬器接收后顯示,顯示數據可以與模擬器更改值同步;
4. 可通過按鍵進行屏幕換;
5. 通過串口上傳空氣質量等級數值給模擬器,等級數值對應為:1-優,2-良,3-輕度污染,4-中度污染,5-重度污染,6-嚴重污染,模擬器成功接收會自動顯示空氣質量等級。
信息未改,勿外泄哦

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.png

單片機源程序如下:
  1. #include <reg51.h>
  2. #include "lcd12864.h"
  3. #include "key.h"
  4. #include "delay.h"
  5. #include "uart.h"

  6. void new_flash_dat(void);
  7. void keyscan(void);
  8. void pmsqua_anly(void);
  9. void screen_1(unsigned char a);
  10. void screen_2(unsigned int PM1,unsigned int PM2,unsigned int PM10,unsigned int denji);
  11. void Lcd_cleardat(char hang,char lie,char num);

  12. unsigned char quality=2;
  13. unsigned int pr_PM1_0=0,pr_PM2_5=0,pr_PM10=0,pr_sno=0;
  14. unsigned int PM1_0,PM2_5,PM10,sno;
  15. unsigned char b=104;print_mode=0;

  16. void main()
  17. {               
  18.         uart_init();
  19.         Lcd_Init();
  20.         Lcd_Clear();
  21.         screen_1(sno);
  22.   
  23.         while(1)
  24.         {
  25.                 keyscan();
  26.                 new_flash_dat();
  27.                 pmsqua_anly();
  28.                 uart_sendbyte(quality);
  29.         }       
  30. }

  31. void keyscan(void)
  32. {
  33.         if(key1_scan()!=0)
  34.         {
  35.                 print_mode++;
  36.                 print_mode%=2;
  37.                 Lcd_Clear();
  38.                 switch(print_mode)
  39.                 {
  40.                         case 0:screen_1(sno);break;
  41.                         case 1:screen_2(PM1_0,PM2_5,PM10,quality);break;
  42.                         default:break;
  43.                 }
  44.         }
  45. }

  46. void new_flash_dat(void)
  47. {
  48.         if(print_mode==1&&(PM1_0!=pr_PM1_0||PM2_5!=pr_PM2_5||PM10!=pr_PM10))
  49.         {
  50.                 Lcd_Clear();
  51.                 pmsqua_anly();
  52.                 screen_2(PM1_0,PM2_5,PM10,quality);
  53.                 pr_PM1_0=PM1_0;
  54.                 pr_PM2_5=PM2_5;
  55.                 pr_PM10=PM10;
  56.         }
  57.         if(print_mode==0&&pr_sno!=sno)
  58.         {
  59.                 Lcd_Clear();
  60.                 screen_1(sno);
  61.                 pr_sno=sno;
  62.         }
  63. }

  64. void pmsqua_anly(void)
  65. {
  66.         if(PM2_5<35)
  67.                 quality=1;
  68.         else if(PM2_5<75)
  69.                 quality=2;
  70.         else if(PM2_5<115)
  71.                 quality=3;
  72.         else if(PM2_5<150)
  73.                 quality=4;
  74.         else if(PM2_5<250)
  75.                 quality=5;
  76.         else quality=6;
  77. }
  78. void screen_1(unsigned char a)
  79. {
  80.          char clas[]="17-1";
  81.          Lcd_Show_Chinese(0,16,12);
  82.          Lcd_Show_Chinese(0,32,13);
  83.          Lcd_Show_Chinese(0,48,14);
  84.          Lcd_Show_Chinese(0,64,15);
  85.          Lcd_Show_Chinese(0,80,16);
  86.          Lcd_Show_Chinese(0,96,17);
  87.        
  88.          Lcd_Show_Chinese(2,16,6);
  89.          Lcd_Show_Chinese(2,32,7);
  90.          Lcd_Show_Char(2,48,':');
  91.          Lcd_Show_Chinese(2,56,9);
  92.          Lcd_Show_Chinese(2,72,10);
  93.          Lcd_Show_Chinese(2,88,11);
  94.          
  95.          Lcd_Show_Chinese(4,16,0);
  96.          Lcd_Show_Chinese(4,32,1);
  97.          Lcd_Show_Char(4,48,':');
  98.          Lcd_Show_Chinese(4,56,2);
  99.          Lcd_Show_Chinese(4,72,3);
  100.          Lcd_Show_String(4,88,clas);
  101.          
  102.          Lcd_Show_Chinese(6,16,4);
  103.          Lcd_Show_Chinese(6,32,5);
  104.          Lcd_Show_Char(6,48,':');
  105.          Lcd_Show_Num(6,56,a);
  106. }

  107. void screen_2(unsigned int PM1,unsigned int PM2,unsigned int PM10,unsigned int dengji)
  108. {
  109.          Lcd_Show_String(0,0,"PM1.0:");
  110.          Lcd_Show_Num(0,48,PM1);
  111.          Lcd_Show_String(0,72,"ug/m^3");
  112.        
  113.          Lcd_Show_String(2,0,"PM2.5:");
  114.          Lcd_Show_Num(2,48,PM2);
  115.          Lcd_Show_String(2,72,"ug/m^3");
  116.        
  117.          Lcd_Show_String(4,0,"PM10 :");
  118.          Lcd_Show_Num(4,48,PM10);
  119.          Lcd_Show_String(4,72,"ug/m^3");
  120.        
  121.          Lcd_Show_Chinese(6,16,18);
  122.    Lcd_Show_Chinese(6,32,19);
  123.    Lcd_Show_Char(6,48,':');
  124.    switch(dengji)
  125.    {
  126.                  case 0:Lcd_Show_Chinese(6,56,29);break;
  127.                  case 1:Lcd_Show_Chinese(6,56,20);
  128.                         Lcd_cleardat(6,72,6);break;
  129.                  case 2:Lcd_Show_Chinese(6,56,21);
  130.                         Lcd_cleardat(6,72,6);break;
  131.                  case 3:Lcd_Show_Chinese(6,56,22);
  132.                         Lcd_Show_Chinese(6,72,26);
  133.                         Lcd_Show_Chinese(6,88,27);
  134.                         Lcd_Show_Chinese(6,104,28);break;
  135.                  case 4:Lcd_Show_Chinese(6,56,23);
  136.                         Lcd_Show_Chinese(6,72,26);
  137.                         Lcd_Show_Chinese(6,88,27);
  138.                         Lcd_Show_Chinese(6,104,28);break;
  139.                  case 5:Lcd_Show_Chinese(6,56,24);
  140. ……………………

  141. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
空氣質量檢測.7z (366.14 KB, 下載次數: 164)

評分

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

查看全部評分

回復

使用道具 舉報

ID:328014 發表于 2020-11-20 01:58 | 顯示全部樓層
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

ID:747552 發表于 2020-12-25 09:46 | 顯示全部樓層
看著很不錯呢   借鑒一下呢
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩快播电影网 | 在线看av的网址 | 欧美乱人伦视频 | 一区二区精品在线 | 成人亚洲精品久久久久软件 | 国产精品美女在线观看 | 91视频免费视频 | 国产精品日韩欧美一区二区 | 在线日韩 | 又爽又黄axxx片免费观看 | 日本成人在线观看网站 | 国产精品1 | 国产精品亚洲精品 | 亚洲欧美第一视频 | 成人精品视频在线 | 亚洲视频在线看 | 91久久精品一区二区二区 | 久久久久国产精品www | 男人的天堂久久 | 91一区二区 | 美女二区 | 久久国产精品视频 | 日韩av在线一区二区 | 亚洲欧美中文字幕 | 欧美日韩激情 | 欧美精产国品一二三区 | 中文字幕视频一区 | 久久久不卡网国产精品一区 | 亚洲日韩欧美一区二区在线 | 天天插天天操 | 午夜精品一区二区三区在线观看 | 久久一区二区三区四区五区 | 欧美日韩综合精品 | 欧美亚洲日本 | 国产不卡在线 | 男女污污动态图 | 午夜国产| 少妇精品亚洲一区二区成人 | 男人的天堂中文字幕 | 色婷婷av久久久久久久 | 日本人麻豆|