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

📄 uuumain.lst

📁 电压瞬时检测
💻 LST
字号:
C51 COMPILER V7.00  UUUMAIN                                                                01/09/2007 15:35:17 PAGE 1   


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

stmt level    source

   1          ////////////////////////////////////////////////////
   2          #include "STC5410AD.H"
   3          #include <ABSACC.H>
   4          #include "uuu.h"
   5          #include "variable.h"
   6          #define  pcastarth  0x1e
   7          #define  pcastartl  0x00
   8          /****************************************************
   9          *   功能:初始化
  10          *****************************************************/
  11          void InitializeSystem(void)
  12          {   
  13   1              TMOD&=0x0f;
  14   1              TMOD|=0x22;
  15   1              PCON|=0x80;  //SMOD=1;
  16   1              TCON=0x05;
  17   1               
  18   1         SCON=0x50;  //初始化串口
  19   1      
  20   1              P1M0=0x07;
  21   1              P1M1=0x00;
  22   1              P3M0=0x00;
  23   1              P3M1=0x00;
  24   1              ADC_CONTR=0xe0;  //电流
  25   1               
  26   1              TH0=0x06;  //用于AD      
  27   1         TL0=0x06;
  28   1              TH1=0x06;        
  29   1         TL1=0x06;
  30   1              timer_time=20;
  31   1              TR0=1;
  32   1              TR1=1;
  33   1              IE=0x82;  //0x8f
  34   1              IP=0x01;
  35   1              alternation=0;  //交替采样
  36   1         power_drop_time=0;  //电压跌落延时
  37   1              P1=0xff;
  38   1              uuu_fault=0;
  39   1      }
  40          /***********************************************************
  41          *   功能:延时程序
  42          ***********************************************************/
  43          /*void delay(uint useconds)
  44          {
  45            for(;useconds>0;useconds--);
  46          }*/
  47          /***************************************************************************
  48          *    中断:外部中断0
  49          ****************************************************************************/
  50          void int_int0(void) interrupt 0 using 1
  51          {
  52   1              
  53   1      }
  54          /***************************************************************************
  55          *    中断:定时器0[自动重装]
C51 COMPILER V7.00  UUUMAIN                                                                01/09/2007 15:35:17 PAGE 2   

  56          *    功能说明:每250uS中断一次,用于A/D采样
  57          ****************************************************************************/
  58          void int_timer0(void) interrupt 1 using 1
  59          {   
  60   1              
  61   1         ad_gather(); 
  62   1              if(power_drop_time>0)power_drop_time--; 
  63   1      }
  64          /***************************************************************************
  65          *    中断:外部中断1,用于保码
  66          ****************************************************************************/
  67          void int_int1(void) interrupt 2 using 1
  68          {
  69   1              
  70   1      }
  71          /***************************************************************************
  72          *    中断:定时器1  [自动重装]
  73          *    功能说明:波特率发生器
  74          ****************************************************************************/
  75          void int_timer1(void) interrupt 3 using 2
  76          {       
  77   1              
  78   1      }
  79          /*****************************************************************************
  80          *         功能:串行中断,接收上位机数据
  81          *****************************************************************************/
  82          void seri_int (void) interrupt 4 using 2
  83          {  
  84   1         uchar data rece_data;
  85   1              rece_data=SBUF;
  86   1         if(RI)
  87   1         {  RI=0;     
  88   2                      if(rece_data==0x3a)
  89   2                      {                       
  90   3                              send_num=0;
  91   3               send_buf[0]=5;
  92   3                              SBUF=send_buf[0];
  93   3                      }               
  94   2          }
  95   1               //---------------------------------------------
  96   1          else if(TI)  //发送
  97   1          {
  98   2              TI=0;
  99   2                      send_num++;
 100   2                      if(send_num<send_buf[0])SBUF=send_buf[send_num];
 101   2                      else send_num=0;
 102   2          } 
 103   1      }
 104          /***************************************************************************
 105          *    中断:PCA中断 25ms中断一次
 106          ****************************************************************************/
 107          void PCA_interrupt(void) interrupt 6 using 1
 108          {       
 109   1              CCAP0L=pcastartl;        //PCA0 定时常数
 110   1              CCAP0H=pcastarth;        //PCA0 定时常数
 111   1              CCF0=0;  //清PCA0 中断标志
 112   1              CF=0;
 113   1              pcatimecounter++;       
 114   1              if(pcatimecounter==40)
 115   1              {
 116   2                      pcatimecounter=0;
 117   2              }
C51 COMPILER V7.00  UUUMAIN                                                                01/09/2007 15:35:17 PAGE 3   

 118   1              
 119   1              
 120   1      }
 121          /*******************************************************************
 122          *   电压短时中断主函数
 123          *   程序设计:JiangMaoZhou
 124          *   最后修改时间:2007-1-19
 125          *******************************************************************/
 126          void main(void)
 127          {  
 128   1         
 129   1              InitializeSystem();   //初始化
 130   1              OUTDJ=1;
 131   1              INDJ=1;
 132   1              while(1) 
 133   1              {  
 134   2                      WDT_CONTR=0x3c;
 135   2                      adc_solve();
 136   2                      power_check();
 137   2              }
 138   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    246    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =    160    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     33    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      3    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -