⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 18b20_2.lst

📁 DS18B20温度传感的好程序!!!很有用
💻 LST
字号:
C51 COMPILER V8.02   18B20_2                                                               11/19/2008 17:14:39 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE 18B20_2
OBJECT MODULE PLACED IN 18b20_2.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE 18b20_2.c DEBUG OBJECTEXTEND

line level    source

   1          #include <AT89X52.H>
   2          #include <INTRINS.h>
   3           
*** ERROR C100 IN LINE 3 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 3 OF 18B20_2.C: unprintable character 0xA1 skipped
   4          unsigned char code displaybit[]={0xfe,0xfd,0xfb,0xf7,
   5          0xef,0xdf,0xbf,0x7f};
   6          unsigned char code displaycode[]={0x3f,0x06,0x5b,0x4f,
   7          0x66,0x6d,0x7d,0x07,
   8          0x7f,0x6f,0x77,0x7c,
   9          0x39,0x5e,0x79,0x71,0x00,0x40};
  10          unsigned char code dotcode[32]={0,3,6,9,12,16,19,22,
  11          25,28,31,34,38,41,44,48,
  12          50,53,56,59,63,66,69,72,
  13          75,78,81,84,88,91,94,97};
  14          unsigned char displaycount;
  15          unsigned char displaybuf[8]={16,16,16,16,16,16,16,16};
  16          unsigned char timecount;
  17          unsigned char readdata[8];  
*** ERROR C100 IN LINE 17 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 17 OF 18B20_2.C: unprintable character 0xA1 skipped
  18          sbit DQ=P3^7;
  19          bit sflag;
  20           
*** ERROR C100 IN LINE 20 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 20 OF 18B20_2.C: unprintable character 0xA1 skipped
  21          bit resetpulse(void)
  22          {
  23   1      unsigned char i;
  24   1       
*** ERROR C100 IN LINE 24 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 24 OF 18B20_2.C: unprintable character 0xA1 skipped
  25   1      DQ=0;
  26   1      for(i=255;i>0;i--);
  27   1      DQ=1;
  28   1      for(i=60;i>0;i--);
  29   1      return(DQ);
  30   1      for(i=200;i>0;i--);
  31   1      }
  32           
*** ERROR C100 IN LINE 32 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 32 OF 18B20_2.C: unprintable character 0xA1 skipped
  33          void writecommandtods18b20(unsigned char command)
  34          {
  35   1      unsigned char i;
  36   1      unsigned char j;
  37   1       
*** ERROR C100 IN LINE 37 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 37 OF 18B20_2.C: unprintable character 0xA1 skipped
  38   1      for(i=0;i<8;i++)
  39   1      {
  40   2      if((command & 0x01)==0)
  41   2      {
  42   3      DQ=0;
  43   3      for(j=35;j>0;j--);
C51 COMPILER V8.02   18B20_2                                                               11/19/2008 17:14:39 PAGE 2   

  44   3      DQ=1;
  45   3      }
  46   2      else
  47   2      {
  48   3      DQ=0;
  49   3      for(j=2;j>0;j--);
  50   3      DQ=1;
  51   3      for(j=33;j>0;j--);
  52   3      }
  53   2      command=_cror_(command,1);
  54   2      }
  55   1      }
  56           
*** ERROR C100 IN LINE 56 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 56 OF 18B20_2.C: unprintable character 0xA1 skipped
  57          unsigned char readdatafromds18b20(void)
  58          {
  59   1      unsigned char i;
  60   1      unsigned char j;
  61   1      unsigned char temp;
  62   1       
*** ERROR C100 IN LINE 62 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 62 OF 18B20_2.C: unprintable character 0xA1 skipped
  63   1      temp=0;
  64   1      for(i=0;i<8;i++)
  65   1      {
  66   2      temp=_cror_(temp,1);
  67   2      DQ=0;
  68   2      _nop_();
  69   2      _nop_();
  70   2      DQ=1;
  71   2      for(j=10;j>0;j--);
  72   2      if(DQ==1)
  73   2      {
  74   3      temp=temp | 0x80;
  75   3      }
  76   2      else
  77   2      {
  78   3      temp=temp | 0x00;
  79   3      }
  80   2      for(j=200;j>0;j--);
  81   2      }
  82   1      return(temp);
  83   1      }
  84           
