Advertisement
Ariser

newsched.cpp

Sep 20th, 2015
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.90 KB | None | 0 0
  1. #include "newsched.h"
  2.  
  3. unsigned long NewSched::lastServiceSpin=0;  // rotationscheck für Pumpen, bla.
  4. unsigned long NewSched::ServiceIntervalSpin=1300000;
  5. unsigned long NewSched::lastServiceMenu=0;  // Menübearbeitung
  6. unsigned long NewSched::ServiceIntervalMenu=300000;
  7. unsigned long NewSched::lastServiceDisplay=0;   // Displaybearbeitung
  8. unsigned long NewSched::ServiceIntervalDisplay=100000;
  9. unsigned long NewSched::lastServiceTemp=0;  //
  10. unsigned long NewSched::ServiceIntervalTemp=1400000;
  11. unsigned long NewSched::ltime=0;
  12. unsigned long NewSched::lastServiceDebug=0;
  13. unsigned long NewSched::ServiceIntervalDebug=1100000;
  14. unsigned long NewSched::lastDisplReset=0;
  15. unsigned long NewSched::ResetIntervalDispl=5000000;
  16.  
  17.  
  18. void NewSched::doloop()
  19. {
  20.     unsigned long atime=micros();
  21.     if (ltime > atime) // Zeit in micros ist übergelaufen. Was tun?
  22.     {
  23.         // Da die letzten Checks hiermit in der Zukunft liegen, setzen wir die alle einfach auf Null. Kann sein, dass dann kleinere Verzögerungen reinkommmen, egal.
  24.         lastServiceSpin=0;
  25.         lastServiceMenu=0;
  26.         lastServiceDisplay=0;
  27.         lastServiceTemp=0;
  28.     }
  29.     /*
  30.     if (atime > lastServiceSpin+ServiceIntervalSpin)
  31.     {
  32.         Spin::service();
  33.         lastServiceSpin=atime;
  34.         return;
  35.     }
  36.     */
  37.    
  38.     if (atime > lastServiceMenu+ServiceIntervalMenu)
  39.     {
  40.         Menu::service();
  41.         lastServiceMenu=atime;
  42.         return;
  43.     }
  44.     /*  // deaktiviert, bis gebraucht.
  45.     if (atime > lastServiceDisplay+ServiceIntervalDisplay)
  46.     {
  47.         Display::service();
  48.         lastServiceDisplay=atime;
  49.         return;
  50.     }
  51.     */
  52.     /*
  53.     if (atime > lastServiceTemp+ServiceIntervalTemp)
  54.     {
  55.         Temp::service();
  56.         lastServiceTemp=atime;
  57.         return;
  58.     }
  59.     */
  60.     if (atime > lastServiceDebug+ServiceIntervalDebug)
  61.     {
  62.         Serial.println("Service");
  63.         lastServiceDebug=atime;
  64.         return;
  65.     }
  66.     if (atime > lastDisplReset+ResetIntervalDispl)
  67.     {
  68.         Serial.println("Rst Displ");
  69.         Display::setup();
  70.         lastDisplReset=atime;
  71.         return;
  72.     }
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement