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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)自動灌溉系統(tǒng)程序 藍(lán)橋杯國賽題

[復(fù)制鏈接]
ID:233449 發(fā)表于 2017-9-18 20:22 | 顯示全部樓層 |閱讀模式
  1. /*
  2.    首頁面為    自動灌溉           按下S6 可調(diào)節(jié)濕度閥值 按下 S5可加  S4為減  再按下s6返回
  3.    按下S7后    為手動灌溉 在按下S7可返回首頁面
  4.    在手動頁面下    按下S6可控制蜂鳴器的開關(guān)      按下S5對繼電器開關(guān)   按下S4關(guān)閉繼電器

  5. */
  6. #include "all.h"
  7. sbit bee=P0^6;
  8. sbit jdq=P0^4;
  9. uchar ws=50;           //溫度標(biāo)識位
  10. uchar sign;
  11. uint shidu,door;
  12. void beep1();
  13. void beep2();
  14. void jidianqi1();
  15. void jidianqi2();
  16. void wetset();
  17. void Delay10ms();
  18. void Delay200ms();
  19. void timer0init();
  20. void wetset()
  21. {
  22.   if(s5==0)
  23. {
  24. Delay200ms(); ws=ws+1;
  25. if(ws>99) ws=0;
  26. }
  27. else if(s4==0)
  28. {
  29.    Delay200ms();ws=ws-1;
  30.   if(ws<0) ws=99;
  31. }
  32. }

  33. void jidianqi1()
  34. {
  35.   P2=(P2&0x1f)|0xa0;
  36. jdq=0;
  37. }
  38. void jidianqi2()
  39. {
  40.   P2=(P2&0x1f)|0xa0;
  41. jdq=1;
  42. }

  43. void beep1()
  44. {
  45. P2=(P2&0x1f)|0xa0;
  46.    bee=0;
  47. }
  48. void beep2()
  49. {
  50.   P2=(P2&0x1f)|0xa0;
  51. bee=1;
  52. }
  53. void main()
  54. {
  55. beep1();jidianqi1();
  56.     ds1302init();
  57. pcf8591init();
  58. while(1)
  59. {
  60.    if(s7==0)
  61.    {
  62.   Delay200ms();
  63.     while(1)
  64.     {
  65.       P2=(P2&0x1f)|0x80;
  66.     P0=0xfe;P2&=0x1f;             //點(diǎn)亮L1
  67.     timeshidu();
  68.     timeshidudis();               //時間濕度顯示
  69.      if(shidu<ws)
  70.      {
  71.        jidianqi2();
  72.      }
  73.      else
  74.       jidianqi1();
  75.      if(s6==0)
  76.      {
  77.       Delay200ms();
  78.        while(1)
  79.     {
  80.      uint i;
  81.      for(i=0;i<25;i++)
  82.      {
  83.        wenduzhi1();wendusetdis();       //調(diào)節(jié)溫度報警值
  84.       wetset();                     
  85.       if(s6==0&&i==10)
  86.       {
  87.         at24c02write(0x10,ws);            //保存溫度報警值
  88.        ws=at24c02read(0x10);
  89.        goto C;                     
  90.       }
  91.      }
  92.      if(s6==0)
  93.      {
  94.         Delay200ms();break;
  95.      }
  96.      for(i=0;i<25;i++)
  97.      {
  98.        wenduzhi2();wendusetdis();
  99.       wetset();
  100.       if(s6==0&&i==10)
  101.       {
  102.         at24c02write(0x10,ws);
  103.        ws=at24c02read(0x10);
  104.        goto C;
  105.       }
  106.       
  107.      }                                       //數(shù)碼管閃爍顯示
  108.      C:if(s6==0)
  109.      {
  110.        Delay200ms();break;
  111.      }
  112.     }
  113.      }
  114.    if(s7==0)
  115.      {
  116.       Delay200ms();
  117.          while(1)
  118.         {
  119.       timer0init();                      //打開定時器  判斷S6按下次數(shù)
  120.       P2=(P2&0x1f)|0x80;
  121.       P0=0xfd;P2=P2&0x1f;                //點(diǎn)亮L2
  122.       timeshidu();
  123.                   timeshidudis();                     //時間濕度顯示
  124.       if(s5==0)
  125.       {
  126.        Delay10ms();
  127.       jidianqi2();                           //開繼電器  灌溉
  128.       if(shidu<ws)                             //判斷濕度
  129.       {
  130.        beep2();                             //報警
  131.       }
  132.       else beep1();          //關(guān)閉蜂鳴器
  133.       }
  134.       if(s4==0)
  135.        {
  136.         Delay10ms();
  137.         beep1();
  138.            jidianqi1();                 //停止灌溉
  139.         
  140.       }
  141.         TR0=0;
  142.        if(s7==0)
  143.        {
  144.         Delay200ms();break;
  145.        }
  146.         }
  147.         }
  148.          }
  149.    }
  150.   }
  151.    
  152. }


  153. void timer0init()
  154. {
  155.    TMOD=0x01;
  156.   TH0=(65536-2000)/256;
  157.   TL0=(65536-2000)%256;
  158.   ET0=1;
  159.   TR0=1;
  160.   EA=1;
  161.   if(s6==0)
  162.   {
  163.    Delay200ms();
  164.     door=1;beep2();
  165.    if(s6==0)
  166.    {
  167.     Delay200ms();
  168.     door=2;beep1();
  169.    }
  170.   }
  171. }

  172. void timer0() interrupt 1
  173. {
  174.   TH0=(65536-2000)/256;
  175.   TL0=(65536-2000)%256;   
  176. }

  177. void Delay10ms()  //@11.0592MHz
  178. {
  179. unsigned char i, j;
  180. i = 108;
  181. j = 145;
  182. do
  183. {
  184.   while (--j);
  185. } while (--i);
  186. }
  187. void Delay200ms()  //@11.0592MHz
  188. {
  189. unsigned char i, j, k;
  190. _nop_();
  191. _nop_();
  192. i = 9;
  193. j = 104;
  194. k = 139;
  195. do
  196. {
  197.   do
  198.   {
  199.    while (--k);
  200.   } while (--j);
  201. } while (--i);
  202. }

