Pocket-PC, Windows CE, Phone 7, Android, iOS, iPad, iPhone, WebApp

Windows CE TreiberTreiberentwicklung für Windows CE basierte mobile Geräte

Treiberentwicklung Beispiel

Für verschiedene Firmen, z. B. aus der Branche der Energiedienstleister oder der Maschinen-Messtechnik, entwickeln wir Systemtreiber für Windows CE basierte Pocket-PCs.

Es handelt sich dabei um Stream-, Filter- und Kerneltreiber, die z. B. proprietäre Protokolle und Übertragungsraten ermöglichen. Ausgangsposition ist häufig die Migration bestehender Plattformen auf Windows CE unter Verwendung bestehender C/C++ Quellcodes.

Diese Schnittstellen werden meist über eine Wrapper-Assembly als API in das .NET Compact Framework eingebunden und über eine Mobile-Geräte-Applikation im .NET Compact Framework Application genutzt.


Entwicklungsschritte:

Evaluierung

  • Die Evaluierung der geforderten Schnittstellen unter Berücksichtigung der erforderlichen Protokolle
  • Möglicherweise die Überprüfung der Verwendbarkeit bestehenden Quellcodes
  • Erstellung eines Entwicklungs- bzw. Portierungskonzepts

Portierung

  • Die Portierung findet schrittweise statt, indem Quellcodes auszugsweise in WindowsCE-Projekten nutzbar gemacht werden.
  • Adaptierung von WinAPI-Zugriffsschichten

Erstellung

  • Um die Treiber zu testen, werden systemnahe Prüfapplikationen für den Aufruf durch alle Protokollschichten benötigt.

.NET /C++ Wrapper-Assembly

  • Erst nach erfolgreichem Test der Treiber mit den systemnahen Prüfapplikationen werden Wrapper-Assemblys für die Nutzung im .NET Compact Framework erstellt.

.NET CF Client

  • Abschließend werden alle Softwareschnittstellen mit einer .NET Compact Framework Applikation getestet.
  • Die Evaluierung der bestehenden Quellcodes erfolgt mit dem Ziel, ein Portierungskonzept zu erstellen. Im Detail bedeutet dies die Ergründung der Softwarestruktur, Evaluierung des Datenflusses und Auswahl der benötigten Quellcodes, um einen Ansatz für den Übergang zu .NET zu bestimmen.

Dieses Konzept wird beeinflusst durch folgende Anforderungen

  • Bedarf an Asynchronität der Aufrufe
  • Benötigte Pufferung der Telegramme
  • Multiple Access Treiber, bei paralleler Nutzung durch verschiedene Applikationen
  • Objektorientiertes Softwaredesign in den höheren Protokollschichten, bei komplexen Protokollen
  • Objektorientiertes Softwaredesign bei der Protokollverarbeitung, bei mehreren Treibervarianten gleicher Art
  • .NET Visual Studio Control für die Toolbox ermöglicht einfache Integration in Softwareprojekte

Vorteile durch eigene, individuelle Gerätetreiber

  • Optimierte, direkte Kommunikation mit externen Geräten ohne Umwege über die WinAPI-Schnittstelle
  • Nutzung von Gerätetreibern als Standardschnittstelle für Treiberschichten
  • Mögliche Monitoring-Schnittstelle zum Debuggen der Schnittstellen-Kommunikation

Schulung / Einführung zu in diesem Projekt verwendeten Technologien