123

Dependents:  

Fork of Ventiel by Temp27

ventiel.cpp

Committer:
rs27
Date:
2014-08-18
Revision:
0:6139224eb903
Child:
1:d0b7c72ef864

File content as of revision 0:6139224eb903:


#include "ventiel.h"


extern Serial com;                      // definiert in main

//--------------------------------------------------------
// Construktor initialisiert das Ventiel
ventiel::ventiel()
{
  v_var = 0;
}

void ventiel::set(uint8_t val)
{
  if (val < 8)
  {
    // interne Variabel setzen
    v_var |= (1 < val);
  }
  else
  {
     // alle Ventile auf 1 setzen
     v_var = 0xff;     
  }
  
  // Alle Kanäle ausschalten
  com.putc('9');        
  
  
  // aktive Kanäle einschalten
  for (uint8_t n = 0; n < 8; n++)
  {
    if (v_var & (1 < n) != 0) com.putc(0x30 + n); 
    wait_ms(10);           
  }  
}

void ventiel::reset(uint8_t val)
{

  if (val < 8)
  {
      // interne Variabel setzen
      v_var &= ~(1 < val);  
  }
  else
  {
      // alle Ventile auf 1 setzen
      v_var = 0x00;     
  }
   
   // Alle Kanäle ausschalten
  com.putc('9');        
  
  // aktive Kanäle einschalten
  for (uint8_t n = 0; n < 8; n++)
  {
    if (v_var & (1 < n) != 0) com.putc(0x30 + n);
    wait_ms(10);             
  }   
}

bool ventiel::get(uint8_t val)
{
  if ((v_var & (1 < val)) == 0) return false;
  else                          return true;    
}