Code für Simple-SPI?

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
xo-hom
Posts: 1
Joined: Mon Jan 06, 2014 5:04 pm

Code für Simple-SPI?

Post by xo-hom »

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!
User avatar
Christoph Jung
Posts: 670
Joined: Sun Oct 08, 2006 3:43 pm
Location: Germany / Berlin
Contact:

Re: Code für Simple-SPI?

Post by Christoph Jung »

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:

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

Abteilung: Softwareentwicklung
Folge uns auf Twitter
Follow us on twitter
Post Reply