Comparatore multiplo

I comparatori multipli furono molto utilizzati in passato dagli audiofili per realizzare gli analazzatori di spettro a led, o da chi aveva l’esigenza di vedere l’andamento di una tensione continua, senza ricorrere agli strumenti ad ago, che mal sopportavano le sollecitazioni meccaniche degli automezzi, come i contagiri per auto.

Il mercato, conscio di questa esigenza sviluppò i circuiti integrati UAA170/UAA180 e LM3914/LM3915, che al loro interno hanno circuiti operazionali utilizzati come comparatori multipli con le uscite collegate ai led che si accendevano, in successione, in funzione della tensione di ingresso.

Le condizioni che determinano l’accenzione dei leds sono definite dalla espressione

ADC_in maggiore di ...

i valori 75, 120 e 170 sono le soglie di commutazione

analog comp multiplo decisione

al superamento del valore di soglia il led si accende.

analog comp multiplo slider

Il progetto utilizza un potenziometro di tipo slider collegato all’ingresso analogico A0 e tre Leds collegati alla porta B di Arduino UNO

analog comp multiplo getRaw

La variabile ADC_in di tipo Byte, che contiene il valore medio fornito da “RawAverageByte”

analog comp multiplo output

RawAverageByte, esegue 10 campionamenti al secondo con un ritardo di 10 microsecondi tra un campionamento e il successivo; ADC_in è il “Return Value (Byte).

Output = 0 : led spento

Output = 1: led acceso

analog comp multiplo delay

il “Delay” di 10 millisecondi aggiunge una piccola isteresi alla transizione dello stato logico per l’accenzione e lo spegnimento dei leds.

Diagramma di flusso completo

analog comp multiplo completo

Comparatore multiplo con 8 led

con il medesimo principio, è possibile aumentare il numero dei led da accendere in successione, per un possibile utilizzo come VUmeter.

C Code

Riccardo Monti