Entwicklung des USB-Rotary-Sensor-Device und zugehörigem WDF-Treiber von Matthias Rick und Sven Schraps

Größe: px
Ab Seite anzeigen:

Download "Entwicklung des USB-Rotary-Sensor-Device und zugehörigem WDF-Treiber von Matthias Rick und Sven Schraps"

Transkript

1 Entwicklung des USB-Rotary-Sensor-Device und zugehörigem WDF-Treiber von Matthias Rick und Sven Schraps 22. Januar 2009

2 Inhaltsverzeichnis 1. Die Hardware Der Melexis MLX90316 Drehwinkelgeber Entwicklung des Boards Komponenten Die Leiterplatte als Eagle-Entwurf Die fertige Leiterplatte mit benötigter Bestückung Über die Firmware im Mikrocontroller AT90USB Programmierung des USB-Controllers Die Endpoints im Controller Die Deskriptoren Die Treiberanbindung WDF - Die Windows Driver Foundation Der WDF-Driver-Stack Übersicht KMDF - Kernel Mode Driver Framework UMDF - User Mode Driver Framework Die Entwicklungsumgebung HID - Die Human Interface Device -Class Treiberübersicht Der USBRotary-Treiber Schnellübersicht über Quelltextdatein und deren Funktionen Quelltextdatein Funktionenbeschreibung für drv.cpp Funktionenbeschreibung für hid.cpp Die Headerfiles Quellen und Hilfsmittel Literatur Internetseiten Werkzeuge sonstige Hilfsmittel A. Quelltexte 18 ii

3 1. Die Hardware 1.1. Der Melexis MLX90316 Drehwinkelgeber Basis des USB-Rotary-Sensor-Device ist der Drehwinkelsensor Melexis MLX Dieser befindet sich auf einem Evaluation Board und die aktuellen Drehwinkel können via SPI (Serial Peripheral Interface) von einem Mikrocontroller abgerufen werden. Der MLX90316 verwendet die Triaxis Hall Technologie, welche auf IMCs (Integrated Magnetic Concentrators) basiert. Dank dieser Technologie wird die Entwicklung kleiner, kostengünstiger und dabei hochgenauer kontaktloser Drehwinkelgeber ermöglicht. Abb. 1.1.: Die Ermittlung der Lage des Magnetfeldes geschieht über 4 Hall-Sonden im inneren des Chips. Die Drehwinkelwerte werden dann mit einer Auflösung von 14 Bit über die SPI-Schnittstelle weitergegeben. Es sei darüber hinaus erwähnt, dass der der MLX90316 eine sehr umfangreiche Parameterzahl besitzt, die alle mit einem geeigneten Programmiergerät angepasst werden können. Dieses stand uns zu diesem Projekt nicht zur Verfügung, aber die Standardparameter sind für unsere Anwendung ausreichend Entwicklung des Boards Komponenten Um den Drehwinkelgeber ansprechen zu können, benötigen wir einen Controller, der sowohl ein SPI-Interface hat, als auch einen integrierten USB-Controller, der unsere Daten dann an den PC weiterleitet. Die Wahl fiel auf den Mikrocontroller Atmel AT90USB1287. Für diesen Prozessor wurde dann noch eine Leiterplatte mit EAGLE entworfen, die 1

4 aber nicht ausschließlich für dieses Projekt gedacht ist. Deswegen sind zusätzlich zu den benötigten Komponenten auch noch andere vorgesehen. Wichtig für das USB- Rotary-Device-Projekt sind die USB-Buchse zur Kommunikation mit dem PC, die JTAG- Schnittstelle zum Flashen des Controllers, die SPI-Verbindung zum Drehwinkelgeber, Buttons zur Eingabe und ein Display zur Anzeige von Debug-Ausgaben Die Leiterplatte als Eagle-Entwurf Abb. 1.2.: 2

5 Die fertige Leiterplatte mit benötigter Bestückung Abb. 1.3.: 1.3. Über die Firmware im Mikrocontroller AT90USB Programmierung des USB-Controllers Der Mikrocontroller verfügt über einen integrierten USB-Controller. Dieser unterstützt sowohl Low Speed, als auch Full Speed USB. Wir haben uns für Full Speed USB entschieden und haben somit eine Übertragungsrate von 12Mbit/s zwischen PC und Mikrocontroller. Die Kommunikation zwischen USB-Host-Controller im PC und dem USB-Controller im Device findet über Pipes im Host und zugehörige Endpoints im Device statt. Jeder Endpoint bzw. Pipe kann einen unterschiedlichen Übertragungsmodus haben. Jeder Endpoint gehört zu einem Inferface und jedes Interface gehört zu einer Configuration. Es kann sowohl mehrere Interfaces innerhalb einer Configuration, als auch an sich mehrere Configurations geben. An Übertragungsmodi gibt es prinzipiell 3 Verschiedene: Interrupt Transfer, Bulk Transfer, Isochronous Transfer. Wir haben den Interrupt Transfer gewählt, da unser Gerät nur dann Daten senden soll, wenn eine Änderung der Werte stattfindet. All diese Informationen über die Konfiguration werden beim Einstecken des Gerätes über Deskriptoren an den PC gesand. Dies geht als Control Transfer über den Endpoint 0, welcher für die Konfiguration des Gerätes zuständig ist. Er ist als einziger Endpoint 3

6 bidirektional, wodurch er sowohl Daten empfangen (in der Regel Befehlswörter), als auch Daten senden kann (Deskriptoren). Hier ein Überblick über die Struktur der Deskriptoren: Abb. 1.4.: Die Endpoints im Controller Das USB-Rotary-Sensor-Device benötigt 2 Endpoints. Enpoint 0 zur Übertragung der Deskriptoren und einen In-Endpoint. Die Richtung wird immer vom Host aus betrachtet. Das bedeutet, dass der In-Endpoint Daten vom Mikrocontroller an den Rechner sendet. Zusätzlich haben wir zum Testen auch noch einen Out-Endpoint in Betrieb genommen. Dadurch ergibt sich folgende Konfiguration: Endpoint 0: Type: Default Control Enpoint Mode: Control Transfer Endpoint 1: IN Endpoint Mode: Interrupt Transfer Endpoint 2: OUT Endpoint Mode: Interrupt Transfer Die Deskriptoren Wie bereits bei erwähnt spielen die Deskriptoren eine entscheidende Rolle bei der Initialisierung des Gerätes. Dadurch ist dann im PC-System der PnP(Plug and Play)- Manager von Windows in der Lage das Gerät zu identifizieren und den dazugehörigen Treiber einzubinden, so fern dieser installiert ist. 4

7 Device-Deskriptor blength bdescriptortype bcdusb bdeviceclass bdevicesubclass bdeviceprotocol bmaxpacketsize idvendor idproduct bcddevice imanufacturer iproduct iserialnumber bnumconfigurations 0x12 0x01 0x0110 0x00 0x00 0x00 0x40 0x03EB 0x2020 0x0100 0x00 0x00 0x00 0x01 Configuration Deskriptor blength 0x09 bdescriptortype 0x02 wtotallength 0x0020 bnuminterfaces 0x00 bconfigurationvalue 0x01 iconfiguration 0x01 bmattributes 0x00 bmaxpower 0x80 Interface Deskriptor blength bdescriptortype binterfacenumber balternatesetting bnumendpoints binterfaceclass binterfacesubclass binterfaceprotocol iinterface 0x09 0x04 0x00 0x00 0x02 0x00 0x00 0x01 0x00 Endpoint-1 Deskriptor (IN) blength 0x07 bdescriptortype 0x05 bendpointaddress 0x81 bmattributes 0x03 wmaxpacketsize 0x4000 binterval 0x00 5

8 Endpoint-2 Deskriptor (OUT) blength 0x07 bdescriptortype 0x05 bendpointaddress 0x02 bmattributes 0x00 wmaxpacketsize 0x4000 binterval 0x00 6

