Hallo! Gibt es einen günstigen IC, der eine bidirektionale Porterweiterung realisiert? Am besten serielle (SPI) Verbindung zum uC! :-) Sowas wie 74HC4094 und 74HC165 in einem... ;-) Ich hoffe ihr versteht, was ich meine...! (als Beispiel fällt mir das alte, parallele Ungetüm 8255 ein...) Danke!
http://www.digikey.com/scripts/DkSearch/dksus.dll?Criteria?Ref=326451&Site=US&Cat=32768833 dann "view page"
@romanua Danke! Aber der HC299 ist schon fast perfekt! :-) SPI-Interface, 8Bit, I/O, supergünstig, ... (Nur ein Ausgangslatch zwischen Schieberegister und 3State-Treiber wäre noch was feines gewesen... ;-) )
PCF8574 IIC Interface sogar mit Interrupt, kannst 8 Knöpfe (oder 16 mit Matrix) dranhängen, und immer, wenn einer gedrückt wurde, gibt er auf einem 9. Beinchen einen IRq. Bis zu 8 können an einen IIC Bus, mit der PCF8574A Variante, sogar 16. LCD-dran geht genauso einwandfrei, BitBanging wird allerdings schwieriger, je nachdem, was noch am Bus hängt und Datenkapazität haben will. PINs können dynamisch als Ein/Ausgänge verwendet werden. Das Teil sinkt aber nur Strom, und kann keinen sourcen (Habe da 4 Platinen umsonst gemacht deswegen, seitdem schaue ich genauer in Datenblätter ^^)
Danke! Aber der HC299 ist schon fast perfekt! :-) SPI-Interface, 8Bit, I/O, supergünstig, ... (Nur ein Ausgangslatch zwischen Schieberegister und 3State-Treiber wäre noch was feines gewesen... ;-) ) __________________________________ Schau Dir ruhig noch einmal den 74595 an, der ist besser geeignet und bietet bei richtiger Beschaltung einige Vorteile, MfG Manfred Glahe
@Manfred: Ja aber der kann doch kein parallel-in -> serial-out..?!?! Oder überseh ich da was im Datasheet?
@Christoph: hab schonmal mit I2C lange herumgekämpft und dann aufgegeben, weil ich dachte es liegt nur an mir. Seit diesem Thread (http://www.mikrocontroller.net/forum/read-1-262816.html) verzichte ich ganz auf i2c... ;)
Also mal Verzeihung, aber die Atmels laufne auch im MMaster Betrieb einwandfrei. Das kann ich aus eigenener Erfahrung mit 4 ATMegas bestätigen. Wenn eben Leute nicht sauber programmieren können, oder noch eine alte Version der Chips haben, dann kann da TWI oder IIC nix dafür. Dann hast Du hier keinen MM Betrieb sondern AT=M, x PCF=S. Und die Teile sind einfach genial: Willst Du Outputs haben, schreibst Du das Byte einfach an die IIC-Adresse (Achtung: die sinken nur, also 1=0!). Willst Du sie dagegen als Input haben, schreibst Du überall eine 1 rein und sobald ein Pin gegen Masse gezogen wird, gibts auf einem 9. PIN eine Flanke und du liest von der IIC-Adresse und hast im Bitmuster stehen, welches Bit denn auf 0 ist. Kannst also 64 Tasten an den IIC-Bus hängen und jeden Interrupt pin der PCFs zusammen auf einen INT des AVR schalten, und sobald irgendwo eine Taste gedrückt wurde, alle der Reihe nach abfragen und brauchst nicht mehr pollen. Und das ist genial. Und Latch inklusive. Leider kostet das Ding 1,75 pro Stück, also kannst gleich nen Tiny auch hernehmen ^^ Christoph
@Manfred: Ja aber der kann doch kein parallel-in -> serial-out..?!?! Oder überseh ich da was im Datasheet? _________________________________________ Da solltest du mal die Verwendung der SPI Schnittstellen erklären, je nach Bedarf kann die 2 IC- Lösung auch sinnvoller sein. Was willst Du ansteuern und was willst Du einlesen mit SPI, erst danach kann man einen gezielten Vorschlag machen. Für eine profilaktische Erweiterung von SPI Ports gehe ich doch anders vor, als für eine gezielt, wenn auch noch unvollständige, Anwendung. MfG Manfred Glahe
Ich möchte mir eine I/O-Leiterplatte machen, die ich per SPI (oder dergl) an einen Controller hänge. Die Erweiterungskarte soll mir dann (z.B.) 8 parallele I/O-Ports "erzeugen". Was dann später daran alles drankommt ist noch offen! :) Die Leiterplatte würde ich sowieso gerne zum experiementieren verwenden. Anwendungsbeispiele: -MT8880 (bidirektional) -Relais (output) -Tastenmatrix (input) -usw... Jetzt bitte nicht hauen! aua ;) Nach aktuellem Stand würde ich das mit einem kl. AVR und ein paar Parallel-TTL-IC's realisieren. Der AVR soll dann die Daten per SPI entgegennehmen und dann einen 8Bit-Datenbus mit 3State-Latches und 3State-Buffers auf 8 Ports verteilen. Werden dann zwar wieder einige "Käfer" auf der Leiterplatte werden, was ich eintlich vermeiden wollte, aber naja... ;) Da das ganze dann auch noch reparabel bleiben soll, werden außerdem wohl alles DIL-IC's werden... :-/ Trotzdem danke für eure Hinweise!
Gut, dann geht das mit dem 74595 doch auch, den benutzt Du dann doch zur externen Selektion der SPI bzw. Quellen. MOSI/MISO wir doch eh getrennt. Im Anhang mal den 74595 als solch einen Selektor. Ich habe hier mal eine gute Idee zu lesen bekommen (Peter Dannegger), da wurde nach PowerOn der Ausgang des 595 hochohmig geschaltet. So kann man über Widerstände nach GND oder +UB den Resetlogiklevel einfach vorgeben. Hat der mP die Regie, wird nachgeladen. MfG Manfred Glahe
Hi! Ich bastle gerade mit dem MCP23008 herum. Das ist ein 8Bit IO-Expander von Microchip mit IIC. Er besitzt ebenfalls einen Interrupt und kann direkt Leds treiben. es gibt auch eine SPI Version und zwar heisst diese MCP23S08. Die beiden Chips gibts auch als 20Bit Variante und laufen unter dem namen MCP23016(IIC),MCP23S17(SPI),MCP23017. http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=11034&mid=11&lang=en&pageId=79 also ich muss sagen, das Bauteil gefällt mir. Es ist fast so einfach zu Programmieren wie der IO-Expander(PCF8574) von Philips. Zu meinem Projekt: Mein LCD (HD44780 kompatibel)hängt an dem IO-Expander und ich schreib mir gerade einen Treiber dafür, damit ich eben das LCD über den IO-Expander ansprechen kann. Der Vorteil... Ich brauche nur 2 Leitungen und ich kann sowohl aufs LCD schreiben als auch vom LCD lesen. mfg schoasch
Da muss ich dich enttäuschen. Das weis ich leider nicht, denn ich komme aus Österreich und hab da so meine speziall Geschäfte die mir die Teile Notfalls bestellen. Und ich glaube das sich das Porto nicht dafür steht. Also wäre der PCF8574 zu empfehlen. Oder du probierst es direkt über Microchip. Wieviele würdest du denn benötigen?
Schau mal hier : http://cgi.ebay.at/I2C-Bauteilsammlung-EEPROM-IO-Expander-ADC_W0QQitemZ5833213238QQcategoryZ12949QQrdZ1QQcmdZViewItem
Hallo, muss diesen Thread nochmal aufwärmen. Bin auch auf der Suche nach einer Möglichkeit die ports meines µC zu erweitern. Genauer gesagt will ich an einen µC nach 2-3 Module mit Ein- / Ausgängen hängen, um z.B. eine Heizungssteuerung an zu steuern. Die Module sind allerdings min. ein paar Meter vom µC entfernt. Dachte daher an eine Lösung über einen Bus z.B. RS485. Ist allerdings nicht ganz günstig und der Strombedarf ist sicherlich höher als bei einem Schieberegister. Wisst ihr ein paar Links zu AppNotes mit dem 74hc299 ?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.