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

📄 adc0809电压信号采集.lst

📁 献给初学单片机的爱好者们
💻 LST
字号:
C51 COMPILER V8.08   ADC0809电压信号采糭                                                   04/02/2008 20:52:54 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE ADC0809电压信号采糭
OBJECT MODULE PLACED IN ADC0809电压信号采集.OBJ
COMPILER INVOKED BY: D:\program files\Keil 3\C51\BIN\C51.EXE ADC0809电压信号采集.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <AT89X52.H>  
   2          unsigned char code dispbitcode[]={0xfe,0xfd,0xfb,0xf7,  
   3                                            0xef,0xdf,0xbf,0x7f};  
   4          unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,  
   5                                         0x6d,0x7d,0x07,0x7f,0x6f,0x00};  
   6          unsigned char dispbuf[8]={10,10,10,10,0,0,0,0};  
   7          unsigned char dispcount;  
   8          unsigned char getdata;  
   9          unsigned int Vol;  
  10          unsigned char i;  
  11          sbit ST=P3^0;  
  12          sbit OE=P3^1;  
  13          sbit EOC=P3^2;  
  14          sbit CLK=P3^3;  
  15             
  16          void main(void)  
  17          { unsigned char i; 
  18   1        ST=0;  //初始化ADC0809
  19   1        OE=0;  
  20   1        ET0=1;  
  21   1        ET1=1;  
  22   1        EA=1;  
  23   1        TMOD=0x12;  
  24   1        TH0=216;  
  25   1        TL0=216;  
  26   1        TH1=(65536-4000)/256;  
  27   1        TL1=(65536-4000)%256;  
  28   1        TR1=1;  
  29   1        TR0=1;  
  30   1        ST=1;  
  31   1        for(i=0;i<100;i++)
  32   1        {}
  33   1        ST=0;  //开始转换
  34   1        while(1)  
  35   1          {  
  36   2            if(EOC==1)  
  37   2              {  
  38   3                OE=1;  
  39   3                getdata=P0;  
  40   3                OE=0;  
  41   3                Vol=getdata*2*98/100;  
  42   3                 i=5;  
  43   3                dispbuf[0]=10;  
  44   3                dispbuf[1]=10;  
  45   3                dispbuf[2]=10;  
  46   3                dispbuf[3]=10;  
  47   3                dispbuf[4]=10;  
  48   3                dispbuf[5]=0;  
  49   3                dispbuf[6]=0;  
  50   3                dispbuf[7]=0;  
  51   3                while(Vol/10)  
  52   3                  {  
  53   4                    dispbuf[i]=Vol%10;  
  54   4                    Vol=Vol/10;  
  55   4                    i++;  
C51 COMPILER V8.08   ADC0809电压信号采糭                                                   04/02/2008 20:52:54 PAGE 2   

  56   4                  }  
  57   3                dispbuf[i]=Vol;           
  58   3                ST=1;  
  59   3                ST=0;  
  60   3              }  
  61   2          }  
  62   1      }  
  63             
  64          void t0(void) interrupt 1 using 0  
  65          {                           
  66   1        CLK=~CLK;                         //产生信号频率
  67   1      }  
  68             
  69          void t1(void) interrupt 3 using 0  
  70          {  
  71   1        TH1=(65536-4000)/256;  
  72   1        TL1=(65536-4000)%256;  
  73   1        P1=dispcode[dispbuf[dispcount]];  
  74   1        P2=dispbitcode[dispcount];  
  75   1        if(dispcount==7)  
  76   1          {  
  77   2            P1=P1 | 0x80;  
  78   2          }  
  79   1        dispcount++;  
  80   1        if(dispcount==8)  
  81   1          {  
  82   2            dispcount=0;  
  83   2          }   
  84   1      }  


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    222    ----
   CONSTANT SIZE    =     19    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     13    ----
   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 + -