9 2. Die Treiberanbindung 2.1. WDF - Die Windows Driver Foundation Mit dem Windows Driver Model (WDM) schuf Microsoft vor mehr als zehn Jahren eine gemeinsame Treiberplattform für die damals aktuellen Systeme Windows 98 und später Windows Hiermit war es erstmals möglich, sowohl für die DOS- als auch für die NT-basierten Microsoft-Betriebssysteme ein einheitliches Treiberkonzept für Hardware- Einheiten umzusetzen. Das WDM ermöglicht eine Vereinheitlichung der Treiber für damals noch neue Technologien wie USB und Firewire (IEEE 1394), denn es müssen nicht mehr zwei unterschiedliche Treiberarchitekturen (VxDs, NT Driver Model) berücksichtigt werden, was das Erstellen von Treibern deutlich verbessert und erleichtert. Als wesentliche Kritikpunkte gelten bei WDM-Programmierern, dass der zu erstellende Code für das, was er eigentlich bewirken soll, zu komplex und zu umfangreich erscheint. Insbesondere die Implementierung von Plug&Play- sowie von Stromspar-Mechanismen gilt als ein verhältnismäßig schwieriges und code-aufwendiges Unterfangen, zumal es in den letzten Jahren auf diesem Gebiet mit ACPI einiges an Erweiterungen gegeben hat, die das WDM in seiner ursprünglichen Auslegung noch nicht berücksichtigen konnte. An diesen Punkten setzt die Windows Driver Foundation an, die zum einen leichter zu entwicklende Treiber verspricht und auf der anderen Seite mehr Unterstützung für neuere Devices. WDF bietet ein Grundgerüst an, welches sich beliebig erweitern lässt. Der Basis-Treiber als solches beherrscht bereits Dinge wie Plug and Play und Power Management. Man muss sich nicht zusätzlich um die Zustandsverwaltung kümmern - kann dies aber dennoch durch eingreifen in das Standardverhalten tun. Zudem werden Synchronisationsprobleme durch geeignete Queue-Konzepte weitrechend vermieden, so dass es hier weniger Schwierigkeiten gibt, als dies noch bei WDM der Fall war. Die Windows Driver Foundation bietet Unterstützung für Kernel-Mode-Treiber mit dem sogenannten Kernel Mode Driver Framework (KMDF) und User-Mode-Treiber im User Mode Driver Framework (UMDF) an. WDF stellt zu dem ein neues Konzept in der Treiberentwicklung für Windows vor - Objektorientierung. KMDF Treiber werden in aller Regel in C geschrieben, bieten somit also Akzeptanz für alle bisherigen WDM Entwickler an. UMDF Treiber sind in C++ geschrieben, und bieten somit die volle Kraft der Objektorientierung und COM an. Gerätetreiber können als Kernel-Mode-Treiber mit KMDF für alle Windows Versionen ab Windows 2000 geschrieben werden, wobei hier einige betriebssystemspezifische Restriktionen und eventuell nicht vorhandene Features zu beachten sind. Mit UMDF geschriebenen Treiber können ab Windows XP eingesetzt werden. WDF bietet zudem Tools an, mit den man Treiber verifizieren, testen und debuggen kann, diese Tools sind unter anderem Static Driver Verifier (SDV), PREFast for Drivers (PFD) sowie der DDK 7

10 Kernel-Debugger. Windows Driver Foundation mit ihren 2 Frameworks KMDF und UMDF ist also ein sehr mächtiges Werkzeug um Treiber effizient unter Windows zu entwickeln Der WDF-Driver-Stack Übersicht Abb. 2.1.: KMDF - Kernel Mode Driver Framework Eine Applikation sendet I/O Anfragen an die Win32 API, diese werden von der API an die I/O Routinen des Windows Kernels weitergeleitet. Der I/O Manager des Windows Kernels erstellt aus dieser Anfrage ein I/O request packet (IRP) und leitet dies zu den Zieltreiber, durch Aufrufen des dafür vorgesehenen Entry Points auf, weiter. KMDF verarbeitet diesen Request und kreiert ein WDF request Objekt und ruft, falls notwendig, weitere Callback-Routinen auf und leitet diesen WDF request an darunterliegende Treiber weiter UMDF - User Mode Driver Framework Eine Applikation sendet I/O Anfragen an die Win32 API, diese werden von der API an die I/O Routinen des Windows Kernels weitergeleitet. Der I/O Manager des Windows Kernels erstellt aus dieser Anfrage ein I/O request packet (IRP) und leitet dies zu den Zieltreiber durch Aufrufen des dafür vorgesehenen Entry Points auf, weiter. Ist der aufzurufende Treiber ein User-Mode Treiber, kann dieser nicht direkt, wie bei KMDF aufgerufen werden, da dieser sich überhalb des Kernel Modes befindet und Kernel Mode nicht auf User Mode zurückgreifen kann. Der I/O Manager sendet die IRPs an eine im Kernel Mode befindliche Komponente namens Reflector. Der Reflector ist ein Kernel-Mode WDM Filter Treiber, der den User-Mode Treiber im Kernel-Mode "repräsentiert". Dieser leitet die IRPs weiter zu den User-Mode Driver Host Process. Der Reflector dient als Schnittstelle zwischen User-Mode und Kernel-Mode. 8

11 Der Driver Host Process inkludiert für den User-Mode Treiber COM-Komponenten, welche die Hardware aus dem User-Mode her steuern. Zudem wird durch den Driver Host Process der eigentliche UMDF-Treiber einbezogen. Dieser repräsentiert das User-Mode Device Driver Interface (DDI). UMDF ist eine dynamic-link library (DLL) von "COMstyle" Objekten welche das Management der I/O, Plug and Play, Powermanagerment, sowie Flusssteuerung übernehmen. Das Run-Time Environment sendet I/O Anfragen, lädt den Treiber, erstellt und vernichtet den User-Mode Device Stack, verwaltet die Threads und leitet die Nachrichten vom Reflector zum Driver Manager Die Entwicklungsumgebung Da wir uns beim Schreiben eines KMDF-Treibers im Kern des Betriebssystems befinden, können kleine Änderungen schnell dazu führen, dass das gesamte Betriebssystem nicht mehr funktioniert. Deshalb haben wir unseren Treiber auf einer Virtuellen Maschine entwickelt, bei der wir im Notfall problemlos zu einem noch funktionierenden Zustand zurückkehren können. Des weiteren benötigt man zum Debuggen eigentlich einen zweiten Rechner, der beispielsweise über eine Serielle Schnittstelle mit dem PC, auf dem entwickelt wird, verbunden ist. Dies entfällt in unserem Fall, da wir eine serielle Schnittstelle über eine Named Pipe emulieren. Abb. 2.2.: Zunächst haben wir auf der Virtuellen Maschine Windows XP SP2 installiert. Dies eignet sich als Entwicklungssystem, da man auch nicht zertifizierte Treiber installieren kann. Dies ist bei 64-Bit-Windows-Systemen leider nicht mehr möglich. Des weiteren benötigt man das WinDDK, das sowohl Compiler, als auch SampleTreiber zur Verfügung stellt. Eine graphische Entwicklungsumgebung sucht man da jedoch vergebens. Man kann aber mit ein paar Einstellungen und unter Zuhilfenahme zweier Konfigurations- Dateien auch das Microsoft Visual Studio zum entwicklen von Treibern verwenden. Die Vorteile dabei sind zum einen eine wesentlich komfortablere Umgebung als bei einem reinen Texteditor und man braucht nicht jedes mal die Compile-Befehle in der Dos-Shell einzutippen. Ein sehr hilfreiches Tool um das Entwicklungssystem während der Laufzeit Debuggen zu können ist WinDbg. Dies läuft auf dem Host-PC und liefert zum einen die Ausgaben, die wir über KdPrint() ausgeben und zum anderen kann man damit Bugchecks (oft auch 9

12 als Blue Screens bezeichnet) analysieren HID - Die Human Interface Device -Class Die Human Interface Device -Class ist eine Geräteklasse des USB-Standrads für Computer, welche Geräte beschreibt, mit denen Benutzer direkt interagieren. Meist wird HID bei Geräten wie Tastatur, Maus, Joystick und Grafiktabletts verwendet. Allerdings kann HID auch für weitere Zwecke, wie z. B. Relaiskarten, Steuerungen (Knöpfe und Schalter), Thermometer, Multimeter, Telefonie und viele weitere Einsatzzwecke verwendet werden. Beschränkt wird die Nutzbarkeit unter anderem durch eine geringere Anzahl an Endpunkten und geringe Datenübertragungsrate. Ein HID-Gerätetreiber (hid.dll) ist bei Windows schon vorinstalliert. Wird ein HID- Gerät (während des Betriebs) angeschlossen, wird es meist direkt als Gerätetyp Eingabegeräte (Human Interface Devices) erkannt und wird dann im Gerätemanager angezeigt. Für die Devicespezifischen Daten werden dann zu den Device-, Configuration-, Interfaceund Endpointdeskriptoren auch noch ein HID-Deskriptor und ein HID-Report-Deskriptor übertragen. Somit kann man es sich eigentlich sparen einen Treiber für das Gerät zu schreiben. Wir haben uns dennoch für eine andere Methode entschieden. Wir erkennen das Gerät zunächst als normales USB-Gerät und reichen dann dieses mit den zusätzlichen Informationen (HID-Deskriptor und HID-Report-Deskriptor) an den HID-Gerätetreiber weiter. 10

13 2.5. Treiberübersicht Abb. 2.3.: 11

14 2.6. Der USBRotary-Treiber Schnellübersicht über Quelltextdatein und deren Funktionen Quelltextdatein drv.cpp hid.cpp initialisiert den Treiber und das damit verbundene Device initialisiert Kontexte, Handler, Pipes, Queues usw. stellt I/O Operationen zur Verfügung, damit das Device über seperate Applikation mittels read und write Befehle ansprechbar ist führt D0 Entry/ D0 Exit Funktionen aus bietet einen Continuous Reader an, der ständig neue Daten vom Device holt stellt zudem eine Timerfunktion bereit, die nach bestimmter Zeit HID Input Reports versendet leitet HID-spezifische Informationen des Devices an übergelegene HID-Treiber weiter KDMF kann normal kein HID, daher wird ein HID-Mapper benötigt, der sich als HIDMinitreiber registriert und Vermittler zwischen hid.dll und den KMDF spielt Funktionenbeschreibung für drv.cpp DriverEntry(... ) Einstiegspunkt für den Treiber erzeugt ein Device mit zugehörigem Device Context verknüpft Event-Hander EvtDeviceAdd mit dem Device (für Konfiguration) EvtDeviceAdd(... ) konfiguriert das Device verknüpft das Device mit entsprechenden Event-Handlern (EvtDeviceD0Entry, EvtIoWrite, EvtIoDeviceControl,...) erstellt die benötigten Pipes und konfiguriert diese 12

15 EvtDevicePrepareHardware(... ) initalisiert die USB-Endpoints holt sich Informationen über Device per DeviceDescriptor ruft die Initialisierung für den Continuous Reader auf (ConfigContReaderForInterruptEndPoint) ConfigContReaderForInterruptEndPoint(... ) initialisiert den Continuous Reader für die InterruptInPipe leitet die Verarbeitung aus der InterruptInPipe an ensprechende Funktion (EvtUsbInterruptPipeReadComplete) weiter VOID EvtUsbInterruptPipeReadComplete(... ) zieht Degree- und ButtonState-Information aus dem Buffer und setzt dieses in die Context-Struktur startet den Timer zur weiteren Verarbeitung der Inputinformationen VOID CompleteReadReport(... ) holt sich über das Device die Context-Struktur allokiert Speicher für den "inputreport" inputreport übernimmt die Werte von Degree und ButtonState Request mit inputreport wird weiterversendet EvtDeviceD0Entry(... ) startet den Continuous Reader auf der InterruptInPipe EvtDeviceD0Exit(... ) stoppt den Continuous Reader auf der InterruptInPipe und cancelt I/O- Sendeanfragen VOID EvtIoDeviceControl(... ) übernimmt die Abarbeitung von Kontrollinformationen VOID EvtIoWrite(... ) holt sich den Context aus der Queue allokiert Speicher bereitet die im Context enthaltene Pipe (InterruptOutPipe) für das versenden des Requests vor meldet EvtRequestReadCompletionRoutine an 13

16 sendet den Request VOID EvtRequestReadCompletionRoutine(... ) holt sich Statusinformationen über die Versendung und wertet diese aus sendet den Request an upper-layer Treiber weiter VOID EvtIoRead(... ) holt sich den Context aus der Queue bereitet die im Context enthaltene Pipe (InterruptInPipe) für das versenden des Requests vor meldet EvtRequestReadCompletionRoutine an sendet den Request VOID EvtTimerFunction(... ) holt sich den Context aus dem Timer sendet Context an die CompleteReadReport-Funktion Funktionenbeschreibung für hid.cpp VOID EvtInternalDeviceControl(... ) ruft die entsprechenden HID-Funktionen laut Control-Codes auf GetHidDescriptor(... ) sendet den im Headerfile beschriebenen HID-Deskriptor an entsprechende HID-Treiber GetReportDescriptor(... ) sendet den im Headerfile beschriebenen HID-Report-Deskriptor an entsprechende HID-Treiber GetDeviceAttributes(... ) sendet HID-Geräte-Attribute an oberhalb gelegene HID-Treiber Die Headerfiles drv.h eigene definierte Funktionsrümpfe Strukturen von: Treiber-Kontext, HID-Deskritor, HID-Report-Deskriptor, Input-Report einige Konstanten 14

17 ownhidport.h leicht modifizierte hidport.h aus DDK prototypes.h einige Funktionsrumpf-Prototypen (für Standardtreiber) 15

18 3. Quellen und Hilfsmittel 3.1. Literatur Developing Drivers with the Windows Driver Foundation: Penny Orwick, Guy Smith; Microsoft Press, 2007 Programming the Windows Driver Model, Walter Oney, Microsoft Press, 2002 Atmel AT90USB - Datasheet USB Spezifikation USB - HID Usage Tables - Spezifikation Device Class Definition for Human Interface Devices - Spezifikation Skript der Lehrveranstaltung Windows-Treiber-Programmierung der Fh Lausitz 3.2. Internetseiten Werkzeuge VMWare Microsoft Visual Studio 2008 WinDDK WinDbg 6.10 Sysnucleus USB Trace 16

19 USBlyzer HID-Descriptor-Tool CodeVision AVR-Compiler E-LAB AVRco 3.4. sonstige Hilfsmittel Sample-Treiber des WinDDK

20 A. Quelltexte 18

21 c:\dokumente und Einstellungen\matthias\Desktop\Atmel USB Treiber\WdfDriver\drv.cpp #include "ntddk.h" #include "wdf.h" #include "prototypes.h" #include "hidport.h" #include "drv.h" #include "usbdi.h" #include "wdfusb.h" #include "initguid.h" 1 DriverEntry( IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath ) { WDF_DRIVER_CONFIG config; status; KdPrint((DRIVERNAME "DriverEntry\n") WDF_DRIVER_CONFIG_INIT(&config, EvtDeviceAdd status = WdfDriverCreate(DriverObject, RegistryPath, WDF_NO_OBJECT_ATTRIBUTES, &config, WDF_NO_HANDLE KdPrint((DRIVERNAME "WdfDriverCreate failed 0x%x\n", status) EvtDeviceAdd( IN WDFDRIVER Driver, IN PWDFDEVICE_INIT DeviceInit ) { WDF_OBJECT_ATTRIBUTES WDFDEVICE PDEVICE_CONTEXT WDF_PNPPOWER_EVENT_CALLBACKS WDF_TIMER_CONFIG WDFTIMER WDFQUEUE WDF_IO_QUEUE_CONFIG attributes; status; device; pdevcontext; pnppowercallbacks; timerconfig; timerhandle; queue; queueconfig; UNREFERENCED_PARAMETER(Driver PAGED_CODE( KdPrint((DRIVERNAME "EvtDeviceAdd\n") WdfFdoInitSetFilter(DeviceInit WDF_PNPPOWER_EVENT_CALLBACKS_INIT(&pnpPowerCallbacks pnppowercallbacks.evtdevicepreparehardware = EvtDevicePrepareHardware; pnppowercallbacks.evtdeviced0entry = EvtDeviceD0Entry; pnppowercallbacks.evtdeviced0exit = EvtDeviceD0Exit; WdfDeviceInitSetPnpPowerEventCallbacks(DeviceInit, &pnppowercallbacks WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&attributes, DEVICE_CONTEXT status = WdfDeviceCreate(&DeviceInit, &attributes, &device KdPrint((DRIVERNAME "WdfDeviceCreate failed status: 0x%x\n", status)

22 c:\dokumente und Einstellungen\matthias\Desktop\Atmel USB Treiber\WdfDriver\drv.cpp 2 pdevcontext = GetDeviceContext(device status = WdfDeviceCreateDeviceInterface(device, (LPGUID) &GUID_DEVINTERFACE_USBROTARY, NULL Reference String KdPrint((DRIVERNAME "WdfDeviceCreateDeviceInterface failed status: 0x%x\n", status) WDF_IO_QUEUE_CONFIG ioqueueconfig; WDF_IO_QUEUE_CONFIG_INIT_DEFAULT_QUEUE(&ioQueueConfig, WdfIoQueueDispatchParallel ioqueueconfig.evtiointernaldevicecontrol = EvtInternalDeviceControl; ioqueueconfig.evtiodevicecontrol = EvtIoDeviceControl; ioqueueconfig.evtiowrite = EvtIoWrite; ioqueueconfig.evtioread = EvtIoRead; status = WdfIoQueueCreate(device, &ioqueueconfig, WDF_NO_OBJECT_ATTRIBUTES, &queue KdPrint(("WdfIoQueueCreate failed status: 0x%x\n", status) WDF_IO_QUEUE_CONFIG_INIT(&queueConfig, WdfIoQueueDispatchManual queueconfig.powermanaged = WdfFalse; status = WdfIoQueueCreate(device, &queueconfig, WDF_NO_OBJECT_ATTRIBUTES, &pdevcontext->interruptmsgqueue KdPrint((DRIVERNAME "WdfIoQueueCreate failed status: 0x%x\n", status) WDF_TIMER_CONFIG_INIT( &timerconfig, EvtTimerFunction timerconfig.automaticserialization = FALSE; WDF_OBJECT_ATTRIBUTES_INIT(&attributes attributes.parentobject = device; status = WdfTimerCreate( &timerconfig, &attributes, &timerhandle KdPrint((DRIVERNAME "WdfTimerCreate failed status:0x%x\n", status) pdevcontext->debouncetimer = timerhandle; EvtDevicePrepareHardware( IN WDFDEVICE Device, IN WDFCMRESLIST ResourceList, IN WDFCMRESLIST ResourceListTranslated )

23 c:\dokumente und Einstellungen\matthias\Desktop\Atmel USB Treiber\WdfDriver\drv.cpp { status; PDEVICE_CONTEXT pdevicecontext; WDF_USB_DEVICE_SELECT_CONFIG_PARAMS configparams; UCHAR numberconfiguredpipes; WDF_OBJECT_ATTRIBUTES attributes; PVOID usbdevicedescriptor = NULL; 3 UNREFERENCED_PARAMETER(ResourceList UNREFERENCED_PARAMETER(ResourceListTranslated KdPrint((DRIVERNAME "EvtDevicePrepareHardware\n") pdevicecontext = GetDeviceContext(Device if (pdevicecontext->usbdevice == NULL) { status = WdfUsbTargetDeviceCreate(Device, WDF_NO_OBJECT_ATTRIBUTES, &pdevicecontext->usbdevice KdPrint(("WdfUsbTargetDeviceCreate failed 0x%x\n", status) WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_SINGLE_INTERFACE(&configParams status = WdfUsbTargetDeviceSelectConfig(pDeviceContext->UsbDevice, WDF_NO_OBJECT_ATTRIBUTES, &configparams if(!nt_success(status)) { KdPrint((DRIVERNAME "WdfUsbTargetDeviceSelectConfig failed status: 0x%x\n", status) pdevicecontext->usbinterface = configparams.types.singleinterface.configuredusbinterface; numberconfiguredpipes = configparams.types.singleinterface.numberconfiguredpipes; KdPrint((DRIVERNAME "Number of Configured Pipes: %d\n", numberconfiguredpipes) KdPrint((DRIVERNAME "WdfMemoryCreate\n") WDF_OBJECT_ATTRIBUTES_INIT(&attributes attributes.parentobject = Device; status = WdfMemoryCreate( &attributes, NonPagedPool, 0, sizeof(usb_device_descriptor), &pdevicecontext->devicedescriptor, &usbdevicedescriptor if(!nt_success(status)) { KdPrint((DRIVERNAME "WdfMemoryCreate for Device Descriptor failed status: 0x%x\n", status) WdfUsbTargetDeviceGetDeviceDescriptor( pdevicecontext->usbdevice, (PUSB_DEVICE_DESCRIPTOR)usbDeviceDescriptor /*KdPrint((DRIVERNAME "UsbTargetDeviceGetInterface\n") WdfUsbTargetDeviceGetInterface(pDeviceContext->UsbDevice, 0 */ KdPrint((DRIVERNAME "Enumerating Pipes for the USB Interface\n") WDFUSBPIPE pipe; WDF_USB_PIPE_INFORMATION pipeinfo; UCHAR index; for(index=0; index < numberconfiguredpipes; index++) {

24 c:\dokumente und Einstellungen\matthias\Desktop\Atmel USB Treiber\WdfDriver\drv.cpp WDF_USB_PIPE_INFORMATION_INIT(&pipeInfo pipe = WdfUsbInterfaceGetConfiguredPipe( pdevicecontext->usbinterface, index, PipeIndex, &pipeinfo WdfUsbTargetPipeSetNoMaximumPacketSizeCheck(pipe if(wdfusbpipetypeinterrupt == pipeinfo.pipetype && WdfUsbTargetPipeIsInEndpoint(pipe)) { KdPrint((DRIVERNAME "Interrupt In Pipe\n") pdevicecontext->interruptinpipe = pipe; if(wdfusbpipetypeinterrupt == pipeinfo.pipetype && WdfUsbTargetPipeIsOutEndpoint(pipe)) { KdPrint((DRIVERNAME "Interrupt Out Pipe\n") pdevicecontext->interruptoutpipe = pipe; Alle Pipes da? if(!(pdevicecontext->interruptinpipe && pdevicecontext->interruptoutpipe)) { status = STATUS_INVALID_DEVICE_STATE; KdPrint((DRIVERNAME "Error: Not all Pipes detected\n") 4 Continuous Reader status = ConfigContReaderForInterruptEndPoint(pDeviceContext ConfigContReaderForInterruptEndPoint( PDEVICE_CONTEXT DeviceContext ) { WDF_USB_CONTINUOUS_READER_CONFIG contreaderconfig; status = STATUS_SUCCESS; PAGED_CODE ( KdPrint((DRIVERNAME "ConfigContReaderForInterruptEndPoint Enter\n") WDF_USB_CONTINUOUS_READER_CONFIG_INIT(&contReaderConfig, EvtUsbInterruptPipeReadComplete, DeviceContext, Context 2 TransferLength status = WdfUsbTargetPipeConfigContinuousReader(DeviceContext->InterruptInPipe, &contreaderconfig KdPrint((DRIVERNAME "ConfigContReaderForInterruptEndPoint failed %x\n", status) KdPrint((DRIVERNAME "ConfigContReaderForInterruptEndPoint Exit, status:0x%x\n", status) VOID EvtUsbInterruptPipeReadComplete( WDFUSBPIPE Pipe, WDFMEMORY Buffer, size_t NumBytesTransferred, WDFCONTEXT Context ) { WDFDEVICE device; PDEVICE_CONTEXT devcontext = (PDEVICE_CONTEXT)Context; PUCHAR Degree = NULL; UCHAR CurrentDegree; UCHAR CurrentButtonState;

25 c:\dokumente und Einstellungen\matthias\Desktop\Atmel USB Treiber\WdfDriver\drv.cpp PWORD BufferContent=NULL; BOOLEAN status; WORD Content; 5 UNREFERENCED_PARAMETER(NumBytesTransferred UNREFERENCED_PARAMETER(Pipe KdPrint((DRIVERNAME "EvtUsbInterruptPipeReadComplete Enter\n") BufferContent = (PWORD) WdfMemoryGetBuffer(Buffer, NULL Content = *BufferContent; if(content!=0x0000){ KdPrint((DRIVERNAME "Degree: %X - ButtonState: %X\n", Content, devcontext->currentdegree = (UCHAR)Content; devcontext->currentbuttonstate = (UCHAR) (Content >> 8 KdPrint((DRIVERNAME "Degree: %X\n", devcontext->currentdegree) WdfTimerStart( devcontext->debouncetimer, WDF_REL_TIMEOUT_IN_MS(1) 1ms-Timer VOID CompleteReadReport( WDFDEVICE Device ) { WDFREQUEST status = STATUS_SUCCESS; request; pdevcontext = NULL; PDEVICE_CONTEXT size_t bytesreturned = 0; UCHAR Degree = 0; UCHAR ButtonState = 0; ULONG bytestocopy = 0; PINPUT_REPORT inputreport = NULL; pdevcontext = GetDeviceContext(Device KdPrint((DRIVERNAME "CompleteReadReport\n") status = WdfIoQueueRetrieveNextRequest(pDevContext->InterruptMsgQueue, &request if (NT_SUCCESS(status)) { bytestocopy = sizeof(input_report status = WdfRequestRetrieveOutputBuffer(request, bytestocopy, (PVOID*)&inputReport, &bytesreturned BufferLength KdPrint((DRIVERNAME "WdfRequestRetrieveOutputBuffer failed with status: 0x%x\n ", status) else { Degree = pdevcontext->currentdegree; ButtonState = pdevcontext->currentbuttonstate; if (Degree!=0x00) { KdPrint(("Degree: 0x%X\n", Degree) inputreport->degree=degree; inputreport->button=buttonstate; bytesreturned = bytestocopy; KdPrint((DRIVERNAME "bytesreturned: %d\n", bytesreturned) WdfRequestCompleteWithInformation(request, status, bytesreturned else if (status!= STATUS_NO_MORE_ENTRIES) { KdPrint((DRIVERNAME "WdfIoQueueRetrieveNextRequest status %08x\n", status)

26 c:\dokumente und Einstellungen\matthias\Desktop\Atmel USB Treiber\WdfDriver\drv.cpp return; 6 EvtDeviceD0Entry( IN WDFDEVICE Device, IN WDF_POWER_DEVICE_STATE PreviousState ) { PDEVICE_CONTEXT devcontext = NULL; status = STATUS_SUCCESS; UCHAR commanddata = 0; devcontext = GetDeviceContext(Device WdfIoTargetStart startet den Contineous Reader status = WdfIoTargetStart(WdfUsbTargetPipeGetIoTarget(devContext->InterruptInPipe) KdPrint((DRIVERNAME "EvtDeviceD0Entry Exit, status: 0x%x\n", status) EvtDeviceD0Exit( IN WDFDEVICE Device, IN WDF_POWER_DEVICE_STATE TargetState ) { PDEVICE_CONTEXT devcontext; PAGED_CODE( devcontext = GetDeviceContext(Device WdfIoTargetStop(WdfUsbTargetPipeGetIoTarget( devcontext->interruptinpipe), WdfIoTargetCancelSentIo KdPrint((DRIVERNAME "EvtDeviceD0Exit Exit\n") return STATUS_SUCCESS; VOID EvtIoDeviceControl( IN WDFQUEUE Queue, IN WDFREQUEST Request, IN size_t OutputBufferLength, IN size_t InputBufferLength, IN ULONG IoControlCode ) { KdPrint((DRIVERNAME "EvtIoDeviceControl\n") WDFDEVICE device; PDEVICE_CONTEXT pdevcontext; size_t bytestransferred = 0; status; WDF_USB_CONTROL_SETUP_PACKET controlsetuppacket; WDF_MEMORY_DESCRIPTOR memdesc; WDFMEMORY memory; UNREFERENCED_PARAMETER(InputBufferLength UNREFERENCED_PARAMETER(OutputBufferLength device = WdfIoQueueGetDevice(Queue pdevcontext = GetDeviceContext(device switch(iocontrolcode) { /* case IOCTL_SCANTEST: KdPrint((DRIVERNAME "IOCTLSCANTEST\n") if(inputbufferlength < sizeof(uchar)) { status = STATUS_BUFFER_OVERFLOW;

USB universeller serieller Bus

USB universeller serieller Bus USB universeller serieller Bus - USB ist ein serieller Single-Master-Bus. - USB unterstützt drei Datenübertragungsgeschwindigkeiten: - Low Speed: 1,5 MBit/s - Full-Speed: 12 MBit/s (framepulse 1ms) - High-Speed:

Mehr

Kurze Einführung zu USB

Kurze Einführung zu USB Kurze Einführung zu USB Die Kommunikation über USB soll möglichst einfach dargestellt werden. Die Bibliothek für ATMEL USB AVRs verwendet keine Standardklassen. Sie arbeitet auf der PC Seite mit der freien

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

USB in Embedded Systemen. Referat von Peter Voser Embedded Development GmbH

USB in Embedded Systemen. Referat von Peter Voser Embedded Development GmbH USB in Embedded Systemen Referat von Peter Voser Embedded Development GmbH Embedded Development GmbH Engineering and Development System Engineering Hardware/Software Co-Design Embedded Software Entwicklung

Mehr

Software Developer Kit (SDK) für das SOUNDLIGHT USBDMX-ONE Interface

Software Developer Kit (SDK) für das SOUNDLIGHT USBDMX-ONE Interface Software Developer Kit (SDK) für das SOUNDLIGHT USBDMX-ONE Interface VisualBasic.Net DELPHI (C) SOUNDLIGHT 2010 * ALLE RECHTE VORBEHALTEN * KEIN TEIL DIESER ANLEITUNG DARF OHNE SCHRIFTLICHE ZUSTIMMUNG

Mehr

USB Treiber updaten unter Windows 7/Vista

USB Treiber updaten unter Windows 7/Vista USB Treiber updaten unter Windows 7/Vista Hinweis: Für den Downloader ist momentan keine 64 Bit Version erhältlich. Der Downloader ist nur kompatibel mit 32 Bit Versionen von Windows 7/Vista. Für den Einsatz

Mehr

Bedienungsanleitung User Manual KAAN SIM III

Bedienungsanleitung User Manual KAAN SIM III Bedienungsanleitung User Manual KAAN SIM III Einführung Introduction Vielen Dank, dass Sie sich für ein KOBIL Smart Card Terminal entschieden haben. Mit dem KOBIL KAAN SIM III haben Sie ein leistungsfähiges

Mehr

www.heimetli.ch Heimetli Software AG HSWModule ... Senden und Empfangen von SMS-Meldungen mit einem GSM-Modul Version 1.01 5.

www.heimetli.ch Heimetli Software AG HSWModule ... Senden und Empfangen von SMS-Meldungen mit einem GSM-Modul Version 1.01 5. www.heimetli.ch. Heimetli Software AG HSWModule........ Senden und Empfangen von SMS-Meldungen mit einem GSM-Modul Version 1.01 5. August 2005 Inhaltsverzeichnis Was ist HSWModule?... 1 Installation...

Mehr

GmbH, Stettiner Str. 38, D-33106 Paderborn

GmbH, Stettiner Str. 38, D-33106 Paderborn Serial Device Server Der Serial Device Server konvertiert die physikalische Schnittstelle Ethernet 10BaseT zu RS232C und das Protokoll TCP/IP zu dem seriellen V24-Protokoll. Damit können auf einfachste

Mehr

Handbuch PCI Treiber-Installation

Handbuch PCI Treiber-Installation Handbuch PCI Treiber-Installation W&T Release 1.0, September 2003 09/2003 by Wiesemann & Theis GmbH Microsoft und Windows sind eingetragene Warenzeichen der Microsoft Corporation Irrtum und Änderung vorbehalten:

Mehr

Availability Manager Overview

Availability Manager Overview DECUS Symposium 2007 Availability Manager Overview Günter Kriebel Senior Consultant OpenVMS guenter.kriebel@hp.com GET CONNECTED People. Training. Technology. 2006 Hewlett-Packard Development Company,

Mehr

Softwareanforderungen für Microsoft Dynamics CRM Server 2015

Softwareanforderungen für Microsoft Dynamics CRM Server 2015 Softwareanforderungen für Microsoft Dynamics CRM Server 2015 https://technet.microsoft.com/de-de/library/hh699671.aspx Windows Server-Betriebssystem Microsoft Dynamics CRM Server 2015 kann nur auf Computern

Mehr

Effizienz im Vor-Ort-Service

Effizienz im Vor-Ort-Service Installation: Anleitung SatWork Integrierte Auftragsabwicklung & -Disposition Februar 2012 Disposition & Auftragsabwicklung Effizienz im Vor-Ort-Service Disclaimer Vertraulichkeit Der Inhalt dieses Dokuments

Mehr

Fakultät für Informatik. Bachelor-Arbeit. Entwicklung eines Windows Treibers für die Nintendo Wii Remote. Vorgelegt an der SRH Hochschule Heidelberg

Fakultät für Informatik. Bachelor-Arbeit. Entwicklung eines Windows Treibers für die Nintendo Wii Remote. Vorgelegt an der SRH Hochschule Heidelberg Fakultät für Informatik Bachelor-Arbeit Entwicklung eines Windows Treibers für die Nintendo Wii Remote Vorgelegt an der SRH Hochschule Heidelberg bei Prof. Dr. Daniel Görlich und Nick Prühs zur Erlangung

Mehr

USB-Stick (USB-Stick größer 4G. Es ist eine größere Partition notwendig als die eines 4GB Rohlings, der mit NTFS formatiert wurde)

USB-Stick (USB-Stick größer 4G. Es ist eine größere Partition notwendig als die eines 4GB Rohlings, der mit NTFS formatiert wurde) Colorfly i106 Q1 System-Installations-Tutorial Hinweise vor der Installation / Hit for preparation: 准 备 事 项 : 外 接 键 盘 ( 配 套 的 磁 吸 式 键 盘 USB 键 盘 通 过 OTG 插 发 射 器 的 无 线 键 盘 都 可 ); U 盘 ( 大 于 4G 的 空 白 U 盘,

Mehr

FOR ENGLISCH VERSION PLEASE SCROLL FORWARD SOME PAGES. THANK YOU!

FOR ENGLISCH VERSION PLEASE SCROLL FORWARD SOME PAGES. THANK YOU! FOR ENGLISCH VERSION PLEASE SCROLL FORWARD SOME PAGES. THANK YOU! HELPLINE GAMMA-SCOUT ODER : WIE BEKOMME ICH MEIN GERÄT ZUM LAUFEN? Sie haben sich für ein Strahlungsmessgerät mit PC-Anschluss entschieden.

Mehr

Parameter-Updatesoftware PF-12 Plus

Parameter-Updatesoftware PF-12 Plus Parameter-Updatesoftware PF-12 Plus Mai / May 2015 Inhalt 1. Durchführung des Parameter-Updates... 2 2. Kontakt... 6 Content 1. Performance of the parameter-update... 4 2. Contact... 6 1. Durchführung

Mehr

11: Echtzeitbetriebssystem ucos-ii

11: Echtzeitbetriebssystem ucos-ii 11: Echtzeitbetriebssystem ucos-ii Sie lernen anhand aufeinander aufbauender Übungen, welche Möglichkeiten ein Echtzeitbetriebssystem wie das ucosii bietet und wie sich damit MC-Applikationen realisieren

Mehr

Kurzanleitung um Transponder mit einem scemtec TT Reader und der Software UniDemo zu lesen

Kurzanleitung um Transponder mit einem scemtec TT Reader und der Software UniDemo zu lesen Kurzanleitung um Transponder mit einem scemtec TT Reader und der Software UniDemo zu lesen QuickStart Guide to read a transponder with a scemtec TT reader and software UniDemo Voraussetzung: - PC mit der

Mehr

Entwurf und Inbetriebnahme einer Entwicklungsplatine für PIC-Controller mit USB-Schnittstelle

Entwurf und Inbetriebnahme einer Entwicklungsplatine für PIC-Controller mit USB-Schnittstelle Entwurf und Inbetriebnahme einer Entwicklungsplatine für PIC-Controller mit USB-Schnittstelle STUDIENARBEIT für das 5. Studiensemester an der Berufsakademie Lörrach Studiengang Elektrotechnik von Boris

Mehr

Connecting Android. Externe Hardware mit dem grünen Roboter verbinden. Alexander Dahmen Dominik Helleberg

Connecting Android. Externe Hardware mit dem grünen Roboter verbinden. Alexander Dahmen Dominik Helleberg Connecting Android Externe Hardware mit dem grünen Roboter verbinden Alexander Dahmen Dominik Helleberg Speaker Dominik Helleberg Mobile Development Android / Embedded Tools http://dominik-helleberg.de/+

Mehr

Programmierung eines GIMP-Plugin

Programmierung eines GIMP-Plugin Programmierung eines GIMP-Plugin Was ist GIMP? GNU Image Manipulation Program Bildbearbeitungssoftware Bildkonvertierer Open Source Erweiterbar durch Plugins Mögliche Programmiersprachen für Plugin-Entwicklung

Mehr

BLK-2000. Quick Installation Guide. English. Deutsch

BLK-2000. Quick Installation Guide. English. Deutsch BLK-2000 Quick Installation Guide English Deutsch This guide covers only the most common situations. All detail information is described in the user s manual. English BLK-2000 Quick Installation Guide

Mehr

Fachhochschule Augsburg Fachbereich Informatik. Präsentation der Diplomarbeit. zum Thema

Fachhochschule Augsburg Fachbereich Informatik. Präsentation der Diplomarbeit. zum Thema Fachhochschule Augsburg Fachbereich Informatik Präsentation der Diplomarbeit zum Thema Kommunikation von Linux-Applikationen mit generischer Hardware über das USB-Subsystem, praktisch realisiert am Beispiel

Mehr

RS-232 SERIAL EXPRESS CARD 1-PORT. Expansion 111829

RS-232 SERIAL EXPRESS CARD 1-PORT. Expansion 111829 RS-232 SERIAL EXPRESS CARD 1-PORT Expansion 111829 1. Introduction equip RS-232 Serial Express Card works with various types of RS-232 serial devices including modems, switches, PDAs, label printers, bar

Mehr

Aber genau deshalb möchte ich Ihre Aufmehrsamkeit darauf lenken und Sie dazu animieren, der Eventualität durch geeignete Gegenmaßnahmen zu begegnen.

Aber genau deshalb möchte ich Ihre Aufmehrsamkeit darauf lenken und Sie dazu animieren, der Eventualität durch geeignete Gegenmaßnahmen zu begegnen. NetWorker - Allgemein Tip 618, Seite 1/5 Das Desaster Recovery (mmrecov) ist evtl. nicht mehr möglich, wenn der Boostrap Save Set auf einem AFTD Volume auf einem (Data Domain) CIFS Share gespeichert ist!

Mehr

Dynamische Plug-ins mit Eclipse 3. Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org)

Dynamische Plug-ins mit Eclipse 3. Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org) Dynamische Plug-ins mit Eclipse 3 Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org) Überblick Die Ausgangslage Dynamische Plug-ins Warum? Eclipse 3 Die OSGi-basierte

Mehr

Anleitung zur Schnellinstallation TFM-560X YO.13

Anleitung zur Schnellinstallation TFM-560X YO.13 Anleitung zur Schnellinstallation TFM-560X YO.13 Table of Contents Deutsch 1 1. Bevor Sie anfangen 1 2. Installation 2 Troubleshooting 6 Version 06.08.2011 1. Bevor Sie anfangen Packungsinhalt ŸTFM-560X

Mehr

EEX Kundeninformation 2002-08-30

EEX Kundeninformation 2002-08-30 EEX Kundeninformation 2002-08-30 Terminmarkt - Eurex Release 6.0; Versand der Simulations-Kits Kit-Versand: Am Freitag, 30. August 2002, versendet Eurex nach Handelsschluss die Simulations -Kits für Eurex

Mehr

SmartClass Firmware-Update Vorgehensweise

SmartClass Firmware-Update Vorgehensweise Benutzeranweisungen SmartClass Firmware-Update Vorgehensweise 2008.01 (V 1.x.x) Deutsch Please direct all enquiries to your local JDSU sales company. The addresses can be found at: www.jdsu.com/tm-contacts

Mehr

EMCO Installationsanleitung Installation instructions

EMCO Installationsanleitung Installation instructions EMCO Installationsanleitung Installation instructions Installationsanleitung Installation instructions Digitalanzeige digital display C40, FB450 L, FB600 L, EM 14D/17D/20D Ausgabe Edition A 2009-12 Deutsch...2

Mehr

USB Starter 1/85 Prof. Dr.-Ing, Hermann

USB Starter 1/85 Prof. Dr.-Ing, Hermann 1 Gerätemodell... 5 1.1 Übersicht... 5 1.2 Beschreibungshierarchie... 6 1.3 Device Descriptor... 8 1.3.1 bdeviceclass, bdevicesubclass, bdeviceprotocol... 9 1.3.2 idvendor, idproduct, bcddevice... 9 1.3.3

Mehr

Netzwerk Technologien in LabVIEW

Netzwerk Technologien in LabVIEW Netzwerk Technologien in LabVIEW von Dirk Wieprecht NI Germany Hier sind wir: Agenda Agenda Bedeutung des Ethernet für die Messtechnik Ethernet-basierende Technologien in LabVIEW Low Level- TCP/IP Objekt

Mehr

USB ZU SERIELL KONVERTER

USB ZU SERIELL KONVERTER USB ZU SERIELL KONVERTER Bedienungsanleitung (DA-70155-1) Index: A. Windows Treiber B. MAC Treiber C. Linux Treiber A. Windows Triber 1. Produkteigenschaften 2. Systemvoraussetzungen 3. Treiberinstallation

Mehr

Firmware. Dokument-Version 1

Firmware. Dokument-Version 1 Fortinet TFTP Prozess Datum 02/12/2011 11:01:00 Hersteller Modell Type(n) Fortinet Fortigate Firmware Copyright Autor Boll Engineering AG, Wettingen mp Dokument-Version 1 Fortinet TFTP Prozess Dieser Artikel

Mehr

Java Batch Der Standard für's Stapeln

Java Batch Der Standard für's Stapeln Java Batch Der Standard für's Stapeln Berlin Expert Days 18.09.2015 Dirk Weil, GEDOPLAN GmbH Dirk Weil GEDOPLAN GmbH, Bielefeld GEDOPLAN IT Consulting Konzeption und Realisierung von IT-Lösungen GEDOPLAN

Mehr

Load balancing Router with / mit DMZ

Load balancing Router with / mit DMZ ALL7000 Load balancing Router with / mit DMZ Deutsch Seite 3 English Page 10 ALL7000 Quick Installation Guide / Express Setup ALL7000 Quick Installation Guide / Express Setup - 2 - Hardware Beschreibung

Mehr

Fachreferat. EFI -BIOS Nachfolger-

Fachreferat. EFI -BIOS Nachfolger- Fachreferat EFI -BIOS Nachfolger- Kurzerläuterung Übersicht EFI - Geschichte Aufbau und Vorteile Grafische Veranschaulichung Was passiert beim direkten einschalten eines Computers? Wie kommt die Intelligenz

Mehr

SanStore: Kurzanleitung / SanStore: Quick reference guide

SanStore: Kurzanleitung / SanStore: Quick reference guide SanStore Rekorder der Serie MM, MMX, HM und HMX Datenwiedergabe und Backup Datenwiedergabe 1. Drücken Sie die Time Search-Taste auf der Fernbedienung. Hinweis: Falls Sie nach einem Administrator-Passwort

Mehr

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH Automatisierte Akzeptanztests für ios-apps Sven Günther it-agile GmbH Wer entwickelt native Apps? Wer testet die Apps selbst? Wer hat externe Testdienstleister? Wer hat Unit-Tests? Wer hat Akzeptanztests?

Mehr

AVR UART. ELV Modul: http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=28776&flv=1&berei ch=&marke=

AVR UART. ELV Modul: http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=28776&flv=1&berei ch=&marke= AVR UART 1. Einleitung In dieser Anleitung soll beispielhaft gezeigt werden, wie die serielle Kommunikation zwischen einem AVR Mikroprozessor und dem PC aufgebaut wird. Hierbei wird erst der einfache Fall

Mehr

Einführung in Mikrokontroller Benutzung mit dem Arduino Board. Ramon Hofer ICVR

Einführung in Mikrokontroller Benutzung mit dem Arduino Board. Ramon Hofer ICVR Einführung in Mikrokontroller Benutzung mit dem Arduino Board Ramon Hofer ICVR Ablauf Warum Mikrokontroller Das Arduino Board Anschliessen von Bauteilen Digitale Ein- und Ausgaben Analoge Eingaben Serielle

Mehr

p^db=`oj===pìééçêíáåñçêã~íáçå=

p^db=`oj===pìééçêíáåñçêã~íáçå= p^db=`oj===pìééçêíáåñçêã~íáçå= Error: "Could not connect to the SQL Server Instance" or "Failed to open a connection to the database." When you attempt to launch ACT! by Sage or ACT by Sage Premium for

Mehr

DC-FW400 SE. 3+1 Port IEEE 1394 FireWire TM PCI-Controller

DC-FW400 SE. 3+1 Port IEEE 1394 FireWire TM PCI-Controller DC-FW400 SE 3+1 Port IEEE 1394 FireWire TM PCI-Controller Wichtige Information zur Datensicherheit Vor der Installation und bei Änderungen der Konfiguration des DC-FW400 SE sollte unbedingt eine Datensicherung

Mehr

USB Stack - Design der Systemschnittstelle

USB Stack - Design der Systemschnittstelle USB Stack - Design der Systemschnittstelle Franz Hirschbeck sifrhirs@stud.uni-erlangen.de Inhaltsverzeichnis 1 Das Datenmodell des USB 2 1.1 Die Ziele des Standards..................... 2 1.2 Die Topologie

Mehr

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen?

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen? Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen? JULIA SCHILLING SSV EMBEDDED SYSTEMS HEISTERBERGALLEE 72 D-30453 HANNOVER WWW.SSV-EMBEDDED.DE Ethernet

Mehr

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2 ReadMe zur Installation der BRICKware for Windows, Version 6.1.2 Seiten 2-4 ReadMe on Installing BRICKware for Windows, Version 6.1.2 Pages 5/6 BRICKware for Windows ReadMe 1 1 BRICKware for Windows, Version

Mehr

1. General information... 2 2. Login... 2 3. Home... 3 4. Current applications... 3

1. General information... 2 2. Login... 2 3. Home... 3 4. Current applications... 3 User Manual for Marketing Authorisation and Lifecycle Management of Medicines Inhalt: User Manual for Marketing Authorisation and Lifecycle Management of Medicines... 1 1. General information... 2 2. Login...

Mehr

Anleitung zur Schnellinstallation TE100-P1U

Anleitung zur Schnellinstallation TE100-P1U Anleitung zur Schnellinstallation TE100-P1U V2 Table of Contents Deutsch 1 1. Bevor Sie anfangen 1 2. Installation 2 3. Konfiguration des Druckservers 3 4. Hinzufügen des Druckers zu Ihren PC-Einstellungen

Mehr

Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy

Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy 1. Schnellanleitung - Seite 2 2. Ausführlichere Anleitung - Seite 3 a) Monitor anschließen - Seite 3 Alternativer

Mehr

HiOPC Hirschmann Netzmanagement. Anforderungsformular für eine Lizenz. Order form for a license

HiOPC Hirschmann Netzmanagement. Anforderungsformular für eine Lizenz. Order form for a license HiOPC Hirschmann Netzmanagement Anforderungsformular für eine Lizenz Order form for a license Anforderungsformular für eine Lizenz Vielen Dank für Ihr Interesse an HiOPC, dem SNMP/OPC Gateway von Hirschmann

Mehr

Interface Definitionen zu E-LAB ICP-V24 Portable

Interface Definitionen zu E-LAB ICP-V24 Portable Serielles Interface PC ICP-V24 18.03.2003 Seite 1/5 Interface Definitionen zu E-LAB ICP-V24 Portable Das Interface zwischen PC und ICP-V24 besteht aus dem Hardware Teil und dem Software Teil. Hardware

Mehr

B-Speech MiniPad Anleitung zur Schnellinstallation. Anleitung zur Schnellinstallation. Seite 1 von 12

B-Speech MiniPad Anleitung zur Schnellinstallation. Anleitung zur Schnellinstallation. Seite 1 von 12 Anleitung zur Schnellinstallation Seite 1 von 12 Inhaltsverzeichnis B-Speech MiniPad Anleitung zur Schnellinstallation BK300 Anleitung zur Schnellinstalltion.. 3 Pocket PC / Microsoft Smartphone.. 4 Systemanforderungen....

Mehr

Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str. 3 07743 Jena

Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str. 3 07743 Jena Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str. 3 07743 Jena http://www.im.uni-jena.de Contents I. Learning Objectives II. III. IV. Recap

Mehr

Log Parser 2.0 HackerScan.js. Beschreibung. Anforderungen. Unterstützte Plattformen. Script-Code. Zurück zur Übersichtsseite

Log Parser 2.0 HackerScan.js. Beschreibung. Anforderungen. Unterstützte Plattformen. Script-Code. Zurück zur Übersichtsseite Zurück zur Übersichtsseite Log Parser 2.0 HackerScan.js (Engl. Originaltitel: HackerScan.js) Beschreibung Dieses Script sucht in allen IIS-Protokolldateien (IIS-, HTTPError- und UrlScan-Protokolldateien)

Mehr

Programmentwicklung ohne BlueJ

Programmentwicklung ohne BlueJ Objektorientierte Programmierung in - Eine praxisnahe Einführung mit Bluej Programmentwicklung BlueJ 1.0 Ein BlueJ-Projekt Ein BlueJ-Projekt ist der Inhalt eines Verzeichnisses. das Projektname heißt wie

Mehr

MGE Datenanbindung in GeoMedia

MGE Datenanbindung in GeoMedia TIPPS & TRICKS MGE Datenanbindung in GeoMedia 10. September 2002 / AHU INTERGRAPH (Schweiz) AG Neumattstrasse 24, CH 8953 Dietikon Tel: 043 322 46 46 Fax: 043 322 46 10 HOTLINE: Telefon: 043 322 46 00

Mehr

1.1 IPSec - Sporadische Panic

1.1 IPSec - Sporadische Panic Read Me System Software 9.1.2 Patch 2 Deutsch Version 9.1.2 Patch 2 unserer Systemsoftware ist für alle aktuellen Geräte der bintec- und elmeg-serien verfügbar. Folgende Änderungen sind vorgenommen worden:

Mehr

Mobile Device Management (MDM) Part2

Mobile Device Management (MDM) Part2 Jürg Koller CONSULTANT trueit GMBH juerg.koller@trueit.ch @juergkoller blog.trueit.ch / trueit.ch Pascal Berger CONSULTANT trueit GMBH pascal.berger@trueit.ch @bergerspascal blog.trueit.ch / trueit.ch

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

Erforderliche Änderung des Firewire (IEEE1394) Kartentreibers für die Kodak Scanner i600/i700/i1800 unter Microsoft Windows 7

Erforderliche Änderung des Firewire (IEEE1394) Kartentreibers für die Kodak Scanner i600/i700/i1800 unter Microsoft Windows 7 Hintergrund: Microsoft hat die 1394-Bus-Schnittstelle (Firewire) für Windows 7 vollständig umgeschrieben. Microsoft schreibt dazu: "Der 1394-Bus-Treiber wurde für Windows 7 umgeschrieben, um höhere Geschwindigkeiten

Mehr

German English Firmware translation for T-Sinus 154 Access Point

German English Firmware translation for T-Sinus 154 Access Point German English Firmware translation for T-Sinus 154 Access Point Konfigurationsprogramm Configuration program (english translation italic type) Dieses Programm ermöglicht Ihnen Einstellungen in Ihrem Wireless

Mehr

D A C C E ABC D ECF C E D C D A B C D EE D F E A A AE A E EE E E A DE E A AA

D A C C E ABC D ECF C E D C D A B C D EE D F E A A AE A E EE E E A DE E A AA ABCDECFCEDCD DACCE ABCDEEDFEAAAEAE EEEEADEEAAA Unterstützte Betriebssysteme: o Windows XP SP3 32 Bit o Windows Vista 32/64 Bit mit SP2 o Windows 7 32/64 Bit o MAC OS X 10.6.4 Hinweis: Bitte installieren

Mehr

Installationsanleitung PowerSDR-IQ v1.19.3.15 SV1EIA für den Betrieb mit LIMA-SDR

Installationsanleitung PowerSDR-IQ v1.19.3.15 SV1EIA für den Betrieb mit LIMA-SDR Installationsanleitung PowerSDR-IQ v1.19.3.15 SV1EIA für den Betrieb mit LIMA-SDR 02.07.2010 Bernd Wehner DL9WB Talbahnstraße 17 47137 Duisburg dl9wb@darc.de - 1 - 1. Systemvoraussetzungen Damit PowerSDR

Mehr

Configuration Manager Hardware Inventory Erweiterungen. 22.05.2014 trueit TechEvent 2014 1

Configuration Manager Hardware Inventory Erweiterungen. 22.05.2014 trueit TechEvent 2014 1 Configuration Manager Hardware Inventory Erweiterungen It s all about WMI 22.05.2014 trueit TechEvent 2014 1 Agenda Grundlagen Inventory Arten Welche Daten können inventarisiert werden Anpassungen an Default

Mehr

Einführung in die OPC-Technik

Einführung in die OPC-Technik Einführung in die OPC-Technik Was ist OPC? OPC, als Standartschnittstelle der Zukunft, steht für OLE for Process Control,und basiert auf dem Komponentenmodel der Firma Microsoft,dem Hersteller des Betriebssystems

Mehr

(Prüfungs-)Aufgaben zum Thema Scheduling

(Prüfungs-)Aufgaben zum Thema Scheduling (Prüfungs-)Aufgaben zum Thema Scheduling 1) Geben Sie die beiden wichtigsten Kriterien bei der Wahl der Größe des Quantums beim Round-Robin-Scheduling an. 2) In welchen Situationen und von welchen (Betriebssystem-)Routinen

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

English. Deutsch. niwis consulting gmbh (https://www.niwis.com), manual NSEPEM Version 1.0

English. Deutsch. niwis consulting gmbh (https://www.niwis.com), manual NSEPEM Version 1.0 English Deutsch English After a configuration change in the windows registry, you have to restart the service. Requirements: Windows XP, Windows 7, SEP 12.1x With the default settings an event is triggered

Mehr

Android + Arduino Hardware steuern mit Android. Entwicklertag Karlsruhe, 09.05.2012 Sebastian Wastl

Android + Arduino Hardware steuern mit Android. Entwicklertag Karlsruhe, 09.05.2012 Sebastian Wastl Android + Arduino Hardware steuern mit Android Entwicklertag Karlsruhe, 09.05.2012 Sebastian Wastl Arduino Opensourceprojekt Auf Basis eines 8-Bit Mikrocontroller (ATMEL ATmega) Modular aufgebaut Erweiterbar

Mehr

ORGA 6000 in Terminalserver Umgebung

ORGA 6000 in Terminalserver Umgebung ORGA 6000 in Terminalserver Umgebung Sie möchten das ORGA 6000 in einer Windows (Terminal) Server Umgebung betreiben. Wie gehen Sie dazu am besten vor? Sie haben drei Möglichkeiten das ORGA 6000 in einer

Mehr

Technical Information

Technical Information Firmware-Installation nach Einbau des DP3000-OEM-Kits Dieses Dokument beschreibt die Schritte die nach dem mechanischen Einbau des DP3000- OEM-Satzes nötig sind, um die Projektoren mit der aktuellen Firmware

Mehr

Realtime Anbindung an SAP ERP

Realtime Anbindung an SAP ERP Realtime Anbindung an SAP ERP 14.07.2014, 15:00 NovaTec Consulting GmbH Leinfelden-Echterdingen, München, Frankfurt am Main, Berlin, Jeddah / Saudi-Arabien Showcase - Push SAP Terminauftrag NovaTec 09.09.2015

Mehr

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen.

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen. 2 USBundLinuxhotplug In diesem Kapitel lernen Sie das USB-Schichtenmodell kennen. die Kernelmodule für USB-Treiber kennen. wie Sie USB-Geräte unter Linux verwenden. dashotplug-system von Linux kennen.

Mehr

LabVIEW Power Programming. Amadeo Vergés www.zuehlke.com

LabVIEW Power Programming. Amadeo Vergés www.zuehlke.com LabVIEW Power Programming Aus der Praxis für die Praxis Amadeo Vergés www.zuehlke.com LabVIEW Power Programming Aus der Praxis für die Praxis the same procedure as every year? Running gags in der LabVIEW

Mehr

Mobile Backend in der

Mobile Backend in der Mobile Backend in der Cloud Azure Mobile Services / Websites / Active Directory / Kontext Auth Back-Office Mobile Users Push Data Website DevOps Social Networks Logic Others TFS online Windows Azure Mobile

Mehr

FAQ - Häufig gestellte Fragen zur PC Software iks AQUASSOFT FAQ Frequently asked questions regarding the software iks AQUASSOFT

FAQ - Häufig gestellte Fragen zur PC Software iks AQUASSOFT FAQ Frequently asked questions regarding the software iks AQUASSOFT FAQ - Häufig gestellte Fragen zur PC Software iks AQUASSOFT FAQ Frequently asked questions regarding the software iks AQUASSOFT Mit welchen Versionen des iks Computers funktioniert AQUASSOFT? An Hand der

Mehr

Systemvoraussetzungen CustomX. Customer Relationship Management

Systemvoraussetzungen CustomX. Customer Relationship Management Systemvoraussetzungen CustomX Customer Relationship Management ThinX networked business services August 2005 Inhaltsverzeichnis ThinX networked business services Inhaltsverzeichnis 1 Einleitung 3 2 Webserver

Mehr

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG ALM mit Visual Studio Online Philip Gossweiler Noser Engineering AG Was ist Visual Studio Online? Visual Studio Online hiess bis November 2013 Team Foundation Service Kernstück von Visual Studio Online

Mehr

C R 2025 C LOSE PUSH OPEN

C R 2025 C LOSE PUSH OPEN 3V C R 2025 C LOSE PUSH OPEN ) ) ) 25 222 3V C R 2025 C LOSE PUSH OPEN 25 222 3V C R 2025 C LOSE PUSH OPEN 25 222 Den här symbolen på produkten eller i instruktionerna betyder att den elektriska

Mehr

SOMNOcheck. PC-Software für SOMNOcheck / SOMNOcheck effort PC software for SOMNOcheck / SOMNOcheck effort

SOMNOcheck. PC-Software für SOMNOcheck / SOMNOcheck effort PC software for SOMNOcheck / SOMNOcheck effort SOMNOcheck PC-Software für SOMNOcheck / SOMNOcheck effort PC software for SOMNOcheck / SOMNOcheck effort Installationsanweisung für Windows 7 (32-bit/64-bit) Installation instructions for Windows 7 (32-bit/64-bit)

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Microcontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1

Microcontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Microcontroller Kurs 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Was ist ein Microcontroller Wikipedia: A microcontroller (sometimes abbreviated µc, uc or MCU) is a small computer on a single integrated

Mehr

miditech midiface 4x4

miditech midiface 4x4 miditech midiface 4x4 4In-/4 Out USB MIDI Interface 4 x MIDI In / 4 x MIDI Out USB MIDI Interface 64 MIDI Kanäle 4 LEDs für MIDI Input 4 LEDs für MIDI Output Power LED USB Powered, USB 1, 2 und 3 kompatibel

Mehr

EEX Kundeninformation 2007-09-05

EEX Kundeninformation 2007-09-05 EEX Eurex Release 10.0: Dokumentation Windows Server 2003 auf Workstations; Windows Server 2003 Service Pack 2: Information bezüglich Support Sehr geehrte Handelsteilnehmer, Im Rahmen von Eurex Release

Mehr

Profiling und Coverage mit GNU und Bare Embedded Systems

Profiling und Coverage mit GNU und Bare Embedded Systems Profiling und Coverage mit GNU und Bare Embedded Systems Life is too short for bad tools! Prof. Erich Styger erich.styger@hslu.ch +41 41 349 33 01 Coverage und Profiling Coverage: Analyse der Testabdeckung

Mehr

shri Raw Sockets Prof. Dr. Ch. Reich

shri Raw Sockets Prof. Dr. Ch. Reich shri Raw Sockets Prof. Dr. Ch. Reich Szenario: Verschicken einer gespooften Ping-Message IP-Source-Adresse ist Adresse des Opfers Nachrichtenformat: IP-Header (normal, außer IP-Source-Address ist einstellbar)

Mehr

Technische Alternative elektronische Steuerungsgerätegesellschaft mbh. A-3872 Amaliendorf, Langestr. 124 Tel +43 (0)2862 53635 mail@ta.co.

Technische Alternative elektronische Steuerungsgerätegesellschaft mbh. A-3872 Amaliendorf, Langestr. 124 Tel +43 (0)2862 53635 mail@ta.co. Technische Alternative elektronische Steuerungsgerätegesellschaft mbh. A-3872 Amaliendorf, Langestr. 124 Tel +43 (0)2862 53635 mail@ta.co.at USB-Treiber Vers. 2.2 USB - Treiber Inhaltsverzeichnis Allgemeines...

Mehr

Virtualisierung fur Einsteiger

Virtualisierung fur Einsteiger Brochure More information from http://www.researchandmarkets.com/reports/3148674/ Virtualisierung fur Einsteiger Description: Virtualisierung von Grund auf verstehen Für die meisten Administratoren gehört

Mehr

FIRMWARE UPDATE TAPMOTION TD

FIRMWARE UPDATE TAPMOTION TD FIRMWARE UPDATE TAPMOTION TD CMP-SPF TO WHOM IT MAY CONCERN Seite 1 von 9 Inhalt / Overview 1. Firmware überprüfen und Update-file auswählen / Firmware check and selection of update file 2. Update File

Mehr

Installationsanleitung MS SQL Server 2005. für Sage 50 Ablage & Auftragsbearbeitung. Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold

Installationsanleitung MS SQL Server 2005. für Sage 50 Ablage & Auftragsbearbeitung. Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold Installationsanleitung MS SQL Server 2005 für Sage 50 Ablage & Auftragsbearbeitung Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold Inhaltsverzeichnis 1. GRUNDSÄTZLICHES... 3 2. SQLExpress Installationsanleitung

Mehr

PA-CONTROL CANopen Fehlerliste Ab Version 5.15 Ausgabe: 06/2008 Art.-Nr.:1082211. Technische Dokumentation

PA-CONTROL CANopen Fehlerliste Ab Version 5.15 Ausgabe: 06/2008 Art.-Nr.:1082211. Technische Dokumentation Technische Dokumentation PA-CONTROL CANopen Fehlerliste Ab Version 5.15 Ausgabe: 06/2008 Art.-Nr.:1082211 IEF Werner GmbH Wendelhofstr. 6 78120 Furtwangen Tel.: 07723/925-0 Fax: 07723/925-100 www.ief-werner.de

Mehr

Aufbau einer Testumgebung mit VMware Server

Aufbau einer Testumgebung mit VMware Server Aufbau einer Testumgebung mit VMware Server 1. Download des kostenlosen VMware Servers / Registrierung... 2 2. Installation der Software... 2 2.1 VMware Server Windows client package... 3 3. Einrichten

Mehr

Embedded-Linux-Seminare. Linux als Betriebssystem

Embedded-Linux-Seminare. Linux als Betriebssystem Embedded-Linux-Seminare Linux als Betriebssystem http://www.embedded-linux-seminare.de Diplom-Physiker Peter Börner Spandauer Weg 4 37085 Göttingen Tel.: 0551-7703465 Mail: info@embedded-linux-seminare.de

Mehr

Finden und Ausnutzen von Schwachstellen in USB-Host-Implementierungen

Finden und Ausnutzen von Schwachstellen in USB-Host-Implementierungen in Kooperation mit Finden und Ausnutzen von Schwachstellen in USB-Host-Implementierungen Bachelorthesis Gerhard Klostermeier 17. Oktober 2014 Betreuer (Hochschule Aalen): Prof. Dr. Christoph Karg Betreuer

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

"Programming Tool PGT-05-S for DRS61 Version 1.0 USB interface" "Programming-Tool PGT-05-S für DRS61 Version 1.0 USB Schnittstelle" I.

Programming Tool PGT-05-S for DRS61 Version 1.0 USB interface Programming-Tool PGT-05-S für DRS61 Version 1.0 USB Schnittstelle I. "Programming-Tool PGT-05-S für DRS61 Version 1.0 USB Schnittstelle" "Programming Tool PGT-05-S for DRS61 Version 1.0 USB interface" Achtung! Während des Programmiervorganges darf der Encoder nicht an die

Mehr

Ralf M. Schnell. Technical Evangelist Microsoft Deutschland GmbH

Ralf M. Schnell. Technical Evangelist Microsoft Deutschland GmbH Ralf M. Schnell Technical Evangelist Microsoft Deutschland GmbH Was ist Server Core? Warum Server Core? Was kann man damit machen? Was kann man damit nicht machen? Server Core: Installation Server Core:

Mehr