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

📄 timer.lst

📁 使用C8051F实现脉搏及血氧饱和度测量 包括均值滤波
💻 LST
字号:
C51 COMPILER V8.02   TIMER                                                                 12/05/2007 10:38:51 PAGE 1   


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

line level    source

   1          #include <c8051f020.h>
   2          #include "peripheral.h"
   3          #include "sample.h"
   4          
   5          
   6          sbit DA0=P0^2;
   7          sbit DA1=P0^3;
   8          void Timer2_ISR() interrupt 5
   9          {
  10   1              static state=0;
  11   1              TF2=0;
  12   1              switch(state)
  13   1              {
  14   2                      case 0:
  15   2                              DA0=1;
  16   2                              DA1=0;
  17   2                              state++;
  18   2                              break;
  19   2                      case 1:
  20   2                              DA0=0;
  21   2                              DA1=0;
  22   2                              state++;
  23   2                              break;
  24   2                      case 2:
  25   2                              DA0=0;
  26   2                              DA1=1;
  27   2                              state++;
  28   2                              break;
  29   2                      case 3:
  30   2                              DA0=0;
  31   2                              DA1=0;
  32   2                              state=0;
  33   2      
  34   2                              DataPos++;
  35   2                              break;
  36   2                      default:break;
  37   2              }
  38   1              /*****************************/
  39   1              if(DataPos>=PREWAIT)
  40   1              {
  41   2                      AD0INT=0;
  42   2                      AD0BUSY=1;
  43   2                      while(!AD0INT);
  44   2                      switch(state)
  45   2                      {
  46   3                      case 0:
  47   3                              DC_RED=DC_RED+ADC0H;
  48   3                              AMX0SL=0x03; //Next channel=SignalRed
  49   3                              break;
  50   3                      case 1:
  51   3                              SampleRed[DataPos-PREWAIT]=ADC0H;
  52   3                              if(ADC0H>RED_MAX)
  53   3                                      RED_MAX=ADC0H;
  54   3                              if(ADC0H<RED_MIN)
  55   3                                      RED_MIN=ADC0H;
C51 COMPILER V8.02   TIMER                                                                 12/05/2007 10:38:51 PAGE 2   

  56   3                              AMX0SL=0x01; //Next channel=DC_IRED
  57   3                              break;
  58   3                      case 2:
  59   3                              DC_IRED=DC_IRED+ADC0H;
  60   3                              AMX0SL=0x04; //Next channel=SignalIRed
  61   3                              break;
  62   3                      case 3:
  63   3                              SampleIRed[DataPos-PREWAIT]=ADC0H;
  64   3                              if(ADC0H>IRED_MAX)
  65   3                                      IRED_MAX=ADC0H;
  66   3                              if(ADC0H<IRED_MIN)
  67   3                                      IRED_MIN=ADC0H;
  68   3                              AMX0SL=0x00; //Next channel=DC_RED
  69   3                              break;
  70   3                      default:break;
  71   3                      }
  72   2              }
  73   1              
  74   1              /*****************************/
  75   1              
  76   1              if(DataPos>=SAMPLESIZE+PREWAIT)
  77   1              {
  78   2                      DC_RED/=SAMPLESIZE;
  79   2                      DC_IRED/=SAMPLESIZE;
  80   2                      TR2=0;
  81   2              }
  82   1      }


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