亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? +

?? 51單片機配套C程序
??
字號:
C51 COMPILER V7.50   18B20                                                                 05/16/2010 11:45:28 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE 18B20
OBJECT MODULE PLACED IN 18b20.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 18b20.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*-----------------------------------------------
   2            名稱:18B20溫度傳感器
   3            內容:18B20單線溫度檢測的應用樣例程序,請將18b20插緊,
   4                  然后在數碼管可以顯示XX.XC,C表示攝氏度,如顯示25.3C表示當前溫度25.3度
   5          ------------------------------------------------*/
   6          #include<reg52.h>     //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
   7          #include<math.h>
   8          #include<INTRINS.H>
   9          
  10          #define uchar unsigned char
  11          #define uint   unsigned int;
  12          /******************************************************************/
  13          /*                    定義端口                                    */
  14          /******************************************************************/
  15          sbit seg1=P2^0;
  16          sbit seg2=P2^1;
  17          sbit seg3=P2^2;
  18          sbit DQ=P1^3;//ds18b20 端口
  19          sfr dataled=0x80;//顯示數據端口
  20          /******************************************************************/
  21          /*                    全局變量                                    */
  22          /******************************************************************/
  23          uint temp;
  24          uchar flag_get,count,num,minute,second;
  25          uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
  26                                                         //7段數碼管段碼表共陽
  27          uchar  str[6];
  28          /******************************************************************/
  29          /*                   函數聲明                                     */
  30          /******************************************************************/
  31          void delay1(uchar MS);
  32          unsigned int ReadTemperature(void);
  33          void Init_DS18B20(void);
  34          unsigned char ReadOneChar(void);
  35          void WriteOneChar(unsigned char dat);
  36          void delay(unsigned int i);
  37          /******************************************************************/
  38          /*                    主函數                                      */
  39          /******************************************************************/
  40          main()
  41          {
  42   1      unsigned char TempH,TempL;
  43   1      TMOD|=0x01;//定時器設置
  44   1      TH0=0xef;
  45   1      TL0=0xf0;
  46   1      IE=0x82;
  47   1      TR0=1;
  48   1      P2=0x00;  
  49   1      count=0;
  50   1      while(1)
  51   1      {
  52   2         str[5]=0x39;         //顯示C符號
  53   2         str[1]=tab[TempH/100]; //十位溫度
  54   2         str[2]=tab[(TempH%100)/10]; //十位溫度
  55   2         str[3]=tab[(TempH%100)%10]|0x80; //個位溫度,帶小數點
C51 COMPILER V7.50   18B20                                                                 05/16/2010 11:45:28 PAGE 2   

  56   2         str[4]=tab[TempL];
  57   2        if(flag_get==1)       //定時讀取當前溫度
  58   2          {
  59   3        temp=ReadTemperature();
  60   3        if(temp&0x8000)
  61   3           {
  62   4           str[0]=0x40;//負號標志
  63   4           temp=~temp;  // 取反加1
  64   4               temp +=1;
  65   4               }
  66   3        else
  67   3           str[0]=0;
  68   3        TempH=temp>>4;
  69   3        TempL=temp&0x0F;
  70   3        TempL=TempL*6/10;//小數近似處理
  71   3        flag_get=0;
  72   3          }
  73   2        }
  74   1      }
  75          
  76          
  77          /******************************************************************/
  78          /*                  定時器中斷                                    */
  79          /******************************************************************/
  80          void tim(void) interrupt 1 using 1//中斷,用于數碼管掃描和溫度檢測間隔
  81          {
  82   1      TH0=0xef;//定時器重裝值
  83   1      TL0=0xf0;
  84   1      num++;
  85   1      if (num==50)
  86   1          {num=0;
  87   2                flag_get=1;//標志位有效
  88   2            second++;
  89   2             if(second>=60)
  90   2               {second=0;
  91   3                 minute++;  
  92   3                }
  93   2            }
  94   1      count++;
  95   1      if(count==1)
  96   1         {P2=0;
  97   2          dataled=str[0];}//數碼管掃描
  98   1      if(count==2)
  99   1         {P2=1;
 100   2          dataled=str[1];}
 101   1      if(count==3)
 102   1         { P2=2;
 103   2           dataled=str[2];
 104   2           }
 105   1      if(count==4)
 106   1         { P2=3;
 107   2           dataled=str[3];
 108   2           }
 109   1      if(count==5)
 110   1         { P2=4;
 111   2           dataled=str[4];
 112   2           }
 113   1      if(count==6)
 114   1         { P2=5;
 115   2           dataled=str[5];
 116   2           count=0;}
 117   1      }
C51 COMPILER V7.50   18B20                                                                 05/16/2010 11:45:28 PAGE 3   

 118          /******************************************************************/
 119          /*                    延時函數                                    */
 120          /******************************************************************/
 121          void delay(unsigned int i)//延時函數
 122          {
 123   1       while(i--);
 124   1      }
 125          /******************************************************************/
 126          /*                    初始化                                      */
 127          /******************************************************************/
 128          void Init_DS18B20(void)
 129          {
 130   1       unsigned char x=0;
 131   1       DQ = 1;    //DQ復位
 132   1       delay(8);  //稍做延時
 133   1       DQ = 0;    //單片機將DQ拉低
 134   1       delay(80); //精確延時 大于 480us
 135   1       DQ = 1;    //拉高總線
 136   1       delay(10);
 137   1       x=DQ;      //稍做延時后 如果x=0則初始化成功 x=1則初始化失敗
 138   1       delay(5);
 139   1      }
 140          
 141          /******************************************************************/
 142          /*                    讀一個字節                                  */
 143          /******************************************************************/
 144          unsigned char ReadOneChar(void)
 145          {
 146   1      unsigned char i=0;
 147   1      unsigned char dat = 0;
 148   1      for (i=8;i>0;i--)
 149   1       {
 150   2        DQ = 0; // 給脈沖信號
 151   2        dat>>=1;
 152   2        DQ = 1; // 給脈沖信號
 153   2        if(DQ)
 154   2         dat|=0x80;
 155   2        delay(5);
 156   2       }
 157   1       return(dat);
 158   1      }
 159          
 160          /******************************************************************/
 161          /*                 寫一個字節                                     */
 162          /******************************************************************/
 163          void WriteOneChar(unsigned char dat)
 164          {
 165   1       unsigned char i=0;
 166   1       for (i=8; i>0; i--)
 167   1       {
 168   2        DQ = 0;
 169   2        DQ = dat&0x01;
 170   2        delay(5);
 171   2        DQ = 1;
 172   2        dat>>=1;
 173   2       }
 174   1      delay(5);
 175   1      }
 176          
 177          /******************************************************************/
 178          /*                   讀取溫度                                     */
 179          /******************************************************************/
