欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機(jī)多路DS18B20測(cè)溫報(bào)警proteus仿真及程序 [打印本頁(yè)]

作者: 51黑ff    時(shí)間: 2016-9-25 13:53
標(biāo)題: 單片機(jī)多路DS18B20測(cè)溫報(bào)警proteus仿真及程序
用51單片機(jī)實(shí)現(xiàn)的多路ds18b20測(cè)試溫度并且可以報(bào)警,下面是仿真原理圖:


所有資料下載:
fireware_slave.zip (85.25 KB, 下載次數(shù): 228)


部分源程序預(yù)覽:
  1. #include <main.h>
  2. #include <18b20.h>
  3. #include <LCD.h>
  4. //#include <485.h>
  5. sbit warning=P3^5;
  6. sbit greenled=P3^6;//485 收發(fā)控制
  7. //uchar flag1;            // sign of the result positive or negative
  8. uchar j;
  9. int temper[4];
  10. uchar code str4_sht11[]=" max:       min:    ";
  11. sbit k1=P3^0;//set
  12. sbit k2=P3^1;//+
  13. sbit k3=P3^2;//-
  14. sbit sound=P1^7;
  15. char max=40;
  16. char min=10;
  17. uchar change_flag;


  18. uchar flag;

  19. void delay(uint count)      //delay
  20. {
  21.   uint i;
  22.   while(count)
  23.   {
  24.     i=200;
  25.     while(i>0)
  26.     i--;
  27.     count--;
  28.   }
  29. }

  30. void serial_int()
  31. {
  32. TMOD=0X01;//t1工作在方式2
  33. TH0=0xF0;//2400BIT/S
  34. TL0=0x0F;
  35. TR0=1;//打開(kāi)計(jì)數(shù)器開(kāi)始計(jì)數(shù)
  36. ET0=0;
  37. //EA=1;
  38. //ES=1;
  39. }

  40. void timer_isr() interrupt 1
  41. {
  42.     TH0=0xF0;
  43.     TL0=0x0F;
  44.         sound=~sound;
  45. }

  46. void key1()
  47. {
  48.         if(k1==0)
  49.     {
  50.                 change_flag++;
  51.         if(change_flag>2)
  52.         change_flag=0;
  53.     }
  54. while(k1==0);
  55. }

  56. void key2()
  57. {
  58.         if(k2==0)
  59.     {
  60.             if(change_flag==1)
  61.          max++;
  62.                 if(change_flag==2)
  63.          min++;
  64.     }
  65. while(k2==0);
  66. }

  67. void key3()
  68. {
  69.         if(k3==0)
  70.     {
  71.        if(change_flag==1)
  72.          max--;
  73.        if(change_flag==2)
  74.          min--;
  75.     }
  76. while(k3==0);
  77. }

  78. void key()//按鈕
  79. {
  80.     key2();
  81.         key1();
  82.         key3();
  83. }
  84. void main()
  85. {
  86.    uchar i,a=1,b=1;
  87. //   uchar mm;
  88. //  uchar nn;
  89.    warning=0;
  90.    
  91.    serial_int();
  92.    greenled=1;
  93.    lcd_init();
  94.    for(i=0;i<4;i++)
  95.    {
  96.       tmpchange(i);
  97.       temper[i]=tmp(i);
  98.     }
  99.     //j=3;
  100.    display_1602();
  101.   while(1)
  102.   {
  103.          //DS=P1;
  104.         



  105.         if(change_flag==0)
  106.                 {        if(a==1)
  107.             {   b=1;
  108.                 a=0;
  109.                     write_lcdcom(0x01); //顯示清屏       
  110.                                 display_1602();
  111.                         }
  112.                 tmpchange(j);
  113.                 for(i=0;i<100;i++)
  114.                         {
  115.                        key();
  116.                            temper[j]=tmp(j);
  117.                    lcd_printf(j,temper[j],0xcd);//顯示        
  118.                  }        
  119.                   j++;
  120.                   if(j>3)
  121.                   j=0;
  122.        
  123.                   
  124.                           if(((temper[j]>max)||(temper[j]<min))&&(temper[j]<850))
  125.                  // if(((temper[j]/10>max)||(temper[j]/10<min)))
  126.                                  {
  127.                                   warning=1;
  128.                                         greenled=0;
  129. //                                        nn=0;
  130.                                         EA=1;
  131.                      }
  132.                           else
  133.                       {
  134.                          EA=0;                       
  135.                                         warning=0;
  136.                                     greenled=1;
  137.                                    }
  138.                      }
  139.                  else
  140.           {     key();
  141.                            if(b==1)
  142.                                 {   
  143.                                         a=1;
  144.                     b=0;
  145.                         write_lcdcom(0x01); //顯示清屏
  146.                     write_lcdcom(0x80);//第一行l(wèi)cd顯示地址
  147.                                     for(i=0;i<32;i++)
  148.                                         {
  149.                                           write_lcddate(str4_sht11[i]);//顯示table1中的字符
  150.                                         }
  151.                                 }
  152.                 else
  153.                                     lcd_set(max,min);
  154.                        
  155.                   }

  156.   }               
  157. }
復(fù)制代碼




作者: tranhunga    時(shí)間: 2017-5-3 19:23
沒(méi)有黑色錢下載
作者: HYJ0414    時(shí)間: 2017-5-30 10:50
非常非常感謝
作者: faridzled    時(shí)間: 2017-5-30 22:49
thanks for sharing
作者: @曲終人散@    時(shí)間: 2017-6-9 18:48
這個(gè)不錯(cuò)呀,謝謝分享
作者: @曲終人散@    時(shí)間: 2017-6-9 18:49
拿來(lái)學(xué)習(xí)學(xué)習(xí)
作者: 3760609865    時(shí)間: 2017-6-20 15:38
下載了,謝謝分享。
作者: 7777333    時(shí)間: 2017-6-21 09:23
感謝樓主,課設(shè)有希望了。  )))
作者: dingqinhong    時(shí)間: 2018-6-24 11:27
非常感謝樓主分享 碼起來(lái)看
作者: 羽尖的煙花    時(shí)間: 2019-1-6 22:43
非常感謝樓主的無(wú)私奉獻(xiàn),下載下來(lái)學(xué)習(xí)學(xué)習(xí)。
作者: bg4rfb    時(shí)間: 2019-1-8 09:50
感謝分享!
作者: xiaob123    時(shí)間: 2019-3-22 16:06
正好需要,學(xué)習(xí)了

作者: erwin095    時(shí)間: 2019-4-2 13:00
本帖最后由 erwin095 于 2019-4-2 13:22 編輯

還再研究中


作者: 卑微應(yīng)屆生    時(shí)間: 2020-4-4 13:38
為啥編譯時(shí)出錯(cuò)了





歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1