Alexander (HH): Hardwareansteuerung (parallel-Port) in C++

Beitrag lesen

Moin Moin!

Also, für den allerersten Teil, serielle Kommunikation in C++, tut's wohl so ziemlich jedes Stückchen Demo-Code, der einem seriellen Modem irgendwelche AT-Kommandos reindrückt und die Ergebnisse auswertet. Das sollte sich finden lassen. Zum Testen reicht jedes antike Modem mit einem seriellen Anschluß, die "sprechen" alle den alten Hayes-Befehlssatz. Sprich: Auf "AT\n" wird mit "OK\n" geantwortet, auf "ATI\n" kommt "Superduper Modem Blafasel Version 4711/0815\nOK\n", "ATZ\n" sollte ebenfalls mit "OK\n" beantwortet werden. Angenehmerweise stellen sich Modems in aller Regel auch automatisch auf die benutze Baudrate usw. ein.

Serielle Geräte arbeiten oft (aber nicht immer!) mit Standard-Einstellungen wie 9600-8N1 (9600 Baud, 8 Datenbits, keine Parität, 1 Stop-Bit), 19200-8N1 oder 38400-8N1, manche auch mit 115200-8N1. Einem Modem ist das wie gesagt egal, das Meßgerät wird vermutlich exakt eine Geschwindigkeit unterstützen. Und die steht im Handbuch oder kann mit ausreichenden Mitteln (HTTP-Request, Mail, Cash, NDA, rohe Gewalt) vom Hersteller angefordert werden.

Handshake entfällt gerne Mal, insbesondere auf kurzen Leitungen. Ansonsten ist Hardware-Handshake üblich, manche Low-Cost-Interfaces erfordern aber auch mal Software-Handshake.

Die Datenübertragung über die serielle Schnittstelle erfolgt oft (aber wieder einmal: nicht immer!) in ASCII, je nach dem wie "dumm" das Meßgerät ist, könnte es sein, dass es einfach stumpf und dumm dreimal in der Sekunde den Meßwert und die Einheit, gefolgt von "\n" über RS232 rausschreibt (also z.B. "1.23V\n" - Pause - "1.25V\n" - Pause - "1.22V\n" - Pause - ...). Ein voll fernsteuerbares Meßgerät wird vermutlich ein wesentlich aufwendigeres Protokoll benutzen -- schon allein, um nicht von irgendeiner dummen, Unsinn plappernden Windows-Plug-and-Play-Modem-und-Maus-Erkennung in den Selbstzerstörungsmodus gesteuert zu werden. Auch hier sollte das Handbuch weiterhelfen, oder die o.g. "ausreichenden Mittel".

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".