Hallo, ich bin auf der Suche nach einem Port Expander mit parallelem Interface (kein SPI/I2C, sondern Datenbus, RD#, WR#, CS#). Also etwas in der Art des guten alten 82C55, allerdings brauch ich TriState- bzw. In-/Out-Funktionalität auf Bitebene, nicht auf dem ganzen Port, d.h. jeder Portpin muss separat auf Eingang/Ausgang konfigurierbar sein. Der 82C55 unterstützt das nicht, und ansonsten fiel mir nur noch die Z80-PIO ein, aber die hat eine beknackte Ansteuerung :( Da ich in der Richtung nichts weiter gefunden habe kommt mir der Verdacht, dass ich das wohl oder übel in ein CPLD packen muss. Wenn ich da nicht drumrum komme, dann steh ich vor dem Problem, dass CPLDs wohl nicht mehr für 5V IO-Spannung produziert werden - also auch ne Sackgasse. Im Grunde geht's mir darum, einen Port zu haben, wie er heutzutage in den meisten Controllern vorhanden ist. Das ganze mit einem kleinen Controller in Software zu realisieren wäre zwar möglich, aber da kommt dann das Timing ins Spiel: selbst wenn es "nur" darum geht, den betreffenden Port umzukonfigurieren bzw. zu schreiben/lesen, gehen da ja auch einige Zyklen drauf, ein 82C55 & Co. (oder generell "reine Logik") reagieren da ja quasi sofort. Ganz kniffelig dürfte bei einer Software-Lösung ja ein Lesezugriff sein, man muss den Beginn eines Lesezugriffs erkennen und dann auch fix die passenden Daten parat haben, wenn das Readsignal die Daten übernehmen will. Serielle SPI/I2C Expander, die das können gibt's wohl wie Sand am Meer. Dass es mit parallelem Interface eher keinen Markt dafür gibt ist mir klar, aber vielleicht hab ich auch einfach was übersehen? Hat jemand noch einen Tip in der Richtung? Ralf
Ralf schrieb: > Das ganze mit einem kleinen > Controller in Software zu realisieren wäre zwar möglich, aber da kommt > dann das Timing ins Spiel: selbst wenn es "nur" darum geht, den > betreffenden Port umzukonfigurieren bzw. zu schreiben/lesen, gehen da ja > auch einige Zyklen drauf, ein 82C55 & Co. (oder generell "reine Logik") > reagieren da ja quasi sofort. Ganz kniffelig dürfte bei einer > Software-Lösung ja ein Lesezugriff sein, man muss den Beginn eines > Lesezugriffs erkennen und dann auch fix die passenden Daten parat haben, > wenn das Readsignal die Daten übernehmen will. Wenn dir das soweit schon alles klar ist, dann wäre es ja wohl nicht zuviel verlangt, wenn du auch noch den Bustakt spezifizierst, bei dem die Sache laufen muß. Mit ein wenig konkretem Futter in dem ganze Blabla-Gewäsch kann man ja vielleicht mal überlegen, womit das gehen könnte...
Ralf schrieb: > Hallo, > > ich bin auf der Suche nach einem Port Expander mit parallelem Interface > (kein SPI/I2C, sondern Datenbus, RD#, WR#, CS#). Also etwas in der Art > des guten alten 82C55, allerdings brauch ich TriState- bzw. > In-/Out-Funktionalität auf Bitebene, nicht auf dem ganzen Port, d.h. > jeder Portpin muss separat auf Eingang/Ausgang konfigurierbar sein. > > Im Grunde geht's mir darum, einen Port zu haben, wie er heutzutage in > den meisten Controllern vorhanden ist. Wofür brauchst Du so etwas, was bequem anders zu lösen ist?
I/O (RD#, WR#) ist schon ein Sonderwunsch. Schau' doch mal nach dem guten alten Latch. Am besten mit 3-State-Ausgängen.
Microchip bietet I/O Expander an, kenne nur die die SPI/I2C können, nach Parallelen Interface muss du dann mal gucken bei Microchip ;-) Gute nacht
Ich hatte mal mit einem 8243 zu tun. Kommt dem Wunsch schon etwas näher. http://www.jameco.com/Jameco/Products/ProdDS/52581.pdf An sonsten die guten alten XC9500 ohne XL für 5V Logik.
Ralf schrieb: > ansonsten fiel mir nur noch die > Z80-PIO ein, aber die hat eine beknackte Ansteuerung :( Abgesehen vom erwähnten 8255 haben die ollen Portbausteine m.W. alle eine Art Taktanschluss. Ohne diesen verlieren sie etwas an Funktion, z.B. bei Interrupts und irgendwelchen Port-Handshakes. Vielleicht liessen sich 6520/6821 zur Funktion überreden, aber die sind schon ziemlich aus der Mode gekommen. Kessler hat freilich noch.
Sebastian S. schrieb: > Schau' doch mal nach dem guten alten Latch. Am besten mit > 3-State-Ausgängen. Mit 3-State kommt er nicht wirklich weiter, weil das immer für alle Bits gilt. Der Sache näher käme er mit Open Collector Ausgängen, weil sich die bitweise als Eingang nutzen lassen - der 8051 lässt grüssen.
Ralf schrieb: > sondern Datenbus, RD#, WR#, CS# Eventuell einen beliebigen µC mit genügend Pins. 11 für Parallele Kommunikation, eventuell noch Takt, Reset und ISP. Der Rest dann als frei Programmerbare I/O-Pins. Wenn man sich die Firmware entsprechend Bastelt kann man damit sogar einen 8255 virtuell nachbilden:-)
Nimm doch einfach ein CPLD von Altera z.B. EPM7032SLC44 gibt es bei aliexpress für 1 Euro / Stück oder EPM7128SLC84 wenn du sehr viele I/O brauchst ... gibt es für 2 Euro bei verschiedenen Aliexpress Verkäufern !! Die Teile laufen noch mit 5 Volt und lassen sich sehr leicht anwenden. Altera Quartus Software kostenlos und für ein paar Euro den USB Blaster Clone dazu. Fertig ist die Zauberei
Hallo zusammen, @c-hater: > Wenn dir das soweit schon alles klar ist, dann wäre es ja wohl nicht > zuviel verlangt, wenn du auch noch den Bustakt spezifizierst, bei dem > die Sache laufen muß. > Mit ein wenig konkretem Futter in dem ganze Blabla-Gewäsch kann man ja > vielleicht mal überlegen, womit das gehen könnte... Gestern abend n bisschen gereizt gewesen? ;) Wenn du mit "blabla" zum Ausdruck bringen willst, dass ich evtl. mit viel Text zu wenig Infos (für dich) gegeben habe, tut mir das leid - in der Regel sehe ich mitunter Beiträge in denen nur sehr rudimentäre Informationen gegeben werden und man dann erst mal nachhaken muss, was denn konkret schon da ist, weitere Infos anfordern etc. Aus dem Grund ist meine Eingangsbeitrag etwas größer ausgefallen. Wenn ich also deine Frage nach dem Bustakt in einer Antwort auf meinen eigenen Beitrag gestellt hätte, wäre daraus nur ein "Wie schnell muss das ganze laufen?" o.ä. geworden - womit du auch einen Großteil "blabla" hättest einsparen können ;) Und wenn für mich die Geschwindigkeit ein primäres Merkmal gewesen wäre, hätte ich darauf hingewiesen. Das ändert freilich nichts daran, dass ich es der Vollständigkeit halber hätte erwähnen sollen, da geb ich dir recht. So, um vom "blabla" wegzukommen und deine Frage zu beantworten: Die kleinst*mögliche* Pulsbreite RD#, WR#, CS# ist 25ns, also 40MHz - ist aber zweitrangig, ich hab auch kein Problem damit, wenn ich beispielsweise mit 10MHz auskommen müsste. Nur 10Hz wär mir dann doch zu wenig grins @google: > Wofür brauchst Du so etwas, was bequem anders zu lösen ist? Da du "bequem" nicht weiter spezifizierst gehe ich davon aus dass du entweder "nimm den Controller im nächst größeren Gehäuse" oder "nimm serielle Port Expander" (was ich explizit ausgeklammert habe) meinst. Korrekt? @Sebastian S.: > I/O (RD#, WR#) ist schon ein Sonderwunsch. Ich weiss, normal kann schließlich jeder :) > Schau' doch mal nach dem guten alten Latch. Am besten mit 3-State- > Ausgängen. Geht nicht, weil a) TriState nur fürs ganze Latch gilt und b) damit keine Eingänge realisiert werden können. @Frank: > Microchip bietet I/O Expander an, kenne nur die die SPI/I2C können, nach > Parallelen Interface muss du dann mal gucken bei Microchip ;-) Ich schau mal nach, aber ich denke dass Google es mir dann eigentlich angezeigt hätte (vorausgesetzt meine Suchbegriffe waren richtig). @hp-freund: > Ich hatte mal mit einem 8243 zu tun. Kommt dem Wunsch schon etwas näher. Ja, geht in die richtige Richtung. Für den Prog-Pin könnte evtl. Adressleitung A0 herhalten. Ist aber eben mit 4-Bit Ports. > Ansonsten die guten alten XC9500 ohne XL für 5V Logik. Wäre wie eingangs erwähnt ein gangbarer Weg. Werden die noch gefertigt oder sind die nur noch über Restbestände zu haben? @A. K.: > Abgesehen vom erwähnten 8255 haben die ollen Portbausteine m.W. alle > eine Art Taktanschluss. Ohne diesen verlieren sie etwas an Funktion, > z.B. bei Interrupts und irgendwelchen Port-Handshakes. Soooo schlecht war der 8255 ja gar nicht =) Das Handshaking brauch ich nicht. > Vielleicht liessen sich 6520/6821 zur Funktion überreden, aber die sind > schon ziemlich aus der Mode gekommen. Kessler hat freilich noch. Ich schau mir die Teilchen mal an. >> Sebastian S. schrieb: >> Schau' doch mal nach dem guten alten Latch. Am besten mit 3-State-Ausgängen. > Mit 3-State kommt er nicht wirklich weiter, weil das immer für alle Bits > gilt. Der Sache näher käme er mit Open Collector Ausgängen, weil sich > die bitweise als Eingang nutzen lassen - der 8051 lässt grüssen. Korrekt. Aber ich meine mal OpenCollector Latches gesehen zu haben...hm... du bringst mich da auf eine Idee: wenn es auch Latches gibt, welche High-Pegel und hochohmig für den Low-Pegel zulassen, wäre das ein Plan C. Wären dann halt drei Chips pro Port. @Irgendwer: > Eventuell einen beliebigen µC mit genügend Pins. > 11 für Parallele Kommunikation, eventuell noch Takt, Reset und ISP. Der > Rest dann als frei Programmerbare I/O-Pins. > Wenn man sich die Firmware entsprechend Bastelt kann man damit sogar > einen 8255 virtuell nachbilden:-) Genau, der eingangs erwähnte Plan B (neben CPLD). In dem Fall muss halt die Busfrequenz runter. @ethernet_fan: > Nimm doch einfach ein CPLD von Altera, z.B. EPM7032SLC44 gibt es bei > aliexpress für 1 Euro / Stück > oder EPM7128SLC84 wenn du sehr viele I/O brauchst ... gibt es für 2 Euro > bei verschiedenen Aliexpress Verkäufern !! > Die Teile laufen noch mit 5 Volt und lassen sich sehr leicht anwenden. > Altera Quartus Software kostenlos und für ein paar Euro den USB Blaster > Clone dazu. Fertig ist die Zauberei Ist wie gesagt ebenfalls ein gangbarer Weg und aufgrund der Timings dann wohl auch der bevorzugte Weg. Ich muss mir das mal genauer anschauen. Die Teile werden wohl auch noch gefertigt. Ralf
Deinem Vorhaben kommt doch die Z-80 PIO am nächsten. Aber die ist dir ja zu kompliziert zu initialisieren.
michael_ schrieb: > Deinem Vorhaben kommt doch die Z-80 PIO am nächsten Noch besser geeignet wäre das CIO Z8536, aber mit 48 Registern ist es für den TO wohl auch viel zu kompliziert, nichts für Anfänger. Aber vielseitige Konfigurierbarkeit und Primitivstbedienung lassen sich nun mal nicht vereinbaren. Georg
Es gab die 8255 auch mal mit 5 Ports. Das sollte man auch lesen: https://www.altera.com/zh_CN/pdfs/literature/hb/nios2/n2cpu_nii51007.pdf
Guten Morgen, @michael_: > Deinem Vorhaben kommt doch die Z-80 PIO am nächsten. > Aber die ist dir ja zu kompliziert zu initialisieren. Das habe ich nicht gesagt. Ich habe gesagt dass die Ansteuerung beknackt ist. Weil ich nicht glaube dass die Z80-PIO direkt mit meinem Bus kompatibel ist (habe ich aber ggw. noch nicht verifiziert). @Georg: > Noch besser geeignet wäre das CIO Z8536, aber mit 48 Registern ist es > für den TO wohl auch viel zu kompliziert, nichts für Anfänger. Aber > vielseitige Konfigurierbarkeit und Primitivstbedienung lassen sich nun > mal nicht vereinbaren. Warum zu kompliziert? Es scheint hier ein Missverständnis zu geben: mit beknackter Ansteuerung meinte ich nicht das Register-Handling oder die Konfiguration, sondern den Anschluss an den Bus. Den Z8536 schaue ich mir gleich mal genauer an. @Abdul: > Es gab die 8255 auch mal mit 5 Ports. Oo Echt? Interessant, ich suche mal nach Datenblättern. > Das sollte man auch lesen: ... Gut zu wissen, danke. Ralf
Ralf schrieb: > @Abdul: >> Es gab die 8255 auch mal mit 5 Ports. > Oo Echt? Interessant, ich suche mal nach Datenblättern. Der heißt 82C255, ein 64-Pinner.
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.