*** ERROR C100 IN LINE 84 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 84 OF 18B20_2.C: unprintable character 0xA1 skipped
  85          void main(void)
  86          {
  87   1      TMOD=0x01;
  88   1      TH0=(65536-4000)/256;
  89   1      TL0=(65536-4000)%256;
  90   1      ET0=1;
  91   1      EA=1;
  92   1       
*** ERROR C100 IN LINE 92 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 92 OF 18B20_2.C: unprintable character 0xA1 skipped
  93   1      while(resetpulse());
  94   1      writecommandtods18b20(0xcc);
  95   1      writecommandtods18b20(0x44);
  96   1      TR0=1;
  97   1      while(1){;}
C51 COMPILER V8.02   18B20_2                                                               11/19/2008 17:14:39 PAGE 3   

  98   1      
  99   1      } 
*** ERROR C100 IN LINE 99 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 99 OF 18B20_2.C: unprintable character 0xA1 skipped
 100          void t0() interrupt 1 using 0
 101          {
 102   1      unsigned  char x;
 103   1      unsigned int result;
 104   1      TH0=(65536-4000)/256;
 105   1      TL0=(65536-4000)%256;
 106   1      if(displaycount==2)
 107   1      {
 108   2      P0=displaycode[displaybuf[displaycount]] | 0x80;
 109   2      }
 110   1      else
 111   1      {
 112   2      P0=displaycode[displaybuf[displaycount]];
 113   2      }
 114   1      P2=displaybit[displaycount];
 115   1      displaycount++;
 116   1      if(displaycount==8)
 117   1      {
 118   2      displaycount=0;
 119   2      }
 120   1       
*** ERROR C100 IN LINE 120 OF 18B20_2.C: unprintable character 0xA1 skipped
*** ERROR C100 IN LINE 120 OF 18B20_2.C: unprintable character 0xA1 skipped
 121   1      timecount++;
 122   1      if(timecount==150)
 123   1      {
 124   2      timecount=0;
 125   2      while(resetpulse());
 126   2      writecommandtods18b20(0xcc);
 127   2      writecommandtods18b20(0xbe);
 128   2      readdata[0]=readdatafromds18b20();
 129   2      readdata[1]=readdatafromds18b20();
 130   2      for(x=0;x<8;x++)
 131   2      {
 132   3      displaybuf[x]=16;
 133   3      }
 134   2      sflag=0;
 135   2      if((readdata[1] & 0xf8)!=0x00)
 136   2      {
 137   3      sflag=1;
 138   3      readdata[1]=~readdata[1];
 139   3      readdata[0]=~readdata[0];
 140   3      result=readdata[0]+1;
 141   3      readdata[0]=result;
 142   3      if(result>255)
 143   3      {
 144   4      readdata[1]++;
*** ERROR C187 IN LINE 144 OF 18B20_2.C: not an lvalue
 145   4      }
 146   3      }
 147   2      readdata[1]=readdata[1]<<4;
 148   2      readdata[1]=readdata[1] & 0x70;
 149   2      x=readdata[0];
 150   2      x=x>>4;
 151   2      x=x & 0x0f;
 152   2      readdata[1]=readdata[1] | x;
 153   2      x=2;
 154   2      result=readdata[1];
C51 COMPILER V8.02   18B20_2                                                               11/19/2008 17:14:39 PAGE 4   

 155   2      while(result/10)
 156   2      {
 157   3      displaybuf[x]=result%10;
 158   3      result=result/10;
 159   3      x++;
 160   3      }
 161   2      displaybuf[x]=result;
 162   2      if(sflag==1)
 163   2      {
 164   3      displaybuf[x+1]=17;
 165   3      }
 166   2      x=readdata[0] & 0x0f;
 167   2      x=x<<1;
 168   2      displaybuf[0]=(dotcode[x])%10;
 169   2      displaybuf[1]=(dotcode[x])/10;
 170   2      while(resetpulse());
 171   2      writecommandtods18b20(0xcc);
 172   2      writecommandtods18b20(0x44);
 173   2      }
 174   1      }

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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -