Der Martin: com-port ansteuern

Beitrag lesen

Hallo ihr zwei,

zunächst mal bitte Vorsicht. Vielleicht meinst Du es nicht so, aber Strom würde ich an die Pins nicht anlegen! Spannung schon eher und das nur hochohmig, wenn Du Dir nicht sicher bist, was Du machst.

Guter Einwand, grundsätzlich. Aber eine Spannung von bis zu 15V kannst du gefahrlos direkt an die Pins einer RS232 anlegen. Die Signalpegel sind nämlich mit ±3..15V festgelegt, und da die Eingänge hochohmig sind, begrenzt sich der Eingangsstrom dadurch von selbst. Du solltest nur keine Fremdspannung an die Ausgangspins anlegen - die sind nicht immer kurzschlussfest. :(

Eine direkte Interruptleitung gibt es am RS232 nicht, ...

Das stimmt nicht so ganz. In der klassischen "alten" PC-Architektur hatten die beiden COM-Schnittstellen üblicherweise die Interrupts IRQ4 (COM1) und IRQ3 (COM2) fest zugeordnet. Die heutigen BIOSe und Betriebssysteme sind zwar nicht mehr an diese feste Zuordnung gebunden und könnten sogar mehrere COMs mit einem gemeinsamen Interrupt bedienen. Aber trotzdem bietet die Hardware nach wie vor die Möglichkeit, bei einem "Ereignis" an der COM-Schnittstelle den zugeordneten IRQ auszulösen.
Das "Ereignis" kann -je nach Programmierung des Controllers- beispielsweise der korrekte Empfang eines Zeichens sein, oder auch ein Pegelwechsel an einer Handshakeleitung.

Ich habe hier irgendwo noch ein Buch über Hardwarebasteleien (AD/DA-Wandler, Schrittmotorsteuerungen, Transientenrekorder) rumfliegen. Wenn es Dich interessiert, suche ich Dir den Titel mal raus bzw. ISBN. Ist rel. alt (Beispiele in Turbopascal) aber vielleicht interessant?

Vermutlich ist es das.
Aber um die Beispiele umzusetzen, sollte man möglichst einen älteren Rechner benutzen, die sind meistens etwas robuster, und das macht sich bei solchen Experimenten an der Hardware immer gut.
Außerdem empfiehlt sich für solche Versuche mit hardwarenaher Programmierung ein Uralt-Betriebssystem. Das gute alte DOS hat sich für solche Dinge immer wieder bestens bewährt. Unter modernen Systemen ist es fast unmöglich, direkt auf die Hardware zuzugriefen, wenn man nicht einen eigenen Treiber programmieren will.

Viel Spaß trotz allem,

Martin