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

📄 there_phase_trigle.lst

📁 可控硅触发源码。三相两相都可以!三相两相都可以
💻 LST
字号:
C51 COMPILER V7.07   THERE_PHASE_TRIGLE                                                    08/24/2007 14:14:06 PAGE 1   


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

stmt level    source

   1          #include <intrins.h>
   2          //#include <stdio.h>
   3          //#include <AT89X52.h>
   4          #include "./STC_5412.h"
   5          
   6          #define B_trigger P2_1
   7          #define A_trigger P2_0
   8          #define C_trigger P2_2
   9          #define Stop P0_1
  10          #define trigle_normal_light P2_6
  11          #define trigle_falue_light P2_7
  12          #define trigle_stop_light P2_5
  13          #define F_sel P0_0
  14          
  15          bit flag=0x00;
  16          /*********************************************************/
  17          //函数:Delay()
  18          //功能:延时
  19          //输入:延时时间设定值
  20          //输出:?
  21          //描述:
  22          /*********************************************************/
  23          void Delay(unsigned char Times)
  24          {
  25   1      unsigned char n;
  26   1      n = 30;
  27   1      for(;Times>0;Times--)
  28   1      {
  29   2        for(;n>0;n--)
  30   2         ;
  31   2      }
  32   1      }
  33          /*
  34          void Delay_long(unsigned char ms)
  35          {
  36          unsigned int n;
  37          
  38          for(;ms>0;ms--)
  39          {
  40            n = 235;
  41            for(;n>0;n--)
  42             ;
  43          }
  44          }
  45          /*********************************************************/
  46          //函数:pluse()
  47          //功能:触发脉冲产生
  48          /*********************************************************/
  49          void pluse(char NUMB)
  50          {
  51   1      switch(NUMB)
  52   1      {
  53   2      case  0x01:  {
  54   3                                A_trigger=0x00;
  55   3                                Delay(0x10);
C51 COMPILER V7.07   THERE_PHASE_TRIGLE                                                    08/24/2007 14:14:06 PAGE 2   

  56   3                                A_trigger=0x01;
  57   3                                Delay(0x40);
  58   3                                A_trigger=0x00;
  59   3                                Delay(0x10);
  60   3                                A_trigger=0x01;
  61   3                                Delay(0x40);
  62   3                                A_trigger=0x00;
  63   3                                Delay(0x10);
  64   3                                A_trigger=0x01;
  65   3                                Delay(0x40);
  66   3                                A_trigger=0x00;
  67   3                                Delay(0x10);
  68   3                                A_trigger=0x01;
  69   3                                break;
  70   3                               } 
  71   2      case  0x02:  {
  72   3                                B_trigger=0x00;
  73   3                                Delay(0x10);
  74   3                                B_trigger=0x01;
  75   3                                Delay(0x40);
  76   3                                B_trigger=0x00;
  77   3                                Delay(0x10);
  78   3                                B_trigger=0x01;
  79   3                                Delay(0x40);
  80   3                                B_trigger=0x00;
  81   3                                Delay(0x10);
  82   3                                B_trigger=0x01;
  83   3                                Delay(0x40);
  84   3                                B_trigger=0x00;
  85   3                                Delay(0x10);
  86   3                                B_trigger=0x01;
  87   3                                break;
  88   3                               }
  89   2      case  0x03:  {
  90   3                                C_trigger=0x00;
  91   3                                Delay(0x10);
  92   3                                C_trigger=0x01;
  93   3                                Delay(0x40);
  94   3                                C_trigger=0x00;
  95   3                                Delay(0x10);
  96   3                                C_trigger=0x01;
  97   3                                Delay(0x40);
  98   3                                C_trigger=0x00;
  99   3                                Delay(0x10);
 100   3                                C_trigger=0x01;
 101   3                                Delay(0x40);
 102   3                                C_trigger=0x00;
 103   3                                Delay(0x10);
 104   3                                C_trigger=0x01;
 105   3                                break;
 106   3                               }
 107   2      default:break;
 108   2      }
 109   1      }
 110          /*********************************************************/
 111          //函数:timer0()
 112          //功能:定时器0中断
 113          //输入:
 114          //输出:
 115          //描述:
 116          /*********************************************************/
 117          void timer0(void) interrupt 1 using 3
C51 COMPILER V7.07   THERE_PHASE_TRIGLE                                                    08/24/2007 14:14:06 PAGE 3   

 118          {
 119   1      TR0=0;
 120   1      TH0=0xcd; //装入初值,22.1184MHZ 的晶振//7ms
 121   1      TL0=0x99;
 122   1      pluse(0x01);
 123   1      TR1=1;
 124   1      }
 125          /*********************************************************/
 126          //函数:timer1()
 127          //功能:定时器1中断
 128          //输入:
 129          //输出:
 130          //描述:
 131          /*********************************************************/
 132          void timer1(void) interrupt 3// using 1
 133          {
 134   1      TR1=0;
 135   1      TH1=0xD3; //装入初值,22.1184MHZ 的晶振
 136   1      TL1=0x93;
 137   1      if(flag)
 138   1      {
 139   2      flag=0;
 140   2      pluse(0x03);
 141   2      TR1=0;
 142   2      }
 143   1      else
 144   1      {
 145   2      flag=1;
 146   2      pluse(0x02);
 147   2      TR1=1;
 148   2      }
 149   1      //TR1=1;
 150   1      }
 151          /*********************************************************/
 152          //函数:ex0()
 153          //功能:外部中断0服务程序
 154          //输入:
 155          //输出:
 156          //描述:
 157          /*********************************************************/
 158          void ex0() interrupt 0 using 2
 159          {
 160   1                              //  Delay_long(0x30);
 161   1                               trigle_stop_light=!trigle_stop_light; 
 162   1                                TR0=1;
 163   1      }
 164          /*********************************************************/
 165          //函数:main()
 166          //功能:主函数
 167          //输入:
 168          //输出:
 169          //描述:
 170          /*********************************************************/
 171          void main(void)
 172          {
 173   1            
 174   1      int i;
 175   1      for(i=0;i<1000;i++)            
 176   1      Delay(10);
 177   1      TMOD=0x11; // 定时器1 工作于方式2
 178   1      //SCON=0x40; // 串口工作于方式1
 179   1      TH1=0xD3; //装入初值,22.1184MHZ 的晶振//6.17ms
C51 COMPILER V7.07   THERE_PHASE_TRIGLE                                                    08/24/2007 14:14:06 PAGE 4   

 180   1      TL1=0x93;
 181   1      
 182   1      TL0 = 0xcd;
 183   1      TH0 = 0x99;//7ms
 184   1      
 185   1      //PCON=0x00; //波特率无倍增
 186   1      //TR1=1; //开启定时器1 开始工作
 187   1      //TR0=1; //开启定时器0 开始工作
 188   1      ET0=1;//允许定时器0中断
 189   1      ET1=1;//
 190   1      //WDT_CONTR = 0x3f;   //开硬件狗
 191   1      //ES=1; 
 192   1      //P2M0  = 0x95;
 193   1      P2M1  = 0x01;
 194   1              IT0 = 0;      //低电平引起中断
 195   1              //      IT1 = 0;      //低电平引起中断
 196   1              EX0 = 1;      //开外部0中断
 197   1              //      EX1 = 1;      //开外部1中断
 198   1      trigle_normal_light=0x00;
 199   1      EA=1;
 200   1      while(1)
 201   1      {
 202   2              ;
 203   2      
 204   2      }
 205   1        
 206   1      }


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