Hallo zusammen, ich habe ein Problem den USB-Baustein PDIUSBD12 von Philips anzusprechen. Die Schaltung ist gemäss App-Note von Philips aufgebaut. Daten gehen über Port B, /CS geht an PA3, /WR geht an PA2, /RD geht an PA1 und A0 an PA0. Ich bekomme jedoch keine vernünftige Kommunikation mit dem Baustein hin. In den FAQ zu dem Baustein ist das Kommando beschrieben, mit dem die Chip-ID gelesen werden kann (0xFD). Das sollte 0x1012 zurückgeben. Jedoch reagiert der Baustein bei mir überhaupt nicht auf Lesebefehle und es wird nur Müll eingelesen. Ich habe den Verdacht, dass in meinen Ein- / Ausgaberoutinen noch ein Bug drin ist. Ich habe auch schon mehrfach das Timing gegen das Datenblatt gecheckt, aber ich finde keinen Fehler - vielleicht bin ich einfach schon zu lange dran. Was noch aufgefallen ist: Sobald der Write-Strobe kommt, fällt die Spannung an den Datenleitungen mit High-Pegel um ca. 1 Volt - keine Ahnung warum. Kann da vielleicht mal jemand drüber schauen oder hat eine Idee? Ich suche schon seit drei Tagen nach dem Fehler und finde jetzt gar nichts mehr... Hier noch die Definition des flag_t: typedef enum flags {Data, Command, Write = 0x2, Read = 0x4} flag_t; Viele Grüße Benjamin
So, ich habe den Fehler jetzt gefunden. Das war ein ganz blöder Fehler, ich hatte /RD und /WR vertauscht - das kann natürlich auch nicht gehen. Jetzt kann ich die Chip-ID auslesen, SoftConnect funktioniert usw. :-) Der flag_t sieht jetzt so aus: typedef enum flags {Data, Command, Write = 0x4, Read = 0x2} flag_t; Viele Grüße, Benjamin
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.