云台预置位,该如何解决

云台预置位
请教一个问题,现在云台要从预置位1转到预置位2,在预置位2这里停顿10s,然后转到预置位1,在预置位1这里停顿20s,再转到预置位2,如此循环下去,这个停顿时间怎么设置啊,能提供个思路吗?谢谢了!

------解决方案--------------------

while(1)
{
  
1转到2
Sleep(10000)
2转到1
Sleep(20000)
 
}
------解决方案--------------------
C/C++ code

// Timer 原理示例程序 
// FreeFice 2012.3.29 本代码释放到公用域
#include <iostream>
#include <stdlib.h>
#include <time.h>

using namespace std;
struct Timer{
  volatile int t;
  void(*OnTimer)();
  int Set;
  void Run(){if(t==Set){t=0;OnTimer();}};
  };
  
void Fun1(){
  cout<<"Fun1 Running"<<endl;
}

void Fun2(){
  cout << "Fun2 Run"<<endl;
}

volatile long tm[10];

void AddTimer(Timer *t)
{
  for(int i=0;i<10;++i){
    if (!tm[i]){
      tm[i]= long((void*)t);
      break;
      }
    }
}

void TimerRun()
{
  time_t tt=time(NULL),ts;
  while(true){
    ts = time(NULL);
    if(ts-tt<1)continue;
    tt = ts;
    for(int i=0;i<10;++i)
      if(tm[i]){
        Timer *t = (Timer*)(tm[i]);
        t->t++;
        t->Run();
        }
    }
}

int main()
{
  Timer tm1={0,Fun1,10},tm2={0,Fun2,15};
  for(int i=0;i<10;i++)
    tm[i]=0;
  AddTimer(&tm1);
  AddTimer(&tm2);
  TimerRun();
  return 0;
}