復(fù)制代碼


回復(fù)

使用道具 舉報

ID:462781 發(fā)表于 2019-5-7 15:15 | 顯示全部樓層
原理圖是什么
回復(fù)

使用道具 舉報

ID:510681 發(fā)表于 2019-11-4 20:15 | 顯示全部樓層
666666666666

基于單片機(jī)的溫室自動灌溉系統(tǒng)設(shè)計_肖麗.pdf

2 MB, 下載次數(shù): 64, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕欧美一区 | 婷婷丁香在线视频 | 国产精品a久久久久 | 中国美女撒尿txxxxx视频 | 日韩成人在线播放 | 91精品国产综合久久久久久漫画 | 老外黄色一级片 | 精品1区2区 | 亚洲精品久久久蜜桃 | 成人二区| 日韩精品一区二区三区 | 国产精品1区 | 日韩快播电影网 | 99国产精品久久久久久久 | 成人一区二区三区在线观看 | 国产精品1区2区 | 国产1区2区3区 | 99精品在线观看 | 老头搡老女人毛片视频在线看 | 在线看亚洲 | 亚洲欧美在线观看视频 | ww亚洲ww亚在线观看 | 国产乱精品一区二区三区 | 国产精品久久久久久久一区探花 | 国产一二区视频 | 成人午夜在线视频 | 羞羞网站在线观看 | 久久伊人亚洲 | 狠狠躁夜夜躁人人爽天天高潮 | 亚洲三级在线观看 | 在线视频 亚洲 | 国产午夜精品视频 | 91精品国产综合久久福利软件 | 大香在线伊779 | av在线一区二区三区 | 一级毛片在线播放 | 日本久久福利 | 日一区二区三区 | 日韩精品无码一区二区三区 | 中文字幕日本一区二区 | 天天操天天干天天爽 |