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

📄 sysclock.lst

📁 摩托车的步进电机驱动。用的是LPC900系列单片机的RTC定时器
💻 LST
📖 第 1 页 / 共 2 页
字号:
 161   4                              set1 = 0;
 162   4                              set2 = 0;
 163   4                              set3 = 1;
 164   4                              set4 = 0;
 165   4                              break;
 166   4                          default:
 167   4                              break;
 168   4                  }
 169   3              }
 170   2          }
 171   1      }
 172          
 173          void StSwitch(void)
 174          {
 175   1          if(MotorStepCnt==MotorStepDst)
 176   1          {
 177   2              MotorDirct=MOTO_STOP;
 178   2              st = ST_MOTO_STOP;
 179   2          }
C51 COMPILER V7.09   SYSCLOCK                                                              06/18/2005 19:57:24 PAGE 4   

 180   1          
 181   1          else
 182   1          {
 183   2              switch(st)
 184   2              {
 185   3                  case ST_MOTO_OBV_UP://正向加速
 186   3                      if(MotorStepCnt<MotorStepDst)
 187   3                      {
 188   4                          if(timeCnt==0)
 189   4                          {
 190   5                              UpDown--;
 191   5                              if(UpDown ==0)
 192   5                              {
 193   6                                 st =ST_MOTO_OBV;//正向常速
 194   6                              }
 195   5                          }
 196   4                      }
 197   3                      else
 198   3                      {
 199   4                          //进入正向减速模式
 200   4                          //MotorDirct  不变;
 201   4                          UpDown=-5;//减速
 202   4                          st = ST_MOTO_OBV_DOWN;
 203   4                      }
 204   3                  break;
 205   3                  
 206   3                  case ST_MOTO_OBV_DOWN:
 207   3                      if(MotorStepCnt<MotorStepDst)
 208   3                      {
 209   4                          st =ST_MOTO_OBV_UP;//正向加速
 210   4                          UpDown = 5;
 211   4                      }
 212   3                      else
 213   3                      {
 214   4                          if(timeCnt==0)
 215   4                          {
 216   5                              UpDown++;
 217   5                              if(UpDown ==0)
 218   5                              {
 219   6                                  st =ST_MOTO_OBV;//正向常速
 220   6                              }
 221   5                          }
 222   4                      }
 223   3                  break;
 224   3                  
 225   3                  case ST_MOTO_OBV:
 226   3                      if(MotorStepCnt<MotorStepDst)
 227   3                      {
 228   4                          
 229   4                      }
 230   3                      else
 231   3                      {
 232   4                          //进入正向减速模式
 233   4                          //MotorDirct  不变;
 234   4                          UpDown=-5;//减速
 235   4                          st = ST_MOTO_OBV_DOWN;
 236   4                      }
 237   3                  break;
 238   3                  
 239   3                  case ST_MOTO_STOP:
 240   3                      if(MotorStepCnt<MotorStepDst)
 241   3                      {
C51 COMPILER V7.09   SYSCLOCK                                                              06/18/2005 19:57:24 PAGE 5   

 242   4                          MotorDirct=MOTO_ZX;
 243   4                          UpDown=5;//加速
 244   4                          st =ST_MOTO_OBV_UP;//正向加速
 245   4                      }
 246   3                      else
 247   3                      {
 248   4                          MotorDirct=MOTO_FX;
 249   4                          UpDown=5;//加速
 250   4                          st =ST_MOTO_REV_UP;//反向加速
 251   4                      }
 252   3                  break;
 253   3                  
 254   3                  case ST_MOTO_REV_UP:
 255   3                      if(MotorStepCnt<MotorStepDst)
 256   3                      {
 257   4                          MotorDirct=MOTO_FX;
 258   4                          UpDown=-5;//减速
 259   4                          st =ST_MOTO_REV_DOWN;//反向减速
 260   4                      }
 261   3                      else
 262   3                      {
 263   4                          if(timeCnt==0)
 264   4                          {
 265   5                              UpDown--;
 266   5                              if(UpDown ==0)
 267   5                              {
 268   6                                  st =ST_MOTO_REV;//反向常速
 269   6                              }
 270   5                          }
 271   4                      }
 272   3                  break;
 273   3                  
 274   3                  case ST_MOTO_REV_DOWN:
 275   3                      if(MotorStepCnt<MotorStepDst)
 276   3                      {
 277   4                          if(timeCnt==0)
 278   4                          {
 279   5                              UpDown++;
 280   5                              if(UpDown ==0)
 281   5                              {
 282   6                                  st =ST_MOTO_STOP;//停止
 283   6                                  MotorDirct=MOTO_STOP;
 284   6                              }
 285   5                          }
 286   4                      }
 287   3                      else
 288   3                      {
 289   4                          MotorDirct=MOTO_FX;
 290   4                          UpDown=cabs(UpDown);//加速
 291   4                          st =ST_MOTO_REV_UP;//反向加速
 292   4                      }
 293   3                  break;
 294   3                  
 295   3                  case ST_MOTO_REV:
 296   3                      if(MotorStepCnt<MotorStepDst)
 297   3                      {
 298   4                          MotorDirct=MOTO_FX;
 299   4                          UpDown=-5;//减速
 300   4                          st =ST_MOTO_REV_DOWN;//反向减速
 301   4                      }
 302   3                      else
 303   3                      {
C51 COMPILER V7.09   SYSCLOCK                                                              06/18/2005 19:57:24 PAGE 6   

 304   4                      }
 305   3                  break;
 306   3                  
 307   3                  default:
 308   3                  break;
 309   3              }
 310   2          }
 311   1      }


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