Hallo, bei meinen Basteleien ist mir aufgefallen, das der LPT Port am PC eine bestimmte max. Frequenz bei Ein / Ausgaben zulässt. (Ca. 700 kHz). Warum ist das eigentlich so? Da diese Geschwindigkeit mir nicht genügt, wollte ich kurzfristig eine kleine ISA Karte mit einem 8255 bauen um ein paar Ports zum Steuern zu erhalten. Hier habe ich aber die Befürchtung das das auch nicht schneller läuft. ISA ist doch eigentlich mit 8 MHz getaktet, kann man diese Frequenz direkt nach aussen führen? Ich weiss, das mir alle von ISA abraten werden, aber ich hab gerad den Port IC da, und es wird auch keine neuartige Entwicklung dran hängen. Später (an einem kalten Winterabend) löt ich die FT245 zusammen. Dann gibts auch USB. Danke MfG Torsten
Hallo, die 700 kB/s kann ich nur bestätigen. Du hast wahrscheinlich im SPP-Modus (dem einfachsten) gearbeitet. Man sieht dabei nicht den Bustakt und muss noch allerlei Handshake's von Hand machen - was alles nur noch langsamer macht. Schneller wirds mit EPP/ECP (bis zu angeblich 2 MB/s). Ziehe dir zu diesen Modi Informationen (z.B. von www.beyondlogic.org [oder com, oder so...]). Viele Grüße
ISA ist genausoschnell wie der LPT, wenn du direkt auf die Hardware zugreifst (jeweils ein Inp out Out Befehl). Der LPT ist nicht anders als ein I/O Treiber mit (mittlerweile) einigen Zusatzfunktionen. Da der ISA Bus aber nur mit 8MHz getaktet wird, sind selbst mit Assembler nur ein bis zwei MB/s möglich... (andere Geräte wollen ja auch noch was über den ISA Bus übertragen. Eigne ISA Karten zu entwickeln ist eigentlich einfach: 16bit Adresse, 8 bit Daten, WR\, RD\ das wars. Am besten verwendet man einen 8bit Vergleicher um sich einen Teil des Adresraums auszusuchen. Zusätzlich sollte man überprüfen ob AEN Low ist (ansosnten ist es ein DMA Zyklus). Das wichtigste dabei: Die Leitungen so kurz wie möglich !
Im epp modus kannst du signale über die 8 Datenleitungen einlesen. nur eben nicht auf der Hex378, sondern auf der Hex37C. Ein Read-befehl auf diesem Port erzeugt automatisch ein Readstrobesignal(pin10 glaube ich), welches die Hardware, welche ausgelesen werden soll, bestätigen muss. tut sie das nicht, wird nach 10uS ein Timeoutbit im ControlRegister gesetzt, und erst jetzt kann der nächste Read-Befehl gesetzt werden, das wären dann ca. 100Khz. Ich habe einfach - da ich nicht wusste, wie ich meine Hardware überreden kann, ein Read zu bestätigen, 3 Gatter hintereinander geschaltet und über die Laufzeit mein Bestätigungssignal erzeugt, unabhängig ob meine Hardware tatsächlich bereit ist. Die Datenrichtung wird ebenso automatisch umgeschaltet (PIN1), bei Read ist dann da LOW, bei Write ein HIGH. Ein Writestrobe gibt es auch. Eigentlich alles, was man braucht, um Ein-AusgabeLatches anzusteuern. Man muss sich nicht mal drumm kümmern, nur lesen oder schreiben... änlich wie das X-Sram interface beim Atmel. Ich habe auch lange suchen müssen, das ist auch nicht auf meinem Mist gewachsen... Im Funkamateur www.funkamateur.de steht/stand irgentwo im Downloadbereich ein Videograbber mit einem CA3306 (6BitParallel 15Mhz AD-Wandler) als Projekt bereit. Das habe ich mir näher angesehen. Ich habe allerdings den DA-Wandler nie eingestzt, obwohl ich ihn mir gekauft hatte. Satt dessen habe ich mir mit Delphi einen 8Kanal Logikanalyser gebastelt. 2Mhz sind gerade so drinne. Vielleicht find ich den Link mit den EPP-Doku's noch. Warum solls in meinem Rechner nicht genauso aussehen, wie auf meinem Schreibtisch. Gruß Axel
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.