/// <summary> /// Write true or false on Led n (n = 0...7) /// </summary> /// <param name="state">true or false</param> public void Write(bool state) { byte mask = 1; byte stateLeds; mask = (byte)(mask << position); if (state) { stateLeds = (byte)(leds.Read() & (byte)~mask); } else { stateLeds = (byte)(leds.Read() | mask); } leds.Write(stateLeds); }
public bool Read() { byte value = buttons.Read(); if (position == (value & position)) { return(true); } else { return(false); } }
/// <summary> /// Reads and return state of all the IHMSSI board buttons /// </summary> /// <param name="BPEchap"></param> /// <param name="BPEnter"></param> /// <param name="BPOk"></param> /// <param name="BPSet"></param> /// <param name="BPMoins"></param> /// <param name="BPFleBas"></param> /// <param name="BPFleHaut"></param> /// <param name="BPPlus"></param> public void BPsRead(out bool BPEchap, out bool BPEnter, out bool BPOk, out bool BPSet, out bool BPMoins, out bool BPFleBas, out bool BPFleHaut, out bool BPPlus) { byte EtatBp = BPs.Read(); BPEchap = ((EtatBp & 128) == 128); BPEnter = !((EtatBp & 64) == 64); BPOk = ((EtatBp & 32) == 32); BPSet = ((EtatBp & 16) == 16); BPMoins = ((EtatBp & 8) == 8); BPFleBas = ((EtatBp & 4) == 4); BPFleHaut = ((EtatBp & 2) == 2); BPPlus = ((EtatBp & 1) == 1); }