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

📄 xd_v30.lst

📁 51内核单片机实验程序
💻 LST
字号:
C51 COMPILER V7.06   XD_V30                                                                09/17/2007 10:01:04 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE XD_V30
OBJECT MODULE PLACED IN .\XD_V30.obj
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE ..\XD_dep\XD_V30.c BROWSE DEBUG OBJECTEXTEND PRINT(.\XD_V30.lst) OBJECT(.\X
                    -D_V30.obj)

stmt level    source

   1          
   2          //*****************************************
   3          //          单片机实验主函数
   4          //            2007。5。16
   5          //*****************************************
   6          
   7          #include<V30_pin.h>   //引脚定义                
*** WARNING C318 IN LINE 7 OF ..\XD_dep\XD_V30.c: can't open file 'V30_pin.h'
   8          #include<V30_func.h>  //常用函数
*** WARNING C318 IN LINE 8 OF ..\XD_dep\XD_V30.c: can't open file 'V30_func.h'
   9          #include<DS18B20.h>   //温湿度传感器DS18B20与CPU通信函数定义
*** WARNING C318 IN LINE 9 OF ..\XD_dep\XD_V30.c: can't open file 'DS18B20.h'
  10          
  11          
  12          
  13          #define PI 3.1415926    
  14          
  15          #define H_0xaa   0xaa   
  16          #define H_0x55   0x55   
  17            
  18          
  19          
  20          
  21          void tst_sin (void)     // sin(x)波形 
  22            {
  23   1         float x;
  24   1         float y;
  25   1         unsigned int j;
  26   1         for (x = 0; x < (2 * PI); x += 0.005)
  27   1           {
  28   2            y =500*sin (x);
*** WARNING C206 IN LINE 28 OF ..\XD_DEP\XD_V30.C: 'sin': missing function-prototype
*** ERROR C267 IN LINE 28 OF ..\XD_DEP\XD_V30.C: 'sin': requires ANSI-style prototype
  29   2                y=500.00-y;
  30   2                j=y;
  31   2            DA_display(j);
  32   2          //printf ("SIN(%f) = %f\n", x, y);
  33   2        }
  34   1      
  35   1      }
  36          
  37          void tst_sin_d (void)     // sin(x)波形 
  38            {
  39   1         float x;
  40   1         float y;
  41   1         unsigned int j;
  42   1         for (x = 0; x < (2 * PI); x += 0.005)
  43   1           {
  44   2            y =500*sin (x);
  45   2                y=500.00-y;
  46   2                j=y;
  47   2            DA_display_2(j);
  48   2          //printf ("SIN(%f) = %f\n", x, y);
  49   2        }
C51 COMPILER V7.06   XD_V30                                                                09/17/2007 10:01:04 PAGE 2   

  50   1      
  51   1      }
  52          
  53          
  54          //-------------------------主函数----------------------------
  55          //
  56          void main ()
  57            {
  58   1              U16 idata i,j,k;
  59   1          U8 c;
  60   1       
  61   1          AUXR=0x00;                      //使用内部的00-FF外部RAM 89C52RC
  62   1          out_sbuf();                     //串口初始化
  63   1          out_t0();                       //定时器初始化
  64   1              k1=1;
  65   1          k2=1;
  66   1      
  67   1          while ((k1 !=0) && ( k2 != 0))
  68   1              {
  69   2           display_move_led();
  70   2           speak_on(1000);
  71   2          }
  72   1          //ET0=1;
  73   1          EA=1; //开中断
  74   1      
  75   1          speak_on(900);
  76   1          delay_k(1000);
  77   1        key_k1k2:
  78   1          ET0=1;
  79   1          speak_on(900);
  80   1          delay_l(80000);
  81   1          c=0;                
  82   1              j=0;
  83   1      
  84   1       #define CHUAN_F  0x02
  85   1       #if(CHUAN_F == 0x01) 
                while (c != 0xaa)
                 {
                  c=gethex();      //串口读
                  sendchar(c);     //串口写
                 }
               #endif
  92   1       
  93   1      
  94   1        while (1)
  95   1         {
  96   2             while(1)
  97   2             {
  98   3                  display_numb=Read_Temperature();         //读取DS18B20温度值 
  99   3      
 100   3              while ( display_numb>70) 
 101   3               {
 102   4                display_numb=Read_Temperature();      //读取DS18B20温度值 
 103   4                    
 104   4                    if (k1==0) goto to_k2;
 105   4                    if (k2==0) goto to_k1;
 106   4               }
 107   3             //display_int_numb(display_numb);
 108   3                 //tst_sin_d(); 
 109   3             if (display_numb>30)  speak_on(1000);
 110   3             
 111   3             
C51 COMPILER V7.06   XD_V30                                                                09/17/2007 10:01:04 PAGE 3   

 112   3                 if (k1==0) goto to_k2;
 113   3                 if (k2==0) goto to_k1;
 114   3             //goto read_key;
 115   3            #define  SIN   2
 116   3            #if(SIN==1)    
                          ET0=0;
                          //tst_sin ();                //D/A输出正玄波
                      tst_sin_d(); 
                              display_int_numb(display_numb);
                    #elif (SIN==2) 
 122   3                  ET0=1;
 123   3                      tst_sin_d();              //D/A输出正玄波,并在T0中显示温度值
 124   3            #else 
                     DA_display(j++);
                     delay_l(4000);
                     if(j>=0x3ff) j=0; 
                    #endif
 129   3            }
 130   2            
 131   2      
 132   2      
 133   2          to_k1:
 134   2              ET0=0;
 135   2          c=0;
 136   2          for (i=1;i<20000;i++)
 137   2                   {
 138   3                        display(c,c++);
 139   3                    if (c>=10)  c=0;
 140   3                disp_led(0x55);
 141   3                delay_k(30000);
 142   3                    disp_led(0xaa);
 143   3                    delay_k(30000);
 144   3                        if(k1==0) goto key_k1k2;
 145   3               }
 146   2               
 147   2          to_k2:
 148   2              ET0=0;
 149   2              c=0x55;
 150   2          j=0;k=0;
 151   2          for (i=0;i<20000;i++)
 152   2             {
 153   3              
 154   3            #define DS_F 0x02
 155   3            #if(DS_F == 0x01) 
                      display_int_numb(j);   //BCD码显示
                               k++;
                              if (k>=8) {k=0;j++;}
                              if (j>=60) j=0;
                          //display(c&0x0f,c&0x03);
                          disp_led(c);     
                              c=c>>1;
                              if (c==0) c=0xaa;
                              delay_k(20000);
                    #else
 166   3              AD_display();    //A/D转换显示函数
 167   3            #endif  
 168   3              if(k2==0) goto key_k1k2;
 169   3                 }
 170   2      
 171   2           } //while (1)end
 172   1      
 173   1         while(1); 
C51 COMPILER V7.06   XD_V30                                                                09/17/2007 10:01:04 PAGE 4   

 174   1         }  //main_end
 175           
 176           
 177           

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

⌨️ 快捷键说明

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