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

📄 dr.lst

📁 利用单片机测量电容的C51程序。通过调试
💻 LST
字号:
C51 COMPILER V8.02   DR                                                                    11/01/2007 19:46:48 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE DR
OBJECT MODULE PLACED IN DR.OBJ
COMPILER INVOKED BY: D:\Study\keil51\C51\BIN\C51.EXE DR.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg52.h>
   2          #include <math.h>
   3          
   4          sbit P33=P3^3;
   5          #define Uchar unsigned char
   6          
   7          
   8          unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
   9          0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x73,0x37};
  10          
  11          unsigned  int gei,shi,bai,qian,wan,swan,bwan,UF;
  12          
  13          unsigned long int R,XIANSHI,JISHU;
  14          
  15          void delay(unsigned char n ) 
  16          {                                                       // 延时子程序
  17   1              Uchar i,j;
  18   1                      for(j=0;j<n;j++)
  19   1                      for(i=0;i<10;i++)
  20   1                      {
  21   2                              _nop_();
*** WARNING C206 IN LINE 21 OF DR.C: '_nop_': missing function-prototype
*** ERROR C264 IN LINE 21 OF DR.C: intrinsic '_nop_': declaration/activation error
  22   2                              _nop_();
  23   2                              _nop_();
  24   2                              _nop_();
  25   2                      }
  26   1      }
  27          
  28          bit lcd_bz()   
  29          {                                                  // 测试LCD忙碌状态
  30   1              bit result;
  31   1              rs = 0;                            //使能
*** ERROR C202 IN LINE 31 OF DR.C: 'rs': undefined identifier
  32   1              rw = 1;                        //读
*** ERROR C202 IN LINE 32 OF DR.C: 'rw': undefined identifier
  33   1              ep = 1;
*** ERROR C202 IN LINE 33 OF DR.C: 'ep': undefined identifier
  34   1              _nop_();
  35   1              _nop_();
  36   1              _nop_();
  37   1              _nop_();
  38   1              result = (bit)(P0 & 0x80);
  39   1              ep = 0;
*** ERROR C202 IN LINE 39 OF DR.C: 'ep': undefined identifier
  40   1              return result;
  41   1      }
  42          
  43          lcd_wcmd(Uchar cmd)      
  44          {                                                       // 写入指令数据到LCD
  45   1              while(lcd_bz());
  46   1              rs = 0;
*** ERROR C202 IN LINE 46 OF DR.C: 'rs': undefined identifier
  47   1              rw = 0;     //写
*** ERROR C202 IN LINE 47 OF DR.C: 'rw': undefined identifier
C51 COMPILER V8.02   DR                                                                    11/01/2007 19:46:48 PAGE 2   

  48   1              ep = 0;
*** ERROR C202 IN LINE 48 OF DR.C: 'ep': undefined identifier
  49   1              _nop_();
  50   1              _nop_();
  51   1              P0 = cmd;
  52   1              _nop_();
  53   1              _nop_();
  54   1              _nop_();
  55   1              _nop_();
  56   1              ep = 1;
*** ERROR C202 IN LINE 56 OF DR.C: 'ep': undefined identifier
  57   1              _nop_();
  58   1              _nop_();
  59   1              _nop_();
  60   1              _nop_();
  61   1              ep = 0;
*** ERROR C202 IN LINE 61 OF DR.C: 'ep': undefined identifier
  62   1      }
  63          
  64          lcd_pos(Uchar pos)      
  65          {                                                        //设定显示位置
  66   1              lcd_wcmd(pos|0x80);
  67   1      }
  68          
  69          lcd_wdat(Uchar dat)     
  70          {                                                       //写入字符显示数据到LCD
  71   1              while(lcd_bz());
  72   1              rs = 1;
*** ERROR C202 IN LINE 72 OF DR.C: 'rs': undefined identifier
  73   1              rw = 0;
*** ERROR C202 IN LINE 73 OF DR.C: 'rw': undefined identifier
  74   1              ep = 0;
*** ERROR C202 IN LINE 74 OF DR.C: 'ep': undefined identifier
  75   1              P0 = dat;
  76   1              _nop_();
  77   1              _nop_();
  78   1              _nop_();
  79   1              _nop_();
  80   1              ep = 1;
*** ERROR C202 IN LINE 80 OF DR.C: 'ep': undefined identifier
  81   1              _nop_();
  82   1              _nop_();
  83   1              _nop_();
  84   1              _nop_();
  85   1              ep = 0;
*** ERROR C202 IN LINE 85 OF DR.C: 'ep': undefined identifier
  86   1      }
  87          
  88          lcd_init()      
  89          {                                                       //LCD初始化设定
  90   1              lcd_wcmd(0x38);                 //
  91   1              delay(1);
  92   1              lcd_wcmd(0x0c);                 //
  93   1              delay(1);
  94   1              lcd_wcmd(0x06);                 //
  95   1              delay(1);
  96   1              lcd_wcmd(0x00);                 //清除LCD的显示内容
  97   1              delay(1);
  98   1      }
  99          
 100          void display() using 2                // 写入数据到LCD
 101          {
C51 COMPILER V8.02   DR                                                                    11/01/2007 19:46:48 PAGE 3   

 102   1          Uchar i;
 103   1           
 104   1              EA=0;
 105   1       
 106   1              disdate[7]=cedate%10+0x30;                              //显示数据按位分离
*** ERROR C202 IN LINE 106 OF DR.C: 'disdate': undefined identifier
 107   1              disdate[8]=cedate%100/10+0x30;
*** ERROR C202 IN LINE 107 OF DR.C: 'disdate': undefined identifier
 108   1              disdate[9]=cedate%1000/100+0x30;
*** ERROR C202 IN LINE 108 OF DR.C: 'disdate': undefined identifier
 109   1              disdate[10]=cedate%10000/1000+0x30;
*** ERROR C202 IN LINE 109 OF DR.C: 'disdate': undefined identifier
 110   1              disdate[11]='.' ;
*** ERROR C202 IN LINE 110 OF DR.C: 'disdate': undefined identifier
 111   1              disdate[12]=cedate%100000/10000+0x30;
*** ERROR C202 IN LINE 111 OF DR.C: 'disdate': undefined identifier
 112   1      
 113   1      
 114   1              lcd_init();                             // 初始化LCD
 115   1              lcd_pos(0);            //设置显示位置为第一行的第5个字符
 116   1         for(i=0;i<16;i++)            //显示提示信息
 117   1         {
 118   2          lcd_wdat(hintdate[i]);
*** ERROR C202 IN LINE 118 OF DR.C: 'hintdate': undefined identifier
 119   2      
 120   2         }
 121   1                                                                        //在第二行显示数据
 122   1              lcd_pos(0x40);
 123   1              lcd_wdat(disdate[12]);                            //送显示数据;
*** ERROR C202 IN LINE 123 OF DR.C: 'disdate': undefined identifier
 124   1              lcd_wdat(disdate[11]);
*** ERROR C202 IN LINE 124 OF DR.C: 'disdate': undefined identifier
 125   1              lcd_wdat(disdate[10]);
*** ERROR C202 IN LINE 125 OF DR.C: 'disdate': undefined identifier
 126   1              lcd_wdat(disdate[9]);
*** ERROR C202 IN LINE 126 OF DR.C: 'disdate': undefined identifier
 127   1              lcd_wdat(disdate[8]);
*** ERROR C202 IN LINE 127 OF DR.C: 'disdate': undefined identifier
 128   1              lcd_wdat(disdate[7]);
*** ERROR C202 IN LINE 128 OF DR.C: 'disdate': undefined identifier
 129   1      
 130   1              
 131   1              EA=1;
 132   1      }
 133          jishuan()
 134          {       //dianzu();
 135   1          
 136   1               XIANSHI=((JISHU*1.000)*10000)/(R*1.09861);//0.5US      PF
 137   1       //     XIANSHI=12345678;
 138   1      
 139   1       
 140   1                  if(XIANSHI>9999999)
 141   1                    {
 142   2                     XIANSHI=XIANSHI/1000;
 143   2                     UF=1;
 144   2                    }
 145   1                  
 146   1               
 147   1              gei=XIANSHI%10;
 148   1              shi=XIANSHI%100/10;
 149   1              bai=XIANSHI%1000/100;
 150   1              qian=XIANSHI%10000/1000;
C51 COMPILER V8.02   DR                                                                    11/01/2007 19:46:48 PAGE 4   

 151   1              wan=XIANSHI%100000/10000;
 152   1              swan=XIANSHI%1000000/100000;
 153   1              bwan=XIANSHI/1000000;
 154   1              
 155   1      }
 156          
 157          
 158          Delay(tc)
 159          {  unsigned int i,j;
 160   1       for(i=0;i<tc;i++)
 161   1       {  for(j=0;j<80;j++) 
 162   2       ; 
 163   2       }
 164   1      }
 165          
 166          
 167          LED()
 168          { 
 169   1       
 170   1       
 171   1         P2=0x7F;
 172   1         P0=table[bwan];
 173   1         Delay(1); 
 174   1         P2=0XBF;
 175   1         P0=table[swan];
 176   1         Delay(1); 
 177   1         P2=0xDF;
 178   1         P0=table[wan];
 179   1         Delay(1); 
 180   1         P2=0xEF;
 181   1         P0=table[qian];
 182   1         Delay(1); 
 183   1         P2=0xF7;
 184   1         P0=table[bai];
 185   1         Delay(1); 
 186   1         P2=0xFB;
 187   1         P0=table[shi];
 188   1         Delay(1); 
 189   1         P2=0xFD;
 190   1         P0=table[gei];
 191   1         Delay(1); 
 192   1         P2=0xFE;
 193   1         if(UF==1)
 194   1          {P0=table[17];}
 195   1              else
 196   1              {P0=table[16];}
 197   1         Delay(1); 
 198   1       
 199   1         
 200   1      }
 201          
 202          void int1() interrupt  2 using 0 
 203          {  
 204   1          
 205   1      dd: if  (P33==1)
 206   1          {            
 207   2                  TR1=1;
 208   2                      EA=0;
 209   2                        
 210   2         dd1: if(P33==0)
 211   2                    {
 212   3                     TR1=0;
C51 COMPILER V8.02   DR                                                                    11/01/2007 19:46:48 PAGE 5   

 213   3                     JISHU=TH1;
 214   3                        // JISHU=JISHU&0X00FF;
 215   3                         JISHU<<=8;
 216   3                         JISHU=JISHU+TL1;
 217   3                         jishuan();
 218   3                        // EA=1;
 219   3                 }
 220   2                 else
 221   2                    {
 222   3                   goto dd1;
 223   3                    }
 224   2              } 
 225   1        else
 226   1        {goto dd;}
 227   1         // EA=0;    
 228   1      }
 229          
 230          
 231            void main(void)
 232          {     
 233   1              SP=0X70;
 234   1              IT1=1;
 235   1              TMOD=0X10;
 236   1              TL1=0X00;
 237   1              TH1=0X00;
 238   1              EX1=1;
 239   1              TR1=0;
 240   1              EA=1;
 241   1              XIANSHI=0;
 242   1              UF=0; 
 243   1              
 244   1              while(1)
 245   1              {
 246   2                LED();
 247   2                  
 248   2              }
 249   1      }

C51 COMPILATION COMPLETE.  1 WARNING(S),  28 ERROR(S)

⌨️ 快捷键说明

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