Offline
Full Member
Karma: 0
Posts: 122
|
 |
« on: January 23, 2013, 10:35:41 am » |
Ciao a tutti
ho appena acquistato un tastierino 4x4... ho iniziato subito a documentarmi in giro sul suo funzionamento ma tutte le guide per utilizzarlo con arduino vanno ad occupare ben 8 pin digitali... esiste qualche sistema per ridurli? il tastierino in questione è il seguente:
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10228
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #1 on: January 23, 2013, 10:40:21 am » |
Potresti trasformarlo in un tastierino I2C usando un integrato convertitore come l'MCP23017; lo deduco dal fatto che vedo in giro display I2C col tastierino integrato, ma non ho mai fatto prove.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Full Member
Karma: 0
Posts: 122
|
 |
« Reply #2 on: January 23, 2013, 10:43:00 am » |
ci avevo pensato pure io... xo i pin per i2c sono già occupati poiché ci comando un lcd 16x2...  ovviamente sto lavorando con Arduino UNO r3
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10228
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #3 on: January 23, 2013, 10:56:51 am » |
ci avevo pensato pure io... xo i pin per i2c sono già occupati poiché ci comando un lcd 16x2...  ovviamente sto lavorando con Arduino UNO r3 ed il problema dove sarebbe? per quanto ne so I2C è un bus su cui puoi collegare una marea di apparecchiature, perché ognuna di esse ha un proprio indirizzo univoco rispetto alla altre, quindi tutto viaggia su quei due fili, avendo ognuno un ID ben preciso per il riconoscimento.
|
|
|
|
|
Logged
|
|
|
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15625
+39 349 2158303
|
 |
« Reply #5 on: January 23, 2013, 04:53:02 pm » |
Per una tastiera 4x4 collegata in matrice bastano 8 Pin e percui basta un PCF8574 o MCP23009 e non uno con 16 entrate/uscite. Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
rome
Offline
Sr. Member
Karma: 13
Posts: 340
|
 |
« Reply #6 on: January 24, 2013, 03:44:41 pm » |
|
|
|
|
|
Logged
|
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15625
+39 349 2158303
|
 |
« Reply #7 on: January 24, 2013, 05:25:17 pm » |
Non capisco come potrebbe servire quella schedina per il problema di leggere la tastiera 4x4. Questa scheda sono solo diversi connettori a 4 pin messi in paralello. Ok Ti da la possibilitá di collegare piú dispositivi I2C ma visto che il I2C patisce della capacitá parasita dei cavi una scheda del genere puó disturbare il corretto funzionamento del Bus. Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
rome
Offline
Sr. Member
Karma: 13
Posts: 340
|
 |
« Reply #8 on: January 24, 2013, 05:29:45 pm » |
sarà ma funziona. almeno con 4 connessioni : rfid, 2 lcd, arduino...
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10228
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #9 on: January 24, 2013, 06:07:05 pm » |
no, quello che ti sfugge è il fatto che il problema iniziale è quello di interfacciare una tastiera 4x4 con il bus I2C, e non lo puoi fare certo con quel duplicatore di porte o come vuoi chiamarlo tu; lì devi avere già la tastiera interfacciata I2C quindi serve il port expander di cui stiamo parlando con Uwe (a prescindere dal modello), quindi non si capisce il tuo primo intervento a cosa fosse indirizzato.
|
|
|
|
|
Logged
|
|
|
|
|
rome
Offline
Sr. Member
Karma: 13
Posts: 340
|
 |
« Reply #10 on: January 25, 2013, 02:50:32 am » |
Una volta risolta la trasformazione dell'interfaccia del keypad in I2c l'accrocco risolve il problema banale di connettere più device i2c. Io l'ho trovato molto comodo. La trasformazione della interfaccia può anche essere fatta o come da voi segnalato o usando qualcosa come la schedina sparkfun http://www.sparkfun.com/products/11502 che tra l'altro ha il vantaggio di avere gia funzioni per lo scan del keypad, gestisce anche una linea di interrupt opzionale utile nel caso di intefaccia con dispositivi di input (e costa meno della schedina di breakout PCF8575 http://www.sparkfun.com/products/8130). Essendo io un povero soft-man devo compensare la mia ignoranza cercando in giro moduli hw gia precotti....
|
|
|
|
« Last Edit: January 25, 2013, 02:57:23 am by brunialti »
|
Logged
|
|
|
|
|
Offline
Full Member
Karma: 0
Posts: 122
|
 |
« Reply #11 on: January 25, 2013, 04:45:31 am » |
perdonatemi ma gli ultimi commenti mi hanno confuso... tecnicamente per "leggere" i tasti premuti dal tastierino basta che realizzo questo schema no?  inoltre, so che sembra sciocco, ma avendo anche un lcd collegato a i2c, collego entrambi dispositivi al pin 4-5 e via no? tanto come si diceva in precedenza in questo caso assegno 2 indirizzi diversi per i due dispositivi
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10228
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #12 on: January 25, 2013, 05:13:30 am » |
Ma tu non hai una 4x4? Devi mettere una pull-up da 4k7 per ogni pin di riga, quindi te ne servono 4, di resistenze. Inoltre devi prevedere due pull-up sulle due linee I2C, basta una coppia sola per tutte le periferiche, se non ricordo male il valore dovrebbe essere tra 2k2 e 3k3.
|
|
|
|
|
Logged
|
|
|
|
|
|