Go Down

Topic: mi servirebbe un pin in più! (Read 2204 times) previous topic - next topic

Michele Menniti

#15
Jan 04, 2013, 06:48 pm Last Edit: Jan 04, 2013, 09:08 pm by Michele Menniti Reason: 1
non ho visto lo schema di Leo, intanto pubblico cosa ho pensato, poi commentiamo

EDIT: mi sembrano simili, eccetto il fatto che io uso la pull-down e quello schema la pull-up, lì ci sono valori più bassi ma non ne vedo la necessità; forse l'ho azzeccata :smiley-sweat:

EDIT 2: ho modificato i valori delle R in modo che non sia possibile una sovrapposizione di valori premendo più tasti in contemporanea, in tal modo è possibile gestire via software qualsiasi combinazione di tasti.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

niki77

Lo schema del mitico Menn è proprio quello che intendevo.
Semplice ed economico.
Non penso che al nostro amico serva di premere simultaneamente i pulsanti.
Vi è una spiegazione scientifica a tutto.
La fede è solo quell'anello che si porta al dito dopo il matrimonio.

Michele Menniti

Grazie della conferma Niki, in realtà dovevo calcolare le R come suggeriva Astro, in tal modo ogni combinazione di due o tre tasti non genererebbe mai una configurazione di un tasto solo. P.es. 1k - 2k2 - 4k7 - 10k.
Se nessuno trova obiezioni modifico lo schema precedente ad uso e consumo del Forum.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

qsecofr


non ho visto lo schema di Leo, intanto pubblico cosa ho pensato, poi commentiamo


io ho usato uno schema simile...simile perchè le resistenze che ho usato non erano 2-4-8 eccetera ma tutte da 1k...(tranne quella di 0 mi pare) in ogni caso il concetto sarebbe similare (se trascuriamo la mia non possibilita di gestire doppie pressioni)...
Il problema che ho riscontrato è che la mia tastiera era (come succede frequentemente) a membrana con la gomma conduttiva a fare da contatto ...ed evidentemente non fa esattamente ed immediatamente un contatto esattamente a 0 ohm il che si traduce in valori abbastanza ampi dell'analogica... anche talune sovrapposizioni... 4 tasti in tutto ho...
Le "medie" come spesso si fa su letture analogiche su queste letture sono un po' complesse perchè bisogna escludere lo 0 e ci sono grossi problemi con la doppia pressione del tasto.
Detto questo alla fine l'ho fatto e grossomodo funziona come metodo... però consiglierei un tasto "decente" e "pochi tasti".

Michele Menniti

se hai usato R tutte uguali devi aver realizzato lo schema che ho pubblicato nella prima pagina; quest'ultimo non funzionerebbe mai con le R tutte uguali.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

qsecofr

Chiaramente piu stai lontano con i valori resistivi meglio vai ed il fatto di averli in "potenza" di 2 ti da un vantaggio. però volevo far notare questa cosa della membrana dei tasti.

vitoos

premere più di un tasto a me non serve dato che i tasti li chiamerò "su" "giu" "enter" e "return" quindi quello schema andrebbe bene. Però ho letto l'altro topic del LM35 con 10metri di filo e mi ha fatto un po pensare sui disturbi dato che anche io dovrei fare una cosa del genere, forse non 10metri ma 6 o 7 si e per ogni sensore. vedo un po come si evolve la situazione li e se vedo che la cosa si fa critica mi sa che mi tocca pensare a quelli digitali, cioè i ds18b20. con i digitali potrei fare 5 digitali per i relè + 5 per i sensori e tx e rx per la programmazione, poi A4 e A5 per l'i2c e un altro pin per i 4 bottoni per il menù, anzi potrei fare anche un pin analogico per ogni bottone

PaoloP

No, i DS18B20 li puoi attaccare tutti su uno stesso pin. Basta che abbiano gli indirizzi logici diversi.

Michele Menniti


premere più di un tasto a me non serve dato che i tasti li chiamerò "su" "giu" "enter" e "return" quindi quello schema andrebbe bene. Però ho letto l'altro topic del LM35 con 10metri di filo e mi ha fatto un po pensare sui disturbi dato che anche io dovrei fare una cosa del genere, forse non 10metri ma 6 o 7 si e per ogni sensore. vedo un po come si evolve la situazione li e se vedo che la cosa si fa critica mi sa che mi tocca pensare a quelli digitali, cioè i ds18b20. con i digitali potrei fare 5 digitali per i relè + 5 per i sensori e tx e rx per la programmazione, poi A4 e A5 per l'i2c e un altro pin per i 4 bottoni per il menù, anzi potrei fare anche un pin analogico per ogni bottone

la situazione lì, come avrai visto, la sto seguendo io molto da vicino; purtroppo gli impegni di Alberto ci impediscono di procedere celermente altrimenti avremmo già finito; se leggi con attenzione siamo abbastanza ottimisti e l'unica prova apparsa sul ds18b20 non è che abbia entusiasmato molto chi l'ha eseguita.
Comunque sulla carta il ds18b20 dovrebbe essere migliore (anche abbastanza più costoso) dell'LM35, e certamente con un solo pin puoi collegarne quanti ne vuoi in quanto ognuno è identificato da un codice univoco a 64bit; non so però se sono stati fatti test sulla distanza, però penso che il fatto che siano digitali dovrebbe aiutare.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

pablos

#24
Jan 06, 2013, 01:22 am Last Edit: Jan 06, 2013, 01:31 am by pablos Reason: 1
Perchè non usare 1 o 2 74ls244  Octal 3-STATE Buffer/Line Driver/Line Receiver potresti avere 3(se ne usi 1) o 7(se ne usi 2) INPUT in più e costa meno di 1 euro, devi fare un po' di software per gestirli. Se abbini anche un SN7407 puoi fare un INPUT/OUTPUT bidirezionale sulle stesse linee in parallelo. (6 Pin diventano INPUT e OUTPUT contemporaneamente o quasi un ciclo di loop IN e un ciclo loop OUT)
Li ho usati un po' di anni fa quando facevo esperimenti sulla porta parallela dei pc col vecchio Qbasic

ciao
no comment

leo72

Se andiamo di logiche 74xx, perché allora non un semplice shift register di tipo PISO come il 74LS165? 8 ingressi gestiti con 3 pin.
Basterebbe leggere gli ingressi (con una semplice shiftIn) ogni tot tempo e si avrebbe l'input in un byte, da cui ricavare lo stato degli 8 ingressi con semplici operazioni binarie.

PaoloP

A quel punto passa dalla UNO alla MEGA e risolve tutti i problemi futuri.  :smiley-mr-green:

leo72


A quel punto passa dalla UNO alla MEGA e risolve tutti i problemi futuri.  :smiley-mr-green:

"Ti piace vincere facile" ;)

pablos

Adoro i 74** ci si fa qualsiasi cosa. Qualche anno fa li trovavi praticamente tutti, ora tengono solo quei 10 tipi più usati.
no comment

qsecofr

in my very very very very humble opinion... lm35 per temperatura remota -> ha le sue criticità    ...meglio prendere i dallas che possiamo anche metterli tutti sullo stesso bus...o estendere la portata di un bus i2c (tipo P82B715PN) e poi usare mcp 9801 (però non so a quanto possa arrivare...)
poi carino eventualmente per estendere gli i/o è il  pcf8574
Probabilmente comunque un pin in più con il leonardo lo tiri fuori (se il mega sembra esagerato).

Go Up