PS/2 auslesen && ggf. interpretieren

Gast #187191
Salute,

hab mal ein kleines Programm geschrieben, das die PS/2-Ausgabe einer
kleinen Maus an einem Roboter (sicher auf ebener Flaeche fahrend)
ausliest.

Laesst man das Programm vollstaendig, wird der Roboter als kreisfoermig
mit Tonnenantrieb, der X-Achse in Drehrichtung und der Y-Achse in
Fahrtrichtung angenommen.

Daraus werden die gefahrenen Strecken in X/Y-Richtung und die Drehung,
jeweils
0..255 =^ 0..[FIELD_WIDTH||FIELD_LENGTH||CIRCLEVALUE] cm
berechnet und per I2C an 0100000, 0100001 und 0100010 weitergegen, was
bei mir PCF8574P mit angehaengten DAC0808LCN sind.

Somit kann die Platine unabhaengig betrieben werden und ohne grosze
Protokollgeschichten mit einem ADC einer anderen Platine gelesen werden
- gut bei Eingangsknappheit oder zeitkritischen Aufgaben.

Vielleicht kann ja jemand, der das Protokoll gut kennt, kurz etwas dazu
sagen, ob das so funktionsfaehig ist, oder ob ich PS/2 missverstanden
habe - laut Simulator (AVRStudio4) tut es jedenfalls einwandfrei. Nur
ACKs werden noch nicht ausgewertet, sondern einfach weggeworfen, ich
habe keine Vorstellung, was an Zeitreserven besteht, erstes
AVR-Projekt.

Ach ja, eins noch, muesste ich fuer USB->PS2-Adapter ein bestimmtes
Signal "sprich jetzt PS/2" an die Maus senden? Wenn Adapter
beiliegen, muesste das prinzipiell ja zumindest gehen, oder?

Grusz,
David

PS: Anschluesse: Clock an PB,0 zum Lesen und an PD,4 zum Schreiben;
Data an PB,1 zum Lesen und an PD,5 zum Schreiben; I2C-Clock an PC,1 und
I2C-Data an PC,0.

PPS: Winzip mag mich nicht - alles auszer code.c und den stis mus nach
./include, Danke :)
Angehängte Dateien:
Gast
Jetzt wurde das Falsche geloescht, naemlich das mit der Zip mit den
kompletten Sourcen - das oben ist nur ein einzelner Header und
unbrauchbar :)Ich haengs hier nochmal an.

David
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.