Informationsuebertragung ueber eine Linie

Gast #322425
Lesenswert?

Hallo,

Themenbereich Robotik, Phantom haptic input device von Sensable...
folgende Situation: Habe ein haptisches Eingabegeraet an dem ein Knopf
ist (einfacher Unterbrecher einer Leitung). Es gibt einige APIs mit
Hilfe derer man mit diesem Geraet ganz gut kommunizieren kann. Ich
programmiere also C bzw C++ unter Microsoft Visual Studio .Net. Wenn
ich den Knopf druecke kann ich ein sog. Event ausloesen in meinem
Programm. Kurz gesagt: ich kann per Software einen Knopfdruck
feststellen.

Frage:
ich will ueber die Leitung dieses Unterbrechers nun Informationen
uebertragen, habe aber keine Synchroniesierung oder Zeitbasis auf
Seiten des Geraetes und in meinem Programm auch nicht. Diese Leitung
werde ich an einen Pin eines AVR haengen.

Wie uebertrage ich ein Byte ueber diese Leitung, und wie stelle ich es
in der Software wieder her? Wie geht hier die Synchronisation?

Ich danke euch fuer jeden Tipp. Links zu
Informations-/Dokumentationsquellen sind gern gesehen.

mg,
Johannnes
Gast #322429
Lesenswert?

Hallo,

vielen Dank fuer die Tips. Ich werd sie mir gleich mal vornehmen.

@andreas: gibt es Software-UARTs als fertige Pakete, oder muss ich die
selber schreiben? Hast du ein evtl. Beispiel? Ueber welchen Port soll
das ganze laufen? Kann ich will ja wenn moeglich keine zusaetzliche
Hardware bauen. Die externe Loesung ueber einen seriellen Port kenn
ich, koente ich machen. Ich moechte es aber wenn moeglich eleganter
hinkriegen/hintricksen.

mg,
Johannes
Gast #322430
Lesenswert?

@robert

das mit dem 1Wire ist eine interessante Sache, aber da ich ueber diese
Leitung nicht nach belieben verfuegen kann gehts damit nicht. Die
Leitung ist normalerweise fuer etwas anderes vorgesehen, sie ist fest
installier und das einzige was ich daran machen kann ist den Schalter
druecken, und in der Software ein Event ausloesen. Alles was dazwischen
ist(HW, SW im Phantom-Geraet selber, FireWire Port...) kann ich nicht
beeinflussen.
Ich moechte diesen Knopf an einen uP Pin haengen, und Sensor
Informationen ueber diese "schnittstelle" in meine SW bringen. Wenn
mir das so gelingt, brauche ich keine zusaetzliche externe HArdware
(serielle Schnittstelle oder USB etc...) Das waere eben fein.
Admin Persönliche Seite #322432
Lesenswert?

Ich meinte das ohne zusätzliche Hardware. Auf AVR-Seite kannst du das
eingebaute UART verwenden, auf PC-Seite musst du die Zeitpunkte der
eingehenden Events auswerten. Die mögliche Baudrate wird aber
vermutlich sehr niedrig sein. Falls deine Hardware nur einen Event bei
Knopfdruck auslöst, nicht je einen bei steigender und fallender Flanke,
dürfte das allerdings nochmals komplizierter werden.
Gast #322434
Lesenswert?

Also mit den Events die die Software generiert, kommt man auf eine
Baudrate von sage und schreibe 25 Bit/Sekunde. Macht knapp ueber 4 Byte
pro Sekunde.Wow! ...immerhin besser als gar nix, aber fuer meine
Anwendung natuerlich unter aller Sau

Ich muss mir prinzipiell was anderes Ueberlegen.

mg,
Johannes

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren