interruttore (comando bistabile)sw interruttores

Serve per accendere la lampadina con un tasto e lasciarla accesa senza altra azione e poi spegnere la lampadina premendo un altro tasto e lasciarla spenta senza altra azione (è un comando bistabile in quanto in assenza di azioni lo stato della lampada resta fissato all'ultima azione prodotta).

Bistabile è il comportamento degli interruttori delle luci di casa: una volta premuti, gli interruttori mantengono la posizione e la luce resta accesa o spenta fino a nuovo intervento di manovra.

Nell'esempio si utilizza il tasto "a" per accendere ed il tasto "s" per spegnere; fin tanto che non viene premuto un tasto, la lampadina non modifica il suo stato; essa viene accesa solo quando viene premuto il tasto "a" e viene spenta solo quando viene premuto il tasto "s" mantenendo lo stato in assenza di azioni.

Non si usa  il controllo "se ... altrimenti" in quanto occorre solo verificare se un preciso tasto è premuto, in caso contrario non deve accadere proprio nulla.

E' buona abitudine fissare lo stato della lampadina al momento dell'avvio del programma. Questa azione corrisponde alla opportunità di fissare la condizione iniziale (o di setup) di un qualunque apparato automatico in modo da non creare all'avvio situazioni indeterminate o addirittura pericolose. Ho scelto la lampadina spenta come stato iniziale.

Ecco l'esempio da scaricare.