devo far accendere dei led di colore diverso usando un solo pin in uscita, come codice non e' un problema perche' non e' molto diverso dall'esempio base per far lampeggiare un led
il problema sta nel fatto che i led hanno tensioni e correnti diverse le porte arduino mi pare forniscano solo 5v 20ma mentre magari serve accendere con lo stesso pin in uscita 5 led rossi, 3 bianchi, due viola, uno blu...
-1) da un solo pin vuoi accendere tanti led differenti o
-2) da diversi pin vuoi alimentare led che hanno una differente soglia di conduzione ???
basta usare resistenze di valore differente in modo da avere una percezione di luce uguale indipendentemente dal colore
nel primo caso, da un solo pin, senza ulteriore circuito di decodifica, al massimo puoi pilotare alternativamente 2 led
collegali in serie tra loro, eventualmente aggiungendo qualche diodo
colleghi poi la stringa di led ed eventuali diodi tra +5V e massa e il punto comune tra i due led, tramite una resistenza, alla porta
spento, led 1 acceso, led 2 acceso, entrambi i led accesi con un onda quadra sull'uscita
altrimenti hai diverse opzioni
io, che amo l'analogico, userei il pwm per produrre, tramite filtro passabasso diversi livelli di tensione in uscita e poi un ic con 4 comparatori (tipo LM399) per discriminare tra i livelli e accendere 4 led differenti... o con spesa molto maggiore uno di quegli IC che venivano usati per i VUmeter a led :-D
una soluzione digitale vintage potrebbe essere quella di usare un 4017 calcolando ogni volta il numero di impulsi necessario per accendere uno di 10 led differenti :-P
Devi fare in modo che Arduino generi un codice univoco per ogni modulo led (che avra' la sua alimentazione/polarizzazione/codice identificativo).
A suo tempo feci una cosa simile in analogico per l'illuminazione di un presepe iniettando mediante un multivibratore astabile una frequenza differenziata che veniva riconosciuta dal singolo modulo tramite un insieme di filtri passabasso e passa alto. Ma questo, oggi come oggi, e' oramai preistoria. Saluti
MM5450 sono 30 anni che lo uso, il codice non so se ci sia per "ricchionino" l'ho sempre usato con 8080 e cmos prima e pic dopo e me lo sono fatto io il codice, piloti sino a 35 led e metti la resistenza che vuoi su ognuno, la stringa "seriale" da generare la trovi nel datasheet.
:-D perche' ce l'hai con il ricchionino e comodo lo compro per un tozzo di pane ed il codice che devo sviluppare lo piscio copiandolo dall'esempio per lampeggiare un led :-D
il problema che ho gruppi di led di colore diverso con tensioni di soglia diverse e correnti diverse che devo lampeggiare all'unisono
avrei pensato a qualcosa di piu' semplice del mm5450 che oltretutto non conosco e mi dovrei studiare, l'affare e' da consegnare il giorno 13 :-D e sono circa 2000 led :-D e non ce sta manco la scimmia che mi aiuta :-(
ho una scritta composta da 3 led di colore diverso con soglia di tensione diversa e corrente diversa tutte pilotate da un solo pin perche' si accendono all'unisono,
poi ho altri led monocromatici pero' magari sono 100 led verdi che devono lampeggiare
no non devo pilotare alternativamente due diodi
io ho 4 scritte fatte con i led
due fatte con i led bianchi
altre due fatte con led bianchi, arancioni,viola e rossi
le scritte si accendono secondo una sequenza prestabilita che poi diventa un loop
il problema e far accendere la parola con un pin unico, poi visto che le parole sono 2 o 3 o 4 dedico ad ogni una un pin arduino uno ne gestisce
14 quindi compro tutte le esigenze con una scheda
forse un esempio pratico
mettiamo che ho due parole
AIUTO
SOCCORSO
la parola aiuto e' composta da un insieme di led di colori diversi la parola soccorso da tutti led verdi
devo far lampeggiare alternativamente le due scritte
io avevo pensato, visto che arduino ha una corrente di uscita di 20ma di pilotare un transistor in modo che possa poi accendere gruppi di led ai gruppi di led metto una rozza resistenza e amen
si ma il progetto non e' cosi complesso come un VUmeter e' poco piu' delle lucine di natale :-D
puoi usare il protocollo 1-wire, che utilizza un solo pin del uC, e poi cerchi l'interfaccia hardware che ti serve (Dallas/Maxim) o quella che puoi adattare al tuo caso
E' la soluzione piu' semplice. Se hanno soglie e correnti differenti non ha importanza perche ogni led div erso ha una sua resistenza diversa. Poi tutto in parallelo comandato dal transistor o mosfet logic level se la corrente e' tanta.
Ma non hai detto se per i led hai solo i 5V di arduino o altra tensione.
esattamente quello che avevo pensato, i led li ho collegati in serie per tensioni identiche fino a una tensione prossima a 12v e poi quei 3 o 4 gruppi di led in serie li collegherei in parallelo ovviamente ogni ramo ha la sua resistenza.
Ho visto che con arduino spesso viene usato il mosfet IRF520.
Non ho mai trafficato con i mosfet, sbaglio ho ha una capacita' interna che deve essere caricata tramite il gain per mandarlo in conduzione? Conviene che metto una resistenza tra gain e massa per farlo scaricare una volta che il pin di arcuino commuta in off?
Tra gate e massa una 10k tiene tutto spento nelle fasi iniziali, quando il pin di uscita non e` ancora configurato.
Tra uscita di Arduino e gate anche niente (ho un /alba e tramonto/ a incandescenza in funzione in questo momento con il 520 e nessuna R Ardu->mosfet), ma una 100 ohm non fa male (viste poi le basse frequenze in gioco... ah, hai pensato vero che quelle scritte pilotandole in PWM le potresti far accendere/spegnere in dissolvenza senza alcuna modifica hardware?)
Quel mosfet comunque non e` logic level, per cui pilotando il gate con soli 5V non gli si puo` far assorbire piu` di 1.1A, e in ogni caso introduce una caduta di 1..1.2V.
comprati 20 a 8 centesimi l'uno, ma ce ne sono anche altri simili) che costa molto meno e con 4.5V di gate ha una resistenza di soli
22milliohm e supporta tranquillamente anche 5A a quella tensione di gate
gain? ti confondi con il gate?
poi bisogna vedere cosa intendi come off non sono esperto di arduino, ma mi pare che le porte possano essere configurate come ingressi/uscite al livello alto/uscite al livello basso/disconnesse
considerando che basta un livello logico basso per spegnere i led, la
non lo trovo questo tipo di mosfet, ne su rs e ne su ebay, guardo le specifiche sul datasheeet e vedo qualcosa di equivalente
se poi hai qualcosa da suggerirmi di piu' facile reperibilita' ben venga.
:-D e' una nuova tipologia di mosfet con un varicap tra gate e drain cosi ci sono 4 piedini :-D :-D :-D
ehm si si GATE, perdonami ma leggo te, leggo su internet, insomma cerco di capire meglio come funzionano e magari a volte faccio confusione con i termini per mancanza di pratica, imparero' :-)
vorrei evitare di far scaricare il gate sulla porta di arduino, da quello che ho capito il chip non gradisce molto la cosa, meglio metterci una resistenza.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.