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

📄 0806c.lst

📁 本文件好似一系列的仿真
💻 LST
字号:
C51 COMPILER V8.08   0806C                                                                 03/05/2009 10:59:43 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE 0806C
OBJECT MODULE PLACED IN 0806c.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 0806c.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          
   2          
   3          
   4           #include <reg51.h>      //外接芯片来实现外围电机的选择
   5          #include <stdio.h>
   6          #define DAC0832Addr0 0X7FFF   //0832地址1 
   7          #define uchar unsigned char   //单个字节无符号数
   8          #define uint unsigned int  // 输出口初始化      
   9          sbit  p10=P1^0 ;
  10          sbit  p12=P1^2 ;
  11          sbit  p14=P1^4;
  12          sbit  p16=P1^6 ;
  13          bit flag;
  14          uchar keynumber;
  15          uchar i,j;        
  16          void Delay ();
  17          void TransformData ( uint DAC0832,uchar c0832data); //转换数据
  18          void ST();
  19          void TR();
  20          //void  SQ();
  21          //void SIN();
  22          main ()
  23            {
  24   1             
  25   1                 P0=0xff;  //端口初始化,其实不用  上电后自动置高
  26   1             P1=0xff;  //端口初始化,其实不用  上电后自动置高
  27   1             P2=0xff;  //端口初始化,其实不用  上电后自动置高                           
  28   1                 P3=0xff;  //端口初始化,其实不用  上电后自动置高             
  29   1             Delay();
  30   1                 EX0=1;
  31   1                 IT0=1;
  32   1                 EA=1;
  33   1                 while(1)
  34   1                 {
  35   2               switch(keynumber)
  36   2                    {  
  37   3                           case 1:    ST();
  38   3                              break;
  39   3                                        
  40   3                              
  41   3                           case 0: TR();
  42   3                              break;    
  43   3                              
  44   3                   }
  45   2                 }
  46   1        }     
  47            void  ST()
  48            {       
  49   1               
  50   1               TransformData( DAC0832Addr0,i) ;
  51   1                   i++;
  52   1                  
  53   1                  
  54   1        }              
  55          /* void TR(void)
C51 COMPILER V8.08   0806C                                                                 03/05/2009 10:59:43 PAGE 2   

  56          {
  57             if(~flag)
  58               {
  59                  TransformData( DAC0832Addr0,j)  ;
  60                          j++;
  61                          if(j==0){j=255;flag=1;}
  62                    }
  63             else if(flag)
  64               {
  65                     TransformData( DAC0832Addr0,j)       ;
  66                     j--;
  67                     if(j==255){j=1;flag=0;}
  68                   
  69                   }
  70           }      */
  71           void  TR()
  72            {       
  73   1              
  74   1                  
  75   1           TransformData( DAC0832Addr0,j)     ;
  76   1      
  77   1               if((j==255)|( j==0))   //g=关系或
  78   1                    {flag=~flag;}
  79   1                if (flag==1)
  80   1                   {
  81   2                     j++;
  82   2                   }
  83   1               if (flag==0)
  84   1                   {
  85   2                    j--;
  86   2                    }   
  87   1                 
  88   1              }  
  89                    
  90            
  91          void int0() interrupt   0 using  0
  92            {
  93   1          
  94   1          if (p10==0)
  95   1                keynumber=0;  
  96   1              if (p12==0)
  97   1                 keynumber=1;
  98   1              if (p14==0)
  99   1                 keynumber=3;
 100   1              if (p16==0)
 101   1                 keynumber=4;
 102   1        }     
 103           void TransformData( uint DAC0832,uchar c0832data)//转换数据
 104                   {
 105   1                      *((uchar  xdata *)DAC0832)=c0832data; //向0832输出待转换数字量c0832data
 106   1             /* 在C语言中 访问外部寄存器时要先进行类型转换。用(uchar xdata *)转化位指针型数据,再间接寻址*/
 107   1           }  
 108          void Delay () 
 109            {
 110   1             ;
 111   1             ;
 112   1        }        
 113          
 114          
 115          
 116          
 117           /*
C51 COMPILER V8.08   0806C                                                                 03/05/2009 10:59:43 PAGE 3   

 118          #include <reg51.h>       //外接芯片来实现外围电机的选择
 119          #include <stdio.h>
 120          #define DAC0832Addr0 0X7FFF   //0832地址1 
 121          #define uchar unsigned char   //单个字节无符号数
 122          #define uint unsigned int  // 输出口初始化      
 123          sbit  p10=P1^0 ;
 124          sbit  p12=P1^2 ;
 125          sbit  p14=P1^4;
 126          sbit  p16=P1^6 ;
 127          bit flag;
 128          uchar keynumber;
 129          uchar i,j;        
 130          void Delay ();
 131          void TransformData ( uint DAC0832,uchar c0832data); //转换数据
 132          void ST();
 133          void TR();
 134          //void  SQ();
 135          //void SIN();
 136          main ()
 137            {
 138                 
 139                     P0=0xff;  //端口初始化,其实不用  上电后自动置高
 140                 P1=0xff;  //端口初始化,其实不用  上电后自动置高
 141                 P2=0xff;  //端口初始化,其实不用  上电后自动置高                           
 142                     P3=0xff;  //端口初始化,其实不用  上电后自动置高             
 143                 Delay();
 144                     EX0=1;
 145                     IT0=1;
 146                     EA=1;
 147                while(1) 
 148                    {      
 149                            if(keynumber==1)
 150                             {    
 151                                  ST();
 152                                            
 153                                  }
 154                            if(keynumber==2)
 155                             {    
 156                                  TR();     
 157                                  }
 158                    }
 159                     
 160            }     
 161            void  ST()
 162            {       uchar i;
 163                i=0;
 164                   
 165                     while(1)
 166                       {
 167                    
 168                   TransformData( DAC0832Addr0,i) ;
 169                       i++;
 170                       Delay();
 171                       } 
 172            }
 173            void  TR()
 174            {       
 175                uchar i;
 176                i=0;
 177                    flag=0;
 178                    
 179                    
C51 COMPILER V8.08   0806C                                                                 03/05/2009 10:59:43 PAGE 4   

 180                     /* while(1)
 181                      {
 182                   TransformData( DAC0832Addr0,i) ;
 183                       if((i==255)|( i==0))       //g=关系或
 184                        {flag=~flag;}
 185                       if (flag==1)
 186                       {
 187                         i++;
 188                       }
 189                       if (flag==0)
 190                       {
 191                         i--;
 192                        }
 193                            Delay();
 194                     }   */
 195                    
 196            //}
 197          /*void int0() interrupt 0 using  0
 198            {
 199              
 200              if (p10==0)
 201                    keynumber=1;  
 202                  if (p12==0)
 203                     keynumber=2;
 204                  if (p14==0)
 205                     keynumber=3;
 206                  if (p16==0)
 207                     keynumber=4;
 208            }     
 209           void TransformData( uint DAC0832,uchar c0832data)//转换数据
 210                   {
 211                          *((uchar  xdata *)DAC0832)=c0832data; //向0832输出待转换数字量c0832data
 212                 /* 在C语言中 访问外部寄存器时要先进行类型转换。用(uchar xdata *)转化位指针型数据,再间接寻址*/
 213           //    }  
 214           /*     
 215          void Delay () 
 216            {
 217                 ;
 218                 ;
 219            }        
 220                    */


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    130    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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