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

📄 cc.lst

📁 ADC0804的使用
💻 LST
字号:
C51 COMPILER V7.20   CC                                                                    07/20/2005 19:31:53 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE CC
OBJECT MODULE PLACED IN cc.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE cc.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #include <Intrins.h>
   3          
   4          sbit adcs=P2^0;
   5          sbit adrd=P3^7;
   6          sbit adwr=P3^6;
   7          
   8          sbit RS  =P2^7;
   9          sbit RW  =P2^6;
  10          sbit EN  =P2^5;
  11          
  12          #define INTV 20
  13          
  14          unsigned char adata,count;
  15          char valuev[ INTV ];
  16          void Adstart( void );
  17          void Adread( void );
  18          void Delay_ms( unsigned char second ); 
  19          void intil( void );
  20          
  21          //`````````````````````````LCD`````````````````//
  22          void DelayL( );
  23          void DelayS( );
  24          void WriteCommand( unsigned char c );
  25          void WriteData( unsigned char c );
  26          void ShowChar( unsigned char pos,unsigned char c );
  27          void ShowString( unsigned char line,char *ptr );
  28          void InitLcd( );
  29          static char volt0[]="VOLT IS :       ";
  30          static char volt1[]=" .   V           ";
  31          //```````````````````````LCD``````````````````//
  32          
  33          void intil( void )
  34          {
  35   1              EA=0;
  36   1          INT1=1;
  37   1              IT1=1;
  38   1              EX1=1;
  39   1              EA=1;
  40   1      }
  41          
  42          void Adstart( void )
  43          { 
  44   1              adcs=0;
  45   1              adwr=0;
  46   1              _nop_();        //
  47   1              _nop_();
  48   1              adwr=1;         //产生上升沿
  49   1              _nop_();        //
  50   1              _nop_();
  51   1              adwr=0;
  52   1              adcs=1;
  53   1              P1=0XFF;
  54   1      }
  55          
C51 COMPILER V7.20   CC                                                                    07/20/2005 19:31:53 PAGE 2   

  56          void Adread( void )
  57          {
  58   1              adcs=0;
  59   1              adrd=0;
  60   1              _nop_();
  61   1              adata=P1;
  62   1              adrd=1;
  63   1              adcs=1;
  64   1              INT1=1;
  65   1      }
  66          
  67          void intint1( void ) interrupt 2
  68          {
  69   1              Adread( );
  70   1              valuev[ count++ ]=adata;
  71   1              if( count==INTV )
  72   1              {
  73   2                      EX1=0;
  74   2              }
  75   1              else
  76   1              {
  77   2                      Adstart( );
  78   2              }
  79   1      }
  80          
  81          void main( void )
  82          {
  83   1              char code str1[]="WWW.CUIT.EDU.CN ";
  84   1              char code str2[]="   2005-07-18   ";
  85   1      
  86   1              unsigned char i;
  87   1              unsigned int V;
  88   1              unsigned long Z;
  89   1      
  90   1              DelayL( );
  91   1              InitLcd( );
  92   1              DelayL( );
  93   1              ShowString( 0,str1 );
  94   1              ShowString( 1,str2 );
  95   1              for( i=0;i<10;i++ )
  96   1              {
  97   2                      DelayL( );
  98   2              }
  99   1      
 100   1              intil( );
 101   1      
 102   1              while( 1 )
 103   1              {
 104   2                      Adstart( );
 105   2                      while( count!=INTV );
 106   2                      Z=0;
 107   2                      count=0;
 108   2                      for( i=0;i<INTV;i++ )
 109   2                      {
 110   3                              Z=Z+valuev[ count++ ];
 111   3                      }
 112   2                      V=Z/INTV;
 113   2                      
 114   2                      volt1[0]=V/1000+0x30;
 115   2                      V=V%1000;
 116   2                      volt1[1]=V/100+0x30;
 117   2                      V=V%100;
C51 COMPILER V7.20   CC                                                                    07/20/2005 19:31:53 PAGE 3   

 118   2                      volt1[2]=V/10+0X30;
 119   2                      volt1[3]=V%10+0x30;
 120   2      
 121   2                      ShowString( 0,volt0 );
 122   2                      ShowString( 1,volt1 );
 123   2      
 124   2                      for( i=0;i<5;i++ )
 125   2                      {
 126   3                              DelayL( );
 127   3                      }
 128   2                      count=0;
 129   2                      EX1=1;
 130   2              }
 131   1      }
 132          
 133          //````````````LCD```````````````````
 134          void DelayL( )
 135          {
 136   1              unsigned char i,j;
 137   1              i=0xF0;
 138   1              j=0xFF;
 139   1              while( i-- )
 140   1                      while( j-- );
 141   1      }
 142          
 143          void DelayS( )
 144          {
 145   1              unsigned char i;
 146   1              i=0x1F;
 147   1              while( i-- );
 148   1      }
 149          
 150          void WriteCommand( unsigned char c )
 151          {
 152   1              DelayS( );
 153   1              EN=0;
 154   1              RS=0;
 155   1              RW=0;
 156   1              _nop_( );
 157   1              EN=1;
 158   1              P0=c;
 159   1              EN=0;
 160   1      }
 161          
 162          void WriteData( unsigned char c )
 163          {
 164   1              DelayS( );
 165   1              EN=0;
 166   1              RS=1;
 167   1              RW=0;
 168   1              _nop_( );
 169   1              EN=1;
 170   1              P0=c;
 171   1              EN=0;
 172   1              RS=0;
 173   1      }
 174          
 175          void ShowChar( unsigned char pos,unsigned char c )
 176          {
 177   1              unsigned char p;
 178   1              if( pos>=0x10 )
 179   1                      p=pos+0xB0;//
C51 COMPILER V7.20   CC                                                                    07/20/2005 19:31:53 PAGE 4   

 180   1              else
 181   1                      p=pos+0x80;//
 182   1              WriteCommand( p );
 183   1              WriteData( c );
 184   1      }
 185          
 186          void ShowString( unsigned char line,char *ptr )
 187          {
 188   1              unsigned char l,i;
 189   1              l=line<<4;
 190   1              for( i=0;i<16;i++ )
 191   1                      ShowChar( l++, *(ptr+i) );
 192   1      }
 193          
 194          void InitLcd( )
 195          {
 196   1              DelayL( );
 197   1              WriteCommand( 0x38 );
 198   1              DelayL( );
 199   1              WriteCommand( 0x38 );
 200   1              DelayL( );
 201   1              WriteCommand( 0x06 );
 202   1              WriteCommand( 0x0c );
 203   1              WriteCommand( 0x01 );
 204   1              WriteCommand( 0x80 );
 205   1      }
 206          
 207          
 208          
 209                  


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    542    ----
   CONSTANT SIZE    =     34    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     57      10
   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 + -