Bistabile

Per bistabile, s’intende un sistema dotato di un ingresso di controllo e di un’uscita collegata a un utilizzatore; in un bistabile, l’uscita cambia stato logico (zero o 1) al variare dello stato logico dell’ingresso.

Un esempio elettromeccanico di elemento bistabile è il relè passo-passo, con un pulsante di controllo, si accende o spegne l’apparecchiatura collegata al relè; è possibile collegare in parallelo diversi pulsanti in modo da accendere e spegnere il carico da diversi punti, per esempio la lampadina di un corridoio.

contatore bistabile arduino
contatore bistabile 2

C Code

collego il pulsante al pin 2 della porta D, utilizzato dalla funzione INT 0.

collego il led al bit 0 della porta B, corrispondente al pin 8 di Arduino.

imposto la funzione Calcolo incrementando il valore ogni volta che premo il pulsante.

la funzione Delay è utilizzata come antirimbalzo.

Questo è un modo più efficiente per ottenere alternativamente il valore 0 e 1 .

contatore bistabile 8

nel ciclo (loop) imposto il valore di Expression = 1, in modo che sia ripetuto continuamente.

collego l’uscita associata alla variabile push, al bit 0 della porta B

contatore bistabile 7

abilito INT0 al pin 2 e attribuisco il nome “pulsante” alla Macro  richiamata da INT0

definisco i parametri della Macro “pulsante”, da associare a INT0

nelle proprietà di INT0, stabilisco che la chiamata alla macro avviene  sul fronte di salita

contatore bistabile 9

la macro richiamata da INT0, attiva l’uscita B0, Pin 8 di Arduino, collegata al led

il programma utilizza la variabile push, associata al pulsante collegato al Pin 2 di Arduino .

Ogni volta che si preme il pulsante, la variabile push assumerà alternativamente  il valore 0 o il valore 1.

  • L’espressione  0 -1 = -1; il valore assoluto di -1  è  1.
  • L’ operazione  successiva sarà:  1 -1 = 0.
  • La successiva sarà di nuovo 0 -1 = -1
  • Quindi premendo il pulsante avremo unicamente il valore 0 e il valore 1.
contatore bistabile abs1

utilizzo fabs,  per avere  il valore assoluto.

Macro “pulsante”

contatore bistabile modulo
contatore bistabile push

per accendere e spegnere il led, utilizzo il modulo % con valore = 2, in modo che ad ogni incremento del ciclo, push = push + 1, avrò unicamente due valori, acceso o spento.

definisco la variabile push

Riccardo Monti