Startseite


Communities: 
  • Hardware-FAQ
  • Diskussionsforen
  • RC5-72 Projekt
  • RC5-Proxy
  • Forenarchiv

  • Centronics - Schnittstelle (Parallel)

    Die Centronics-Schnittstelle wurde vor vielen Jahren vom Druckerhersteller Centronics eingeführt und von anderen Herstellern übernommen. Normalerweise ist diese Schnittstelle für den Anschluss eines Druckers vorgesehen und wird auch in den meisten Fällen dafür verwendet. Natürlich arbeiten auch z.B. externe Brenner oder Scanner über diese Schnittstelle. Ein anderes großes Anwenderfeld sind Programme der höheren Preiskategorien. Dort verwenden die Hersteller einen sogenannten Dongel (Hardware-Kopierschutz). Dies ist ein Modul, das einfach zwischen die Schnittstelle und den Drucker gesteckt wird. Dieses Modul wird für jedes Programm individuell programmiert, so daß es für jede Seriennummer einen Dongel gibt.

    Elektrisches und Mechanisches:

    Es gibt zwei unterschideliche Formate für die parallele Schnittstelle:

  • den 'echten' Centronics und das
  • IBM-Format

    Diese beiden Steckverbinder sind hier dargestellt.

    IBM-Format


    Bild 1: IBM-Format Bild 2: 'echter' Centronics


    Folgende Tabelle zeigt die Pinbelegung beider Stecker:

    Pin Cen Pin IBM Name Sender Funktion
    1
    1
    /Strobe
    CPU
    Übernahmeimpuls für die Daten (fallende Flanke)
    2
    2
    Daten 0
    CPU
    Datenleitung (niederwertigstes Bit)
    3
    3
    Daten 1
    CPU
    4
    4
    Daten 2
    CPU
    5
    5
    Daten 3
    CPU
    6
    6
    Daten 4
    CPU
    7
    7
    Daten 5
    CPU
    8
    8
    Daten 6
    CPU
    9
    9
    Daten 7
    CPU
    Datenleitung (höchstwertigstes Bit)
    10
    10
    /Acknlg
    Drucker
    Übernahmebestätigung für Daten (low-Pegel)
    11
    11
    Busy
    Drucker
    Empfangsbereitschaft, wird durch low-Pegel signalisiert
    12
    12
    PE
    Drucker
    Papiermangelanzeige
    13
    13
    SLCT
    Drucker
    Zeigt 'Online'-Status des Druckers an
    14
    14
    Auto Feed
    CPU
    Automatisches Einfügen eine Line-Feeds bei low-Pegel
    15
    -
    bc
    -
    nicht benutzt
    16
    -
    0V
    - logischer Massepegel
    17
    -
    Chassis
    GND
    Masse (Druckergehäuse)
    18
    -
    + 5 Volt
    -
    + 5 Volt geregelt
    19
    18
    GND
    -
    Masseleitungen(bei Centronics)
    30
    25
    GND
    -
    verdrillt mit Leitung 1..12
    31
    16
    /INIT
    CPU
    Initialisierung des Druckers und leeren des Puffers durch low-Pegel
    32
    15
    /ERROR
    Drucker
    Fehleranzeige
    33
    -
    GND
    -
    Masseleitung
    34
    -
    nc
    -
    nicht benutzt
    35
    -
    + 5 Volt
    -
    + 5 Volt geregelt
    36
    17
    /SLCT IN
    CPU
    Aktivierung des Druckers


    Der Unterschied zwischen dem Centronics und dem IBM Stecker ist, daß beim Centronics wesentlich mehr Massleitungen vorhanden sind. Wenn man sich den Amphenolstecker (so heißt der von der Centronics Schnittstelle) näher anschaut, so stellt man fest, daß die Masseleitungen ( Pin 19 bis 30 ) genau gegenüber einer Daten- oder Steuerleitung liegen. Es wird also für jede Leitung eine eigene Masseleitung verwendet. Die beiden Leitungen (Signal und Masse) sind miteinander verdrillt, so kann die Störfestigkeit des Kabels erhöht werden. An Pin 18 stellt das Endgerät eine geregelte Spannung von + 5Volt zur Verfügung. Die zugehörige Masse findet sich auf Pin 17. Die Masse der logischen Signale liegt auf Pin 16. Dies waren nur Leitungen der 'originalen' Centronics Schnittstelle. Bei den anderen Signalen, die beide gemeinsam haben unterscheidet man zwischen Datenleitung, Steuerleitung und Meldeleitungen. Die Schnittstelle verfügt über 8 Datenleitungen, die mit D0 bis D7 bezeichnet sind. Auf ihnen werden immer 8 Bits (1 Byte) gleichzeitig übertragen. Das niederwertige Bit ist auf D0 das höchstwerige Bit D7. Die Datenübertragung erfolgt unidirektional vom Computer zum Endgerät.

    Funktionsweise der Datenübertragung:

    Zuerst wird vom Prozessor ein Byte auf die Datenleitungen geschrieben. Mit einem low Pegel auf /Strobe wird dem Endgerät mitgeteilt, das die Daten gültig sind. Nach dem Empfang der Daten signalisiert das Endgerät dem PC durch Aktivierung des Busy Signal, daß es nach mit der Abarbeitung beschäftigt ist. Bei einem Drucker wird dieses Signal z.B. beim Papiervorschub, bei einem Fehler, bei der Initialisierung und während der Dateneingabe aktiviert. Ist das Endgerät mit der Abarbeitung fertig, so wird dies dem Computer durch aktivierung des Acknowledge gezeigt. Danach können sofort weitere Daten geschickt werden. Diese Prozedur wird 3-Draht-Handshake der Centronics Schnittstelle genannt. Die Signale der Centronics Schnittstelle haben alle TTL-Pegel und sind in positiver Logik ausgeführt.

    Kommen wir nun noch zu den Meldeleitungen:

    Wenn einem Drucker das Papier ausgeht, so melde er dies über Paper empty (PE). Ist also der Drucker am Blattende, so wird der Druckvorgang unterbrochen und der logische Pegel auf PE wechselt von low nach high. Wenn nun ein neues Blatt eingelegt wird so wird diese wieder deaktiviert. Durch das Select Signal wird dem Computer mitgeteilt, ob sich der Drucker im On- oder Offlinemodus befindet. ( high = online, low= offline). Ein low Pegel auf Auto Feed XT führt zu einem automatischen Zeilenvorschub des Druckers. Durch das Signal INIT hat der Computer die Möglichkeit, ein angeschlossenes Gerät in seinen Anfangszustand zurück zu setzen. Bei einem Drucker bedeutet dies, leeren des Druckerpuffers und Neupositionierung des Druckkopfes. Sind mehrere Drucker angeschlossen, so können die einzelnen über Select in angesprochen werden. Stellt der Drucker einen internen Fehler fest, so kann er dies dem PC mit dem Error Signal mitteilen.

    Die Register der Centronics Schnittstelle:

    Adresse Ein- bzw. Ausgang Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
    Basisadr. E Ausgabedaten (höchstwertig) - - - - - - Ausgabedaten (niederwertig)
    Basisadr.+1 E Busy acknlg paper empty Select In Error - - -
    Basisadr.+2 A - - - Interrupt ermöglichen Init Select Auto Feed XT Strobe

    Auf der Basisadresse liegt ein Register mit den 8 Datenbits. Auf dieses kann sinnvollerweise nur schreibend zugegriffen werden. Man kann dies zwar auch lesen, sieht dann aber nur die vorher hineingeschriebenen Daten. Die hineingeschriebenen Daten werden sofort auf den 8 Datenleitungen ausgegeben. Mit dem nächsten Register (BA +1) können die Zustände der ankommenden Leitungen ausgelesen werden. Die untersten 3 Bits sind unbenutzt. Die restlichen Bits enthalten die Signale wie beschrieben. Das Signal Acknowledge jedoch löst bei einer fallenden Flanke einen Hardwareinterrupt mit der Nummer 0Fh aus. Vom Prozessor wird dann an eine Interrupt Service Routine gesprungen, und dieses Unterprogramm abgearbeitet. Das dritte Register an BA+2 ist auch ein reines Schreibregister. Mit dem Bit 3 kann die Interruptfähigkeit eingeschaltet werden. Die Bits 5-7 sind unbenutzt.




  • Alle Angaben wie immer ohne Gewährleistung !
    © 2001-2016 Alle Rechte vorbehalten. Mit Urteil vom 12. Mai 1998 - 312 O 85/98 - "Haftung für Links" hat das Landgericht (LG) in Hamburg entschieden, dass man durch die Anbringung eines Links, die Inhalte der gelinkten Seite ggf. mit zu verantworten hat. Dies kann - so das LG - nur dadurch verhindert werden, indem man sich ausdrücklich von diesen Inhalten distanziert. Hiermit distanzieren wir uns ausdrücklich von allen Inhalten aller gelinkten Seiten auf unseren Foren.