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

📄 adc0832.lst

📁 ADC0832模数转换程序,上传与大家交流.有什么错误希望大家指点
💻 LST
字号:
C51 COMPILER V7.07   ADC0832                                                               03/14/2007 13:46:31 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE ADC0832
OBJECT MODULE PLACED IN ADC0832.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ADC0832.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /********************************************************/
   2          /*                              杭州电子&计算机工作室                                   */
   3          /*              http://www.hificat.com                                  */
   4          /*              ADC0832测试程序                                                 */
   5          /*                              目标器件:AT89C51                                               */
   6          /*                              晶振:12MHZ                                                              */
   7          /*                              编译环境:Keil 7.50A                                    */
   8          /********************************************************/
   9          
  10          /*********************************包含头文件********************************/
  11          #include "reg51.h"
  12          
  13          /*********************************端口定义**********************************/
  14          sbit  CS  = P3^4;
  15          sbit  Clk = P1^0;
  16          sbit  DIO = P1^1;
  17          
  18          /*******************************定义全局变量********************************/
  19          unsigned char adval;                                            //AD值
  20          
  21          /*******************************共阳LED段码表*******************************/
  22          unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  23          
  24          /****************************************************************************
  25          函数功能:AD转换子程序
  26          入口参数:CH
  27          出口参数:adval
  28          ****************************************************************************/
  29          unsigned char A_D(bit CH)
  30          {
  31   1              unsigned char i;
  32   1              CS  = 0;                                                                //片选
  33   1              Clk = 0;                                                                //时钟拉低
  34   1              Clk = 1;                                                                //时钟拉高
  35   1              DIO = 1;                                                                //启动信号
  36   1              if ( CH == 0 )                                                  //通道选择
  37   1              {
  38   2                      Clk = 0;
  39   2                      Clk = 1;
  40   2                      DIO = 1;                                                        //通道0的第一位
  41   2      
  42   2                      Clk = 0;
  43   2                      Clk = 1;
  44   2                      DIO = 0;                                                        //通道0的第二位
  45   2              }
  46   1              else
  47   1              {
  48   2                      Clk = 0;
  49   2                      Clk = 1;
  50   2                      DIO = 1;                                                        //通道1的第一位
  51   2      
  52   2                      Clk = 0;
  53   2                      Clk = 1;
  54   2                      DIO = 1;                                                        //通道1的第二位
  55   2              }
C51 COMPILER V7.07   ADC0832                                                               03/14/2007 13:46:31 PAGE 2   

  56   1      
  57   1              Clk = 1;
  58   1              Clk = 0;
  59   1      
  60   1              for( i = 0;i < 8;i++ )                                  //读取八位AD值
  61   1              {
  62   2                      Clk = 1;
  63   2                      Clk = 0;
  64   2                      if ( DIO )
  65   2                              adval = (adval>>1) | 0x80;
  66   2                      else
  67   2                              adval = (adval>>1) | 0x00;              
  68   2              }
  69   1              CS = 1;                                                                 //释放ADC0832
  70   1              return(adval);                                                  //返回采样值
  71   1      }
  72          
  73          /****************************************************************************
  74          函数功能:数码管显示子程序
  75          入口参数:
  76          出口参数:
  77          ****************************************************************************/
  78          void delay1(void)
  79          {
  80   1              int k;
  81   1              for(k=0;k<600;k++);
  82   1      }
  83          
  84          /****************************************************************************
  85          函数功能:数码管显示子程序
  86          入口参数:k
  87          出口参数:
  88          ****************************************************************************/
  89          void display(int k)
  90          {
  91   1              P2=0xfe;                        
  92   1              P0=tab[k/1000];
  93   1              delay1();
  94   1              P2=0xfd;
  95   1              P0=tab[k%1000/100];
  96   1              delay1();
  97   1              P2=0xfb;
  98   1              P0=tab[k%100/10];
  99   1              delay1();
 100   1              P2=0xf7;
 101   1              P0=tab[k%10];
 102   1              delay1();
 103   1              P2=0xff;
 104   1      }
 105          
 106          /****************************************************************************
 107          函数功能:主程序
 108          入口参数:
 109          出口参数:
 110          ****************************************************************************/
 111          void main(void)
 112          {
 113   1              P2=0xff;                                                                        //端口初始化
 114   1              P0=0xff;
 115   1              while(1)                                                                        //主循环
 116   1                      {
 117   2                      A_D(0x01);                                                              //通道1转换
C51 COMPILER V7.07   ADC0832                                                               03/14/2007 13:46:31 PAGE 3   

 118   2                      display(adval);                                                 //显示AD值
 119   2                      }
 120   1      }
 121          
 122          
 123          
 124          


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