Forum: Mikrocontroller und Digitale Elektronik Treiberprogrammierung


von Ca E. (ceng000)


Lesenswert?

Hallo,

kann jemand Starthilfe bei der Treiberprogrammierung geben. Mich 
interessiert
ein eigener Maustreiber (als Aufgabe zum lernen) in C.

Sinn des ganzen. Wie kann man die Berührungsoberfläche eines Smartphones 
zur Maussteuerung verwenden...

Danke und schönen Tag ....

von Tuxpilot (Gast)


Lesenswert?

KDE Connect hat das ganze schon fertig, vielleicht kannst du dir das mal 
anschauen. Ist wahrscheinlich nicht das, was du brauchst.

von 2⁵ (Gast)


Lesenswert?

Für welches Betriebssystem?

Windows -> 
https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/

Linux -> https://lwn.net/Kernel/LDD3/ (leider etwas veraltet)

Beides bedingt etwas Zeit und Lesewillen zur Einarbeitung...

von Pandur S. (jetztnicht)


Lesenswert?

Ein Maustreiber ? Was soll der denn koennen ?

Eine Mouse an USB anschliessen ? Von Grund auf ?
.. das Waere dann die Protokolle vom USB durchforsten, ein HID 
erstellen, ins system einbinden. Mit einigem an Erfahrung .. vielleicht 
in einem halben Jahr.

Ein Android als Mouse fuer einen PC verwenden ?
Ist moeglicherweise einfacher. Den touch einlesen, in Packete fuer zB 
WLAN umwandeln, dh eithernet. Auf der PC Seite eine Service App 
erstellen, auf den Ethernet port hoeren und als Mouse Steuerung 
einbinden.

von georg (Gast)


Lesenswert?

Ca E. schrieb:
> Wie kann man die Berührungsoberfläche eines Smartphones
> zur Maussteuerung verwenden...

Steuerung wo? Auf dem Smartphone ist das nicht nötig, der Finger zeigt 
ja bereits dahin wo man was betätigen möchte. Oder mit dem Smartphone 
die Maus des PC steuern? Das ist eine hochprozentige Idee.

Georg

von Alex G. (dragongamer)


Lesenswert?

georg schrieb:
> Oder mit dem Smartphone
> die Maus des PC steuern? Das ist eine hochprozentige Idee.
Aber doch irgendwie sehr interessant. Dann kann man eifnach ein touchpad 
an seinem PC "nachrüsten"!

von Michael U. (amiga)


Lesenswert?

Hallo,

georg schrieb:
> Oder mit dem Smartphone
> die Maus des PC steuern? Das ist eine hochprozentige Idee.

naja, wer hat schon ein Touchpad am PC, auf dem man als Hintergrundbild 
Videos abspielen kann?

Gruß aus Berlin
Michael

von Alex G. (dragongamer)


Lesenswert?

Am einfachsten implementieren könnte man das erstmal mit einer normalen 
Software auf dem PC welche sich durch den standard usb Treiber mit dem 
Phone verbindet.
Interessant ist dann auch die Möglichkeit das wireless übers Netzwerk 
(lokales netwerk - muss ja kein inet sein) zu betreiben.

Allerdings wird man die Latenzprobpeme evaluieren müssen.

von Ruediger A. (Firma: keine) (rac)


Lesenswert?

2⁵ schrieb:
> Für welches Betriebssystem?
>
> Windows ->
> https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/
>
> Linux -> https://lwn.net/Kernel/LDD3/ (leider etwas veraltet)
>
> Beides bedingt etwas Zeit und Lesewillen zur Einarbeitung...

Ja, das ist in der Tat die zentrale Frage. Die meisten "hohen" 
Betriebssysteme haben ein recht starres Treibermodell, bei dem der 
Kontrollfluss vom OS vorgegebenen Konventionen folgen muss. Typisch ist 
dafür ein "Anker," das ist eine Struktur, mit der der Treiber 
Callbackfunktionen registriert, die dann von BS zu definierten 
Zeitpunkten aufgerufen werden (oft der "Open/Close/Read/Write/IoCtl" 
Semantik folgend). Du musst also das Treibermodell des jeweiligen 
Betriebssystems kennen. Das ist für alle relevanten OS gut dokumentiert, 
erfordert aber wie schon erwähnt ein etwas tieferes Einlesen als man es 
von der Applikationsentwicklung egwohnt ist.

In kleineren OS (z.B. viele RTOS) ist es nicht so starr vorgegeben, da 
kann man sich schon Mal mit ISRs und einer "handgestrickten" 
Kommunikation zwischen Applikation und ISR behelfen (allerdings gibt es 
auch dort "Blaupausencode," der zu befolgen nicht dumm ist). Manche 
Middlewaresuiten (z.B. Netzwerksoftware oder Daetisysteme) haben dort 
eigene Treibermodelle und demzufolge so etwas wie eigene "DDKs" (Device 
Driver Kits, manchmal so genannt, manchmal Anders).

Wenn es Dir allerdings um interaktive devices wie Mäuse oder 
Touchscreens geht, redest Du sehr wahrscheinlich über ein komplexeres 
Desktop basiertes OS wie Android oder Windows. Dafür hilft Dir nur die 
Auseinandersetzung mit dem Treibermodell, z.B. über o.g. links weiter.

: Bearbeitet durch User
von Palmschlumpf (Gast)


Lesenswert?

Für den Palm gibts sowas schon lange:
Teksketch macht aus dem Palm eine Maus oder ein Tablett...

von Alex G. (dragongamer)


Lesenswert?


von Johannes S. (Gast)


Lesenswert?

und mit 'mobile mouse' fürs iPhone auch schon lange.
http://www.mobilemouse.com/

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.