Go Down

Topic: mi servirebbe un pin in più! (Read 3020 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
L'esperienza è il tipo di insegnante più difficile ....
Prima ti fa l'esame e poi ti spiega la lezione.

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.
L'esperienza è il tipo di insegnante più difficile ....
Prima ti fa l'esame e poi ti spiega la lezione.

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