C51 COMPILER V7.50   18B20                                                                 05/16/2010 11:45:28 PAGE 4   

 180          unsigned int ReadTemperature(void)
 181          {
 182   1      unsigned char a=0;
 183   1      unsigned int b=0;
 184   1      unsigned int t=0;
 185   1      Init_DS18B20();
 186   1      WriteOneChar(0xCC); // 跳過讀序號列號的操作
 187   1      WriteOneChar(0x44); // 啟動溫度轉換
 188   1      delay(200);
 189   1      Init_DS18B20();
 190   1      WriteOneChar(0xCC); //跳過讀序號列號的操作 
 191   1      WriteOneChar(0xBE); //讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度
 192   1      a=ReadOneChar();   //低位
 193   1      b=ReadOneChar();   //高位
 194   1      
 195   1      b<<=8;
 196   1      t=a+b;
 197   1      
 198   1      return(t);
 199   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    425    ----
   CONSTANT SIZE    =     10    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     13       2
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人综合网站| 欧美日韩一卡二卡三卡| 亚洲一区成人在线| 精品国产99国产精品| av亚洲精华国产精华| 一级女性全黄久久生活片免费| 国产精品77777竹菊影视小说| 亚洲欧美日韩一区二区| 欧美日韩国产大片| 国产麻豆成人传媒免费观看| 亚洲免费电影在线| 欧美电影免费观看高清完整版在线观看| 国产超碰在线一区| 日本不卡中文字幕| 一区二区三国产精华液| 国产婷婷一区二区| 精品欧美一区二区三区精品久久| 91社区在线播放| 国产成人aaaa| 国产精品系列在线播放| 久久久99精品免费观看| 久久精品免费在线观看| 亚洲精品视频免费看| 欧洲精品视频在线观看| 老司机精品视频一区二区三区| 欧美—级在线免费片| 日韩精品一区二区三区视频播放 | 日韩一区二区视频| 色女孩综合影院| 久久99日本精品| 亚洲一区视频在线| 亚洲欧美一区二区三区极速播放| 亚洲精品一区二区三区精华液| av电影在线观看一区| 国产精品一区二区91| 久久精品国产秦先生| 久草在线在线精品观看| 日韩电影一二三区| 亚洲国产乱码最新视频| 一区二区三区在线播放| 综合精品久久久| 久久午夜老司机| 日韩视频一区在线观看| 在线播放一区二区三区| 欧美日韩国产美| 99视频精品免费视频| 91久久精品一区二区| 日本久久电影网| 精品久久久久久综合日本欧美 | 国产揄拍国内精品对白| 爽爽淫人综合网网站| 免费观看日韩电影| 蜜臀久久99精品久久久久宅男| 美国三级日本三级久久99 | 久久噜噜亚洲综合| 国产三级欧美三级日产三级99| 中文一区二区完整视频在线观看| 欧美中文字幕久久| 粉嫩13p一区二区三区| 亚洲一区二区三区四区五区中文| 欧美福利视频导航| 亚洲私人影院在线观看| 久久99精品国产.久久久久久| 色婷婷综合中文久久一本| 国产午夜精品美女毛片视频| 麻豆精品新av中文字幕| 欧洲精品一区二区| 久久久国产精品不卡| 欧美三级三级三级| 久久精品国产成人一区二区三区| 99久久精品国产一区二区三区| 久久久不卡网国产精品二区| 精品一区二区在线视频| 精品久久久久99| 国产福利视频一区二区三区| 久久精品亚洲国产奇米99| 国产不卡免费视频| 亚洲欧美日韩一区二区三区在线观看| gogogo免费视频观看亚洲一| 亚洲精品综合在线| 欧美一区二区在线看| 国产精品自拍毛片| 中文字幕在线不卡视频| www.激情成人| 中文字幕乱码一区二区免费| 国内精品视频666| 精品日韩欧美在线| 精品一区二区三区不卡| 精品88久久久久88久久久| 免费观看日韩av| 国产欧美一区二区精品婷婷| 国产一区二区三区高清播放| 日韩精品一区二区在线| 韩国欧美一区二区| 久久久久国产精品厨房| 成人一区二区视频| 亚洲欧美日韩系列| 欧美日韩视频在线第一区 | 678五月天丁香亚洲综合网| 亚洲电影一级片| 精品国产精品一区二区夜夜嗨| 麻豆精品视频在线观看免费| 国产亚洲制服色| 色综合久久66| 久久99深爱久久99精品| 亚洲国产精品99久久久久久久久 | 欧美韩国日本一区| 91丨porny丨蝌蚪视频| 亚洲国产视频一区二区| 久久先锋影音av鲁色资源| 97成人超碰视| 亚洲国产成人va在线观看天堂| 91精品国产色综合久久久蜜香臀| 国产成a人亚洲精品| 亚洲精品亚洲人成人网在线播放| 日韩一区二区三区四区| 成人综合婷婷国产精品久久蜜臀| 亚洲一区视频在线| 久久精品视频免费| 日韩一区二区在线免费观看| 东方aⅴ免费观看久久av| 日本成人在线一区| 亚洲国产成人av网| 国产精品二区一区二区aⅴ污介绍| 91精品欧美福利在线观看| 成人午夜视频福利| 日本中文一区二区三区| 中文字幕一区免费在线观看| 精品少妇一区二区三区在线播放| 91福利在线导航| 波多野结衣91| 不卡视频免费播放| 国产精品影音先锋| 国产乱码精品一品二品| 黄色小说综合网站| 久久99精品国产91久久来源| 蜜桃在线一区二区三区| 激情丁香综合五月| 一本到高清视频免费精品| 看电视剧不卡顿的网站| 中文在线一区二区| 狠狠色丁香婷综合久久| 麻豆极品一区二区三区| 国产一区视频导航| 国产99久久久精品| 不卡的av电影在线观看| 日本电影欧美片| 欧美军同video69gay| 欧美一区二区福利在线| 精品理论电影在线观看 | 91精品中文字幕一区二区三区| 91黄色激情网站| 日韩精品一区二区三区蜜臀 | 国产三级一区二区三区| 中文字幕一区二区5566日韩| 久久久亚洲精华液精华液精华液 | 成人午夜视频在线观看| 91在线视频观看| 欧美一区二区三级| 国产精品国产三级国产三级人妇| 亚洲自拍与偷拍| 国产美女一区二区| 91麻豆精品视频| 久久久久久久久岛国免费| 亚洲香肠在线观看| 成人av综合一区| 欧美精品一区二区不卡| 亚洲午夜久久久久久久久久久| 精品一区二区三区在线播放| 欧亚洲嫩模精品一区三区| 久久人人97超碰com| 青青草伊人久久| 国产成人在线影院| 久久久蜜桃精品| 久久成人18免费观看| 91精品国产丝袜白色高跟鞋| 一区二区三区四区在线免费观看| 国产.欧美.日韩| 久久精品免费在线观看| 激情综合色播激情啊| 26uuu精品一区二区三区四区在线| 亚洲一区电影777| 欧美日韩精品福利| 亚洲成人免费视| 4438x成人网最大色成网站| 日韩在线播放一区二区| 91精品啪在线观看国产60岁| 日韩av电影免费观看高清完整版| 337p亚洲精品色噜噜狠狠| 亚洲福利一区二区| 欧美一级午夜免费电影| 极品美女销魂一区二区三区| 国产欧美日韩麻豆91| 91精品国产高清一区二区三区蜜臀| 欧美高清www午色夜在线视频| 一区二区三区欧美亚洲| 在线观看一区二区视频| 日本不卡在线视频| 中文字幕精品在线不卡| 在线观看一区二区精品视频|