Пример #1
0
void task_body (void *cookie)
{
    struct timespec ts;
    unsigned int delay = 1000*1000; // Note: Delay in ns
    FILE *pin0 = init_gpio(18);
    FILE *pin1 = init_gpio(23);
    FILE *pin2 = init_gpio(24);
    FILE *pin3 = init_gpio(25);

    signal(SIGINT, dumptimestamps);
    clock_gettime(CLOCK_MONOTONIC, &ts);

    // Lock memory to ensure no swapping is done.
    if(mlockall(MCL_FUTURE|MCL_CURRENT)) {
        fprintf(stderr,"WARNING: Failed to lock memory\n");
    }

    // Set our thread to real time priority
//       struct sched_param sp;
//       sp.sched_priority = 30;
//       if(pthread_setschedparam(pthread_self(), SCHED_FIFO, &sp)){
//                fprintf(stderr,"WARNING: Failed to set stepper thread"
//                       "to real-time priority\n");
//       }

    while(1) {

        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin0,1);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin3,0);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin1,1);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin0,0);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin2,1);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin1,0);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin3,1);
        sleep_until(&ts,delay);
        logtimestamp();
        setiopin(pin2,0);
    }
}
Пример #2
0
std::ofstream & myLib::getofs()
{
  static std::ofstream ofs;
  // Do you want to make noise, or not?
  // TODO: debug level instead of boolean.
  bool quiet = false;
  if (quiet) {
    ofs.close();
  } else {
    if (!ofs.is_open()) {
      //ofs = new std::ofstream();
      ofs.open("C:/EES32/Userlib/nf_EES_lib1/eessucks.log",
               std::ofstream::out | std::ofstream::app);
      logtimestamp(ofs);
      ofs << "Opening the file ..." << std::endl;
    }
  }
  return ofs;
}