Hallo, Hab ein XMEGA128A1U und möchte einfach einen DAC betreiben. CS kommt, SCLK kommt aber das MOSI will sich einfach nicht rühren. Hab auch schon versucht das Pin einzeln auf high zu setzen, aber keine Chance. Alle anderen Pins, wo ich mir erlauben kann sie als Ausgang auf high zu setzen funktionieren. nur alle MOSI pins (auch unbenutzte an einem anderen Port) nicht. Hat jemand eine Idee? schon mal vielen Dank
Vermutlich haben die Xmega die gleiche Fallgrube, wie die AVR: /SS muß beim Master ein Output sein und zwar vor dem SPI-Init.
ja, ich weiß. Hab ich auch alles versucht. Selbst ganz ohne SPI Initialisierung und nur über die Initialisierung der Pins will er einfach nicht abheben.
Versuche im Debug-Modus NACH Reset VOR SPI-Init anzuhalten (wichtig). Dann setze im Debugger im IO-Fenster diesen Portpin auf Ausgang und versuche mit Port_x -> OUT -> Bit_y dieses Bit zu toggeln. Messe nach, ob sich was tut. Wenn nicht, hast du entweder den falschen Pin erwischt, oder du hast den Ausgangstreiber dieses Pins kaputt gemacht. Das geht leider ganz schnell. (Zudem könntest du mit richtig gepoltem Ohmmeter messen, ob der Pin als Eingang eingestellt ist.) Vergewissere dich im A1-Datenblatt unter Pinout and Pin Functions -> Alternate Pin Function Description und in der Anschlussbelegung dass du wirklich den richtigen Pin erwischt hast. PS: Du betreibst die SPI im Master-Modus?
Danke für die Hilfe. Hab das Problem gefungen. Zwei kalte Lötstellen, die nicht auf den ersten Blick zu sehen waren und zwar Pin PC5 und PD5 an beiden SPI die ich getestet hab. Da ich immer am Pin des DAC gemessen hab ist mir das nicht aufgefallen.
Tja, sowas gehört zu den "beliebtesten" Fehlern - selbst bei Profis / alte Hasen. Auch immer wieder mal beliebt: Funktionsprüfung/Messung & vergessen Betriebsspannung einzustecken ;-)
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.