Hi
Das sich wohl kein Chip auftreiben lässt, werde ich das ganze jetzt in Handarbeit lösen ...
Da ich bei einer Bestellung beim großen C für die Schule noch 4 Cent (!) brauchte, um über die Gutschein-Mindestbestell-Grenze von 25€ zu kommen, hab ich noch schnell einen Mega48 rein geworfen. Hab damit dann wegen dem 7,50€ Gutschein der sonst verfällt 2€ gespart.
Aber, B2T: Der Mega48 erscheint mir eigentlich recht sinnvoll, als Tastaturausleser zu dienen. Damit die Pins aber auch ausreichen, brauch ich wohl nen Portexpander.
Den Artikel im Wiki über die SPI-Port Expander habe ich gelesen und das wäre wohl möglich. Grade bin ich aber auch ncoh auf den I2C Expander PCF8574 gestoßen. (Ein Link beim SPI Exp. wäre sinnvoll ...)
Der Vorteil der I2C Variante ist ja, dass ich damit auch die Eingänge auslesen kann, wobei ich ja nur reagieren brauche, wenn der Interrupt anzeigt, dass sich was getan hat, an den Eingängen.
Falls der Interrupt keine Änderung anzeigt, würde ich mit dem 1. Chip das nächste Bit einschalten und in der Tastenmatrix also die 2. Spalte prüfen in dem ich wieder aufs Interrupt schaue.
Was meint ihr? Ist das so sinnvoll? Ich kann der Interrupt doch auch einfach als Input nehmen, weil mir das gar nicht so sehr sinnvoll erscheint, den wirklich als Interruppt zu programmieren, wenn ich die Matrix auslese.
Ist das overkill, oder dauert das vielleicht zu lange beim auslesen, so dass ich nur alle 2 Sekunden auf ne Taste reagieren würde? (Anders gefragt: Braucht das I2C Protokoll im Vergleich zum SPI Protokoll durch die Adresse vorne dran, viel zu lange?)
Um meine Frage mal halb selbst zu beantworten: Da ich ja nur 8 versch. Eingänge setzen muss nacheinander, sollte das schon mehrmals in der Sekunde möglich sein, auch über I2C, nech?
Vielen Dank, dass ihr meinen Kram gelesen habt
Andun
Lesezeichen