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

📄 tiaoshu.lst

📁 可用于电机类调速 共分为6档调节电压从220V~80V
💻 LST
字号:
C51 COMPILER V7.06   TIAOSHU                                                               03/04/2009 14:04:30 PAGE 1   


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

stmt level    source

   1          /***********************************************************/
   2          /*********调速器***1~6档** 1档为最高档 6档为最低档 *********/
   3          /***********************************************************/
   4          #include<reg52.h>
   5          #include<mylib.h>
   6          #include<delay.h>
   7          #include<display.h>
   8          #include<yaokong.h>
   9          #include<keychuli.h>
  10          /*************************************************************************************/
  11          /**************************初始化子程序*********************************************/
  12          /**************************************************************************************/
  13          void intin(void)
  14          {
  15   1              TMOD=0x11;
  16   1              IT0=1;//INT0为下降沿触发
  17   1              IE=0x8b;//允许INT0,T0,T1,T2中断
  18   1              IT0=1;           //外部中断0触发方式控制位,下降沿触发
  19   1              EX0=1;           //外部中断0(INT0)中断允许位
  20   1              IP=0x01;         //定义外部中断0优先于定时器中断的优先级
  21   1              dm=0;
  22   1              PWM_data=0x01;
  23   1              TH0=tableH[PWM_data];
  24   1              TL0=tableL[PWM_data];
  25   1              TH1=(65536-10000)/256;//PWM输出周期为10ms
  26   1              TL1=(65536-10000)%256;
  27   1              dianyuan=0;                     //置电源位为开启状态
  28   1              PWM_OUT=0;
  29   1      }
  30          /************************************************************************************/
  31          /***********************************电源***开/关***********************************1*/
  32          /************************************************************************************/
  33          void dianyuanchuli(void)
  34          {
  35   1      dianyuan=~dianyuan;
  36   1      if(dianyuan==1){PWM_data=0x01;numb=0x0f;TR1=1;KEY_OK=1; }
  37   1         else {PWM_OUT=0;numb=0x0d;TR0=0;TR1=1;KEY_OK=1;}
  38   1      }
  39          /************************************************************************************/
  40          /********************************主程序**********************************************/
  41          /************************************************************************************/
  42          void main()
  43          {
  44   1              intin();
  45   1              while(1)
  46   1              {       
  47   2                      if(dianyuan==1)
  48   2                              {       
  49   3                              if(KEY_OK==0)numb=PWM_data;
  50   3                              display();
  51   3                              }
  52   2                              keyscan();                              //按键扫描
  53   2                              if(KTF==1){key_chuli();}//按键处理
  54   2                      if(KEY_OK==1)display();
  55   2              }
C51 COMPILER V7.06   TIAOSHU                                                               03/04/2009 14:04:30 PAGE 2   

  56   1      }
  57          
  58          
  59          /************************************************************************************/
  60          /****************************T0中断服务程序*********T=10ms***************************/
  61          /************************************************************************************/
  62          void time1() interrupt 3 
  63          {       TR0=0;
  64   1              if(KEY_OK==0)TR1=0;
  65   1              if(KEY_OK==1){jishuqi++;}
  66   1              if(jishuqi==200){jishuqi=0;KEY_OK=0;TR1=0;}
  67   1              TH1=(65536-10000)/256;                                  //PWM输出周期为10ms
  68   1              TL1=(65536-10000)%256;
  69   1              TH0=tableH[PWM_data];                                   //装入高电平保持时间初值
  70   1              TL0=tableL[PWM_data];
  71   1              if(dianyuan==1)
  72   1                      {
  73   2                      PWM_OUT=1;
  74   2                      TR0=1;
  75   2                      TR1=1;
  76   2                      }
  77   1      }
  78          /************************************************************************************/
  79          /****************************T0中断服务程序******************************************/
  80          /************************************************************************************/
  81          void time0() interrupt 1  //50ms定时器
  82          {
  83   1      PWM_OUT=0;TR0=0;
  84   1      }
  85          /*************************************************************************************/
  86          /**************************over***over***over***************************************/
  87          /**************************************************************************************/


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