title image


Smiley Re: für eure Informationen
Hi.



Dann nutzt du bereits EPP/ECP? Denn sonst erzeugt der LPT-Baustein ja von sich aus keine Takte bzw. keine automatischen Abläufe zur Schnittstelle hin. Sondern jede Änderung an den Signalleitungen muss per Software-Befehl durchgeführt werden. Und du hast es als Programmierer selbst in der Hand, in welcher zeitlichen Abfolge es geschieht. Man rechnet ganz grob, dass ein inport() bzw. ein outport() ca. 1 Mikrosekunde dauert. Und dann baut man normalerweise nach jedem I/O-Zugriff noch einen weiteren Dummy-I/O-Befehl zwecks I/O-Recovery dazwischen. Die schnellste Abfolge ist demnach



outportb (0x378, data1);

outportw (dummyport, 0);

outportb (0x378, data2);

outportw (dummyport, 0);

outportb (0x378, data3);

...



Noch ohne irgendein Handshake oder Steuerprotokoll. Ergibt, wie gesagt sehr grob geschätzt, alle 2 Mikrosekunden ein Datenbyte, also 500 KB/s. Schneller gehts sowieso nicht. Wenn es langsamer sein soll, gehören noch mehr outport(dummyport,..) dazwischen. Oder Handshake anwenden.



Crexcrex.

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: