Monitor für das Tasterprogramm

Dependents:   19_Taster_BSW_oo 19_Taster_a

Fork of monitor by Temp27

Revision:
4:83dbae473d1f
Parent:
3:254f7ffb9b32
Child:
5:9c7606a0be99
--- a/monitor.cpp	Sun Aug 03 18:24:11 2014 +0000
+++ b/monitor.cpp	Fri Aug 08 16:01:41 2014 +0000
@@ -16,11 +16,12 @@
 extern bool t_flag;                     // definiert in main
 extern bool f_flag;                     // definiert in main
 extern int drops;                       // definiert in main
+extern int tropfperiode;                // definiert in main
 
-#define COMMAND_MAX    13
+#define COMMAND_MAX    14
 #define COMMAND_LEN    7
 
-const char command[COMMAND_MAX][COMMAND_LEN] = {"DATE","DEL","DIR","DROPS","DUMP","FILL","GO","HELP","LIST","SET","SOLL","STOPP","TIME"};
+const char command[COMMAND_MAX][COMMAND_LEN] = {"CYCLE","DATE","DEL","DIR","DROPS","DUMP","FILL","GO","HELP","LIST","SET","SOLL","STOPP","TIME"};
 
 char buffer[100]; 
 
@@ -137,19 +138,20 @@
         
         switch(i)                       // Programmaufruf
         {
-          case  0: date();          break;
-          case  1: del();           break;
-          case  2: dir();           break;
-          case  3: func_drops();    break;
-          case  4: dump();          break;
-          case  5: fill();          break;
-          case  6: go();            break;
-          case  7: help();          break;
-          case  8: list();          break;
-          case  9: set();           break;
-          case 10: soll();          break;
-          case 11: stop();          break;
-          case 12: time();          break;
+          case  0: cycle();         break;
+          case  1: date();          break;
+          case  2: del();           break;
+          case  3: dir();           break;
+          case  4: func_drops();    break;
+          case  5: dump();          break;
+          case  6: fill();          break;
+          case  7: go();            break;
+          case  8: help();          break;
+          case  9: list();          break;
+          case 10: set();           break;
+          case 11: soll();          break;
+          case 12: stop();          break;
+          case 13: time();          break;
         }                                   
   }
 }
@@ -253,6 +255,7 @@
   pc.printf("\n stop [?,f,F,t,Tl] deaktivieren der Heizung oder der Tropfen");
   pc.printf("\n set index [val] Sensor auswaehlen");
   pc.printf("\n soll[val] Sollwertvorgabe fuer den Temperaturfuehler");
+  pc.printf("\n cycle [val] Zeiteinheit fuer die Messung der Tropfen");
   pc.printf("\n drops [val] Anzahl der Tropfen pro Zeiteinheit");
   pc.printf("\n");
   pc.printf("\n -- files ------------------------");
@@ -336,6 +339,39 @@
     pc.printf("\n");
 }
 
+//-----------------------------------------------------------------------------
+// monitor Aufruf cycle
+// mit diesem Befehl wird die Zeit in Sekunden vorgegeben, in der die Tropfenzahl
+// ausgewertet wird
+
+void cycle(void)
+{
+    int n;
+    char wert[20];
+
+    n = sscanf(&com_line[ComLinePtr],"%s",wert);
+    
+    switch (n)
+    {
+      case -1:  pc.printf("\nZeit der Messung = %d Sekunden",tropfperiode);
+                break;
+        
+      case 1:   
+               
+                cfg.setValue("cycle", wert);
+                cfg.write("/sd/input.cfg");
+                
+                tropfperiode = atoi(wert);
+                
+                pc.printf("\nneue Zeit der Messung = %d Sekunden",tropfperiode);
+                
+                break;
+                
+     } // end switch
+     
+     pc.printf("\n");
+}
+
 
 //-----------------------------------------------------------------------------
 // monitor Aufruf drops
@@ -355,7 +391,6 @@
                 break;
         
       case 1:   
-               
                 cfg.setValue("drops", wert);
                 cfg.write("/sd/input.cfg");
                 
@@ -374,8 +409,6 @@
 
 void go(void)
 {
-    
-    
     char ch;
 
     sscanf(&com_line[ComLinePtr],"%c",&ch);
@@ -412,8 +445,8 @@
                 
                 break;
                       
-       default:  pc.printf("\nBefehl go kennt nur die Zeichen ?,t,T,f,F");
-                 break;
+       default: pc.printf("\nBefehl go kennt nur die Zeichen ?,t,T,f,F");
+                break;
                                
      } // end switch
     pc.printf("\n");
@@ -426,8 +459,6 @@
 
 void stop(void)
 {
-    
-    
     char ch;
 
     sscanf(&com_line[ComLinePtr],"%c",&ch);
@@ -464,11 +495,13 @@
                 
                 break;
                       
-       default:  pc.printf("\nBefehl stop kennt nur die Zeichen ?,t,T,f,F '%c' %x", ch, ch);
-                 break;
+       default:  
+                pc.printf("\nBefehl stop kennt nur die Zeichen ?,t,T,f,F '%c' %x", ch, ch);
+                break;
                                
      } // end switch
-    pc.printf("\n");
+     
+     pc.printf("\n");
 }
 //-----------------------------------------------------------------------------
 // monitor Aufruf