Hallo, ich habe mir ein OSZI ausgeborgt, weil die Schaltung nicht funktionieren wollte. Nun musste ich feststellen, dass das MOSI-Signal nach Übertragung eines Worts, also im Ruhezustand, auf den high-Zustand wechselt. Normalerweise sollte zwischen den Übertragungen der Low-Zustand anliegen. Ich konnte weder im Datenblatt, noch im Schaltplan - Pullup - etwas finden. (Ich verwende das OLIMEX Board hier aus dem Shop). Jemand eine Ahnung wie sowas zustande kommen kann? Ich tippe auf Software/Konfigurations-Problem im ARM. Grüße Mario
Die MOSI Leitung behält den Zustand des zuletzt übertragenen Bits bei. Einen Ruhezustand gibt es nur bei SCK. Wenn es immer 0 sein muß nach der Übertragung dann schalte den Pin anschließend im Pin connect block auf den GPIO Controller.
Danke für den Tipp! Ich übertrage 16Bit Wörter MSB-first mit folgendem Inhalt: 0x0F20 und abwechselnd 0x0f40. Also jeweils "0" am Ende. Wenn der ARM tatsächlich das letzte Bit "stehen" läßt klingt das doch eigenartig. Noch jemand welche Ideen woran das liegen könnte? Grüße Mario
Pull Up Widerstand irgendwo? Evtl intern? Im prinzip ist der Pegel der MOSI Leitung aber sowieso vollkommen egal, solange CS nicht anliegt
@Matthias, hab ich gecheckt. Lt. Schaltplan und lt. ARM Datenblatt gibts nirgends Pullup's. Das Problem mit dem MOSI-zustand ist, dass ich einen exotischen Chip ansteuere. Der hat kein CS, dafür aber erwartet er ein low-Signal zwischen den Übertragungen :(. Der Grund für die SPI-Übertragung ist, dass ich (ohne Oszi) keine vernünftige "delay/sleep/wait"-Funktion gefunden hab um 250kbps Übertragungsgeschwindigkeit einzuhalten. Also wenn jemand so eine Funktion im GCC kennt (ohne gleich Timer-Register zu verbraten), wäre eine alternative für mich. ansonsten wird wohl die Lösung von SPI-user zum Zug kommen. Mario
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.