Ich betreibe einen Avago ADNS9800 am IOWarrior56-DG und kann diesen mit dem Dienstprogramm Simple-SPI auch ansprechen. Leider weiss ich nicht, wie ich die Eingaben in Simple-SPI in die IowKitWrite / IowKitRead Befehle umsetzen muss.
Wäre es evtl. möglich den Code von Simple-SPI zu veröffentlichen oder weiss jemand wie man die Angaben wie insbesondere "CPOL=1/CPHA=1" und "DRDY ignore" und den "Write"-Knopf in entsprechende Befehle für die iowkit.dll umsetzt? Welche Bytes muss ich in welche Pipe schreiben?
Danke für die Hilfe!
Code für Simple-SPI?
Moderator: Guido Körber
- Christoph Jung
- Posts: 670
- Joined: Sun Oct 08, 2006 3:43 pm
- Location: Germany / Berlin
- Contact:
Re: Code für Simple-SPI?
Nein der Code des Simple-SPI ist keines unserer Beispiele und wird daher nicht veröffentlicht.
Im SDK ist ein Beispiel zum SPI-Mode hinterlegt und eine Beschreibung zu CPOL und CPHA ist im Datenblatt vorhande sowie eine erklärung zu den Flags.
Auch die Verwendung der Bytes ist im Datenblatt beschrieben.
Im Groben funktionert das Schreiben/Lesen so:
Im SDK ist ein Beispiel zum SPI-Mode hinterlegt und eine Beschreibung zu CPOL und CPHA ist im Datenblatt vorhande sowie eine erklärung zu den Flags.
Auch die Verwendung der Bytes ist im Datenblatt beschrieben.
Im Groben funktionert das Schreiben/Lesen so:
Code: Select all
IOWKIT56_SPECIAL_REPORT rep;
memset(&m_rep56, 0, IOWKIT56_SPECIAL_REPORT_SIZE);
rep.ReportID = 0x09; //SPI-Mode
rep.Bytes[0] = <ANZAHL DER BYTES>; //Count
rep.Bytes[1] = 0x00; //flags
rep.Bytes[2] = 0x00; //data
rep.Bytes[3] = 0x00; //data
rep.Bytes[4] = 0x00; //data
rep.Bytes...... usw
IowKitWrite(iowHandle, IOW_PIPE_SPECIAL_MODE, (char *) &rep, IOWKIT56_SPECIAL_REPORT_SIZE); //Write
IowKitRead(iowHandle, IOW_PIPE_SPECIAL_MODE, (char *) &rep, IOWKIT56_SPECIAL_REPORT_SIZE); //Read Back