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

📄 adc_515c.lst

📁 51系列具有PWM断口的单片机PWM调制程序.
💻 LST
字号:
C51 COMPILER V6.10  ADC_515C                                                               04/19/2001 12:02:07 PAGE 1   


C51 COMPILER V6.10, COMPILATION OF MODULE ADC_515C
OBJECT MODULE PLACED IN .\ADC_515c.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE .\ADC_515c.c OPTIMIZE(6,SPEED) BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*------------------------------------------------------------------*-
   2          
   3             ADC_515c.c (v1.00)
   4          
   5            ------------------------------------------------------------------
   6          
   7             Simple, single-channel, 8-bit A-D (input) library for C515c
   8          
   9          
  10             COPYRIGHT
  11             ---------
  12          
  13             This code is from the book:
  14          
  15             PATTERNS FOR TIME-TRIGGERED EMBEDDED SYSTEMS by Michael J. Pont 
  16             [Pearson Education, 2001; ISBN: 0-201-33138-1].
  17          
  18             This code is copyright (c) 2001 by Michael J. Pont.
  19           
  20             See book for copyright details and other information.
  21          
  22          -*------------------------------------------------------------------*/
  23          
  24          #include "Main.H"
  25          
  26          // ------ Public variable definitions ------------------------------
  27          // Stores the latest ADC reading
  28          tByte Analog_G;
  29          
  30          /*------------------------------------------------------------------*-
  31          
  32            AD_Init()
  33          
  34            Set up the A-D converter.
  35          
  36          -*------------------------------------------------------------------*/
  37          void AD_Init(void)
  38             {
  39   1         // Select internally-triggered single conversion
  40   1         // Reading from P6.0 (single channel)
  41   1         ADEX = 0;  // Internal A/D trigger
  42   1         ADM = 0;   // Single conversion  
  43   1         MX2 = MX1 = MX0 = 0;  // Read from Channel 0 (Pin 6.0)
  44   1       
  45   1         // Leave ADCON1 at reset value: prescalar is /4  
  46   1         }
  47          
  48          /*------------------------------------------------------------------*-
  49          
  50            AD_Get_Sample()
  51          
  52            Get a single data sample (8 bits) from the (10-bit) ADC.
  53          
  54          -*------------------------------------------------------------------*/
  55          void AD_Get_Sample(void)
C51 COMPILER V6.10  ADC_515C                                                               04/19/2001 12:02:07 PAGE 2   

  56             {
  57   1         tWord Time_out_loop = 1;
  58   1      
  59   1         // Take sample from A-D
  60   1         // Write (value not important) to ADDATL to start conversion
  61   1         ADDATL = 0x01; 
  62   1      
  63   1         // Take sample from A-D (with simple loop time-out)
  64   1         while ((BSY == 1) && (Time_out_loop != 0));
  65   1            {
  66   2        //    Time_out_loop++;  // Disable for use in dScope...
  67   2            }
  68   1      
  69   1         if (!Time_out_loop)
  70   1            {
  71   2            Analog_G = 0;
  72   2            }
  73   1         else 
  74   1            {     
  75   2            // 10-bit A-D result is now available
  76   2            Analog_G = ADDATH;  // Read only 8 most significant 8-bits of A-D
  77   2            }
  78   1         } 
  79          
  80          /*------------------------------------------------------------------*-
  81            ---- END OF FILE -------------------------------------------------
  82          -*------------------------------------------------------------------*/


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