C++ parallele Schnittstelle in serielle Schnittstelle

suavemente

Grünschnabel
guten Tag,​
ich bräuchte mal Hilfe für eine C++ Programmierung.

Im Anhang ist eine Aufgabe und Lösung für eine parallele Schnittstelle (LPT1) mich würde mal interessieren was ich bei der Lösung ändern müsste wenn ich es für eine serielle Schnittstelle programmieren müsste?

Ich hoffe mir kann jemand helfen?
 

Anhänge

  • aufgabe.jpg
    aufgabe.jpg
    279,9 KB · Aufrufe: 21
  • lösung.jpg
    lösung.jpg
    97,1 KB · Aufrufe: 23
Hallo suavemente

Soweit ich weiss wird bei einer seriellen Schnittstelle Bit für Bit übertragen, wenn du also das Papierendebit prüfst wäre es von Vorteil den Speicher so auszulegen, dass dies das am höchsten wertige Bit von allen ist, das heisst wenn das übertragen wurde sind die vorherigen auch schon übertragen. Andernfalls läufst du Gefahr, dass du ein Signal ausliest das noch vom alten Taktzyklus ist.

Grüsse
Cromon
 
Moin,
zum Programmieren von Seriellen Schnittstellen: schau dir mal den Sourcecode davon an: http://www.teuniz.net/RS-232/
In der Praxis solltest du vor jedem Senden (evtl. auch Empfangen) von Daten die Verbindung neu Aufbauen sonst buggt das rum ;)

Allerdings ist das für RS232 aka COM-Port ... sollte aber (rein theoretisch) auch auf LPT anwendbar sein.

Clund
 
Hallo,

die serielle Schnitstelle wird normalerweise auf einem höherern Abstraktionslevel angesprochen, als du das aktuell mit dem Parallelport machst. Das heißt, der Zugriff auf die jeweilige COM erfolgt ähnlich wie bei einer Datei: Konfigurieren der Parameter (SetCommTimeouts, SetCommState) , Öffnen (CreateFile), Lesen (ReadFile), Schließen (CloseHandle). Die in Klammer angegebenen Befehle beziehen sich auf Windows.

Gruß
MCoder
 

Neue Beiträge

Zurück