Ich bin eher unerfahren was den Umgang mit dem Oszi angeht daher eine
Frage, wie ich eine Spi Übertragung sichtbar machen kann.
Ich habe hier ein UNI-T UTD2052CEX
Zum Test sende ich über
CS=0
Write 101010101010
CS=1
also ich ziehe CS auf low und schreibe über spi und setze danach wieder
cs auf high
Mein Gedanke war nun, den Eingang Trigger der Oszis an CS zu klemmen und
über Kanal 1 das Signal zu sehen.
Dazu stelle ich im Trigger Menü
Type = Edge
Source = EXT
Slope = fall
Aber irgendwie bekomme ich kein stabiles Signal..was mache ich falsch?
Panter Schmidt schrieb:>> Zum Test sende ich über> CS=0> Write 101010101010> CS=1>> also ich ziehe CS auf low und schreibe über spi und setze danach wieder> cs auf high
Nur einmal oder in Dauerschleife?
> Mein Gedanke war nun, den Eingang Trigger der Oszis an CS zu klemmen und> über Kanal 1 das Signal zu sehen.>> Dazu stelle ich im Trigger Menü> Type = Edge> Source = EXT> Slope = fall
Könnte gehen
> Aber irgendwie bekomme ich kein stabiles Signal..was mache ich falsch?
Ein Oszi kann nur immer wiederkehrende Signale im Bild in "Echtzeit"
darstellen.
Du könntest aber das Signal speichern (wenn Dein Oszi das kann) und
danach den Kurvenverlauf beliebig gedehnt ansehen.
Old-Papa
Panter Schmidt schrieb:> Mein Gedanke war nun, den Eingang Trigger der Oszis an CS zu klemmen und> über Kanal 1 das Signal zu sehen.
Ich schließe von meinem 4-Kanal-Speicheroszi SS#, SCLK, MOSI und MISO
an, und triggere auf die fallende Flanke des SS#.
Wenn du nur 2 Kanäle hast, dann miss erst mal den SCLK gegen MOSI und
Dann den SLCK gegen MISO, ob Phase und Polarität passt. Und dann nimm
den SS# auf den einen Kanal triggere wieder auf die fallende Flanke und
miss erst den SCLK. Leg dann den SS# auf den Triggereingang und schau ob
du das selbe bild herbekommst. Dann kannst du auf SS# triggern und mit
den anderen beiden Kanälen MOSI und den Takt anschauen.
> Aber irgendwie bekomme ich kein stabiles Signal..was mache ich falsch?
Warum erwartest du da ein stabiles Signal?
Welchen Triggerpegel hast du da?
Wie sieht das Signal des SS# optisch aus?
Wie hast du den Trigger angeschlossen?
Fotos und/oder Screenshots (am besten samt Einstellungen) wären recht
hilfreich beim Raten.
Lothar M. schrieb:> Panter Schmidt schrieb:>> dem Oszi> Welches?
Hat er doch geschrieben...
> Ich schließe von meinem 4-Kanal-Speicheroszi SS#, SCLK, MOSI und MISO> an, und triggere auf die fallende Flanke des SS#.
Wenn man 4 Kanäle hat
Old-Papa
jetzt Geht.
Triggermode = normal
und der eigentliche fehler..was ich nicht verwartet hab?!?
Ich hatte die Messpitze als Trigger genommen und die zwei krokoklemmen
für das Signal...
Nehme ich nun aber die Krokoklemmen für den Trigger und sie Messpitzen
für das Signal geht es..wieso raffe ich jetzt aber nicht
Nun steht das Bild wie erwartet völlig still
Ich sende natürlich fortlaufend, sonst wird man bei der Fehlersuche ja
verrückt
Und zu der Frage wieso ich ein stabiles Signal erwarte...
Weil ich den Triggereingang benuze?!?!? Das ist doch Sinn des ganzen
"SPI schaut man sich nicht mit einen 2 Kanal Oszi an, sondern mit einem
Logic Analyzer."
so ein Quatsch,
ich kann doch Mosi und SCK sehen...
das reicht doch danach kann ich miso und sck prüfen,
Old P. schrieb:>> Ich schließe von meinem 4-Kanal-Speicheroszi SS#, SCLK, MOSI und MISO>> an, und triggere auf die fallende Flanke des SS#.> Wenn man 4 Kanäle hat
Ja, die 400€ muss man einmal investieren:
https://www.conrad.de/de/p/voltcraft-dso-1084e-digital-oszilloskop-80-mhz-4-kanal-1-gsa-s-64-kpts-8-bit-digital-speicher-1589981.html
Andere Hobbys sind teurer.
>> Welches?> Hat er doch geschrieben...
Stimmt.
Meine Erfahrungen: dieses Uni-T Oszi ist beim Triggern völliger Müll. Es
übersieht auch ab&zu mal einen Trigger. Ich habe es dann in einen
Testaufbau eingebaut, wo es sein restliches Leben lang ein simples, sich
ewig wiederholdendes Rechtecksignal anzeigen muss. Dafür ist es gut
genug.
Wenn das Unit-T schon mal auf CS triggert, dann ist das die halbe Miete.
Dein Oszi kann speichern und einmalige Events festhalten. Auf Kanal 1
legst du MOSI und auf Kanal 2 das SCK (oder CLK). Die Zeitbasis stellst
du so ein, das ein komplettes Telegramm auf den Bildschirm passt.
Wenn du dein SPI Telegramm auf Wiederholung programmierst, kannst du
auch danach die Zeitbasis einstellen, ohne auf die Speicherung
zurückzugreifen.
Ich würde dir empfehlen, ruhig mal mit allen möglichen Signalen
rumzuspielen und dich mit dem Oszi etwas vertraut zu machen.
Lothar M. schrieb:>> Ja, die 400€ muss man einmal investieren:
Aber er hat nunmal schon ein UNI-Trash dastehen.
> Stimmt.> Meine Erfahrungen: dieses Uni-T Oszi ist beim Triggern völliger Müll. Es> übersieht auch ab&zu mal einen Trigger. Ich habe es dann in einen> Testaufbau eingebaut, wo es sein restliches Leben lang ein simples, sich> ewig wiederholdendes Rechtecksignal anzeigen muss. Dafür ist es gut> genug.
Naja, kommt Zeit kommt Erfahrung (und hoffentlich Kohle) ;-)
Old-Papa
owe..dieses Forum ist echt verloren.
So viel Unsinn der hier verzapft wird.
Natürlich reicht ein Uni T für die meisten Messungen völlig aus.
Natürlich benötigt man für SPI nicht gleich einen Logikanalyser.
Für meine Zwecke würde sogar das 9€ Ebay Oszi ausreichen
Aber schön, das hier gleich jeder meint, ich sollte mir besser ein Rhode
und Schwarz kaufen um Spi oder I2C auswerten zu können.
Echte "Experten" hier...bis auf ein paar wenige erfreuliche Ausnahmen.
Danke an diese
HÄTTE ich hier ein Rhode und Schwarz kämen blöde Sprüche WI "Was will so
einer wie du eigentlich mit so einem edlen Gerät" kauf dir erst mal was
einfaches zum Üben...
ihr
seid echt der Knaller
Panter Schmidt schrieb:> "SPI schaut man sich nicht mit einen 2 Kanal Oszi an, sondern mit einem> Logic Analyzer.">>> so ein Quatsch,> ich kann doch Mosi und SCK sehen...> das reicht doch danach kann ich miso und sck prüfen,
Natürlich geht das. Aber es ist Umständlich. Ein LA für 10 Euro zeigt
dir die gesamte Kommunikation inkl. Protokollentschlüsselung direkt an.
Gerade bei SPI ist auch CS wichtig weil da viel drüber synchronisiert
wird. Nur ein Trigger drauf ist halt sehr mau.
Warum sollte man sich da mit einem 2 Kanal Oszi rumquälen? Willst du
dich für etwas bestrafen?
Ein Oszi (und gerade ein 2 Kanal) ist für die Aufgabe einfach das
falsche Werkzeug. Natürlich kannst du auch mit einer Kneifzange einen
Nagel einschlagen. Aber ich nehme dafür lieber einen Hammer.
Und niemand hebt darauf ab, dass du mehr Geld ausgeben solltest. Wie
gesagt sind kleine LAs heutzutage sehr billig und trotzdem 20 mal
hilfreicher bei dieser Aufgabe als ein Oszi.
Panter Schmidt schrieb:> Mein Gedanke war nun, den Eingang Trigger der Oszis an CS zu klemmen und> über Kanal 1 das Signal zu sehen.
Klingt gut. Wobei analoge Oszilloskope nur regelmäßig wiederholende
Signale darstellen können.
Bei digitalen wiederum kommt es stark auf deren Trigger-Fähigkeiten an.
Von einem nicht ganz schrottigem Gerät würde ich erwarten, dass es auf
den Trigger warten kann und dann genau eine Messung durchführt die so
lange läuft, bis der Speicher voll ist. In meinem Fall sind das 1024
Punkte auf der X-Achse.
Ich habe vor kurzen gelesen, dass es auch digitale Geräte gibt, die den
Trigger Eingang nur in gewissen Intervallen abfragen. Das ist für mich
kein richtiger Trigger. Ebensowenig Software-Trigger, wo schon vorher
eine kontinuierliche USB Übertragung zum PC stattfinden muss, damit er
sich per Software dann einen Teil des Datenstromes heraus fischt. Weil:
USB taugt kaum zur kontinuierlichen Übertragung - mach braucht große
Pufferspeicher an denen das oft scheitert.
Stefan ⛄ F. schrieb:> Weil:> USB taugt kaum zur kontinuierlichen Übertragung - mach braucht große> Pufferspeicher an denen das oft scheitert.
Also 24 MHz im Bulk Transfer ist mit USB 2.0 kontinuierlich möglich. Das
nutzen die Saleae und Clone ja auch.
Und bei so langsamen Signalen (<24 MHz) spielt auch ein SW Trigger keine
Rolle. Mal die Kirche im Dorf lassen.
Panter Schmidt schrieb:> Ich hatte die Messpitze als Trigger genommen und die zwei krokoklemmen> für das Signal...
Sehr seltsam. Zeige mal ein Foto davon. Wie viele Kanäle hat dein
Oszilloskop?
Cyblord -. schrieb:> Also 24 MHz im Bulk Transfer ist mit USB 2.0 kontinuierlich möglich. Das> nutzen die Saleae und Clone ja auch.
Ja, thoretisch. Paraktisch bricht das bei mir immer nach einer
Zufälligen Zeit (meist wenigen Sekunden) ab. Könnte an beschränkter
Hardware im Laptop liegen.
> Und bei so langsamen Signalen (<24 MHz) spielt auch ein SW Trigger keine> Rolle. Mal die Kirche im Dorf lassen.
Das stimmt wohl. Bei 4 MHz Abtastrate habe ich gar keine Probleme.
Bisher konnte ich die Bitrate für die Diagnose einfach entsprechend
herabsetzen. Man muss halt seine Tools kennen, dann kann man damit
arbeiten.
Cyblord -. schrieb:> Natürlich geht das. Aber es ist Umständlich. Ein LA für 10 Euro zeigt> dir die gesamte Kommunikation inkl. Protokollentschlüsselung direkt an.> Warum sollte man sich da mit einem 2 Kanal Oszi rumquälen? Willst du> dich für etwas bestrafen?
Natürlich kann man für jede Messaufgabe ein eigenes dafür optimiertes
Messgerät kaufen. Man sollte aber durchaus auch mit vorhandenen Geräten
umgehen können. Ein 2-Kanal Oszilloskop sollte man schon haben, wenn es
eine Speicherfunktion hat, macht das die Sache einfacher. Ein externer
Triggereingang braucht halbwegs "saubere" Signale. Wenn der versagt,
muss man doch meist auf einen passenden Kanal zurückgreifen und da mit
der Triggereinstellung "norm" arbeiten. (Bei "auto" versucht das
Oszilloskop, ein Triggerevent aus dem Signal abzuleiten. Das muss aber
nicht das sein, welches man wirklich für die aktuelle Messaufgabe
benötigt.)
Bei SPI muss man den Daten- und den Taktkanal aufzeichnen, um das
Datenwort zu erkennen. (Welchen Datenpin man nimmt, hängt davon ab, ob
man das gesendete oder das empfangene Datenwort sehen will.) Bei einem
Oszilloskop mit Speicher geht das mit der single-shot- Einstellung am
besten. Da triggert man auf die Taktflanke und - wenn der Abstand
zwischen den Datenetelegrammen groß genug ist - dann bekommt man gleich
das stehende Bild.
Hat man keine Speicherfunktion, klappt das nur, wenn die Datenausgabe
mit einem Hardwareschieberegister erfolgt. Werden die Takte per Software
erzeugt, kann die Dauer der einzelnen Taktzyklen schwanken, dann ist
ohne Speicherfunktion ein stehendes Bild nicht mehr möglich.
Nur wenn man eine Vorstellung hat, welche Signale man sehen will und wie
die etwa aussehen, kommt man halbwegs sicher ans Ziel. Selbst teuerste
Geräte können eigenes Denken und eigene Vorstellungskraft nicht
ersetzen. Das beste Tool sollte immer noch der eigene (Sach-)Verstand
sein.
Günni schrieb:> Natürlich kann man für jede Messaufgabe ein eigenes dafür optimiertes> Messgerät kaufen. Man sollte aber durchaus auch mit vorhandenen Geräten> umgehen können.
Also doch den Nagel mit der Kneifzange einschlagen weil man die grade
hat und man ja lernen sollte mit der umzugehen?
Das Argument ist Humbug. Das 2 Kanal Oszi ist das falsche Gerät. Das hat
mit "umgehen können" nichts zu tun.
> Klingt gut. Wobei analoge Oszilloskope nur regelmäßig wiederholende> Signale darstellen können.
Ja, aber frueher waren Softwareentwickler mal so klug bei Problemen ein
Signal einfach mehrmals auszugeben. Ich bin manchmal erstaunt was ich
frueher alles mit einem analogen Oszi schaffen konnte (teilweise sogar
nur mit 1-Kanal) wofuer man heute mindestens 4-Kanal DSO braucht.
Klar in der Firma ist es dumm sowas nicht zu haben weil es schnell
soviel Zeit spart das der Luxusoszi damit finanziert ist, aber als
Bastler zuhause geht auch sehr viel mit einfachen Mitteln.
Und gerade Anfaengern moechte ich mal von diesen billigen Logicanalyzern
abraten. Schaut zuerst mal analog auf die digitalen Signale ob sie
wirklich so zackig digital sind wie ihr glaubt. Sobald dann die erste
Uebertragung klappt kann man dann auf einen digitalen Analyzer wechseln.
.-)
Und noch was fuer den TO. SPI ist kein Protokoll! Das ist eine syncrone
serielle Uebertragung wo sich die Firmen nicht auf das Format einigen
koennen. Deshalb kann jeder Controller vier verschiedene Formate in der
Hoffnung das eines davon mit einem Slave kompatibel ist. Ich empfehle
aber wirklich sich das GENAU auf dem Oszi anzuschauen und mit dem
Datenblatt des Slaves zu vergleichen!
Olaf
drm schrieb:> das Voltcraft schreit so laut "ich bin ein Hantek" das es in den Ohren> klingelt.> Dann geht es bestimmt auch noch was billiger als beim C.
So neu ist diese Info nun auch wieder nicht. Conrad macht das seit
Jahrzehnten so.
Vor Jahren gab es hier mal einen längeren Thread von Thinman dazu, nach
diversen Modifikationen kein schlechtes Gerät.
Meins habe ich inzwischen verkauft, jetzt steht ein Rigol da. Ich finde,
Rigol und Siglent bauen inzwischen schon ganz gute Messprömpel, vor
allem für Amateure.
Old-Papa
So habe ich auch neulich die SPI-Kommunikation mit dem alten TDS210
aufgezeichnet. Das hat leider einen relativ kurzen Speicher. Wenn man
eine PLL oder DDS-Einstellung mitlesen will wird es etwas knapp.
Externer Trigger am CS und Takt und Daten auf beide Kanäle. So konnte
ich zum "reverse engineering" die verwendeten Referenzteiler und
Vergleichsfrequenz der PLL herausfinden.
Olaf schrieb:> Und noch was fuer den TO. SPI ist kein Protokoll!
Auch diese Aussage ist Unsinn. So wie jede Aussage von dir bisher.
SPI ist genau so ein Protokoll wie I2C oder 1Wire.
SPI hat 4 Modi und die sind auch genau definiert.
weiteres Problem..
Es sind wie gesagt meine ersten Versuche..
Wie darf ich diese Angaben verstehen?
wir config gesendet und gleichzeitig data gelesen?=! das kann ja nicht
sein,..,also ist gemeint das man entweder oder macht?
Ich bekomme es jetzt hin, etwas an den ADS1118 zu senden und er scheitn
laut Oszi zu antworten..allerdings sieht das bild irgendwie
speileverkehrt aus...
Die ersten 16 Bit sind offenbar das ADC Signal..jetzt auf Masse
gelegt...seltsamerweise ist das Signal aber laut Oszi 1 und nicht 0?!
> wir config gesendet und gleichzeitig data gelesen?=! das kann ja nicht> sein,..,also ist gemeint das man entweder oder macht?
Doch, das ist genauso. Immer wenn du ein Bit in den AD-Wandler
reintaktest kommt gleichzeitig ein anderes Bit raus. Selbst wenn man nur
etwas reinschreiben will kommt gleichzeitig ein anderes Wort raus, aber
man muss es ja nicht verwenden. Und wenn man etwas lesen will muss man
dazu auch etwas reinschreiben.
http://elm-chan.org/docs/spi_e.html
Kuck mal hier. Das siehst du wie das Register aufgebaut ist.
Olaf
Willste nicht wissen schrieb:> die man im Supermarkt in der Ramschkiste findet:> https://www.real.de/product/344725290/?msclkid=e171be1a6bf81f2b7d27e0c5355499bd&utm_term=4583108071657922&utm_content=%20%231%20Ad%20group
Rofl, +1 für den Link, der Text dazu ist der Hammer.
"8 Kanaele koennen gleichzeitig erfasst werden, um Signale zu
analysieren, z. B. UART.
Die Logik fuer jeden Kanal Abtastgeschwindigkeit bis zu 24M / s.
Allgemeine Anwendungen um 10 Millionen, genug, um mit einer Vielzahl von
Anlaessen fertig zu werden.
Grosse menge probenahme, stark und leistungsstark.
Ausgestattet mit ueberdruckschutz fuer sicheres Arbeiten.
Das Hochladen von Daten in Echtzeit mit Tiefenerfassung ist alles andere
als praktisch."
Das wertvollste auf der Seite ist der Link zu den USB Tassenwärmern.
Logikanalyzer sind super - nachdem man sich mit dem Oszi davon überzeugt
hat, dass die Signale sauber genug über die Leitungen gehen.
Rudolph R. schrieb:> Logikanalyzer sind super - nachdem man sich mit dem Oszi davon überzeugt> hat, dass die Signale sauber genug über die Leitungen gehen.
Gratulation. Du hast verstanden warum es beide Geräteklassen auf der
Welt gibt.
Panter Schmidt schrieb:> wir config gesendet und gleichzeitig data gelesen?=! das kann ja nicht> sein,..,also ist gemeint das man entweder oder macht?
So ist das bei SPI. Denn das sind einfach nur hintereinandergeschaltete
Schieberegister:
http://www.lothar-miller.de/s9y/categories/17-SPI
Und normalerweise hat das, was man hereinkommt am ehesten etwas damit zu
tun, was man zuvor hinausgeschoben hat. Wenn man also beim jetztigen
Transfer einen Befehl rausschiebt, bekommt man beim nächsten Transfer
die Antwort.
Rudolph R. schrieb:> Rofl, +1 für den Link, der Text dazu ist der Hammer.
Noch ein real-elektronik-Schmankerl ;-) :
https://www.real.de/product/344336546/
Zitat:
"
Wird für die sekundäre Entwicklung auf der Grundlage dieses Kits, zum
Beispiel, kann es zu Millivoltmeter, Datenlogger geändert werden.
Kommen Sie mit Anweisungen, einfach zu installieren und zu betreiben.
Erhältlich steigende oder Flankentrigger fallen.
Beobachtbare vorherige Wellenform vor Trigger (negative Verzögerung).
Wellenform-Speicherfunktion: wird die Wellenform nach dem Ausschalten
nicht verlieren.
Kurzschluss- und Leerlauferkennung: Der Benutzer kann helfen, das Löten
Fehler herauszufinden. "
Rudolph R. schrieb:> Logikanalyzer sind super - nachdem man sich mit dem Oszi davon überzeugt> hat, dass die Signale sauber genug über die Leitungen gehen.
Und unsaubere Sicgnale würde ich erwarten, wenn da einer mit Klemmen
herumfuhrwerkt. Denn die Signale können zwar "sauber" über die Leitung
gehen, wenn man aber den Tastkopf ungünstig anschließt (ohne Masse oder
mit langen Masseleitungen oder Masse sonstwoher oder nur 1 von 3
Tastköpfen Tastkopf an Masse usw...), kann trotzdem böse Artefakte
sehen.
Panter Schmidt schrieb:> Ich bekomme es jetzt hin, etwas an den ADS1118 zu senden und er scheitn> laut Oszi zu antworten..allerdings sieht das bild irgendwie> speileverkehrt aus...
Um mit dem ADC zu kommunizieren, sind 3 Leitungen plus CS nötig. Auf
DOUT schickt der ADC immer nur die Analogwerte raus, DOUT sollte mit
MISO des MC verbunden sein. Zum Konfigurieren des ADC (und des Startens
einer Wandlung) schribt man auf DIN, welches mit MOSI des MC verbunden
sein sollte.
Du kannst also mit 2 Kanälen am OSZI nur CLK und eines der Signale
(MISO oder MOSI) betrachten.
Cyblord -. schrieb:> Das Argument ist Humbug. Das 2 Kanal Oszi ist das falsche Gerät. Das hat> mit "umgehen können" nichts zu tun.
Wer schon mit dem Oszilloskop überfordert ist, ist das noch mehr mit dem
Logikanalysator. Da merkt man weder, wenn die Übernahmeflanken ungünstig
liegen und man deshalb ein Bit durch Rauschen oder Ripple auf den
Taktflanken mehrfach erkannt wird. Auch Einbrüche innerhalb der Daten,
die zu Fehlfunktionen führen können, erkennt ein einfacher
Logikanalysator (im Text waren 10,- Euro genannt) einfach nicht. Ein
Oszilloskop ist (im Gegensatz zur Zange zum Einschlagen von Nägeln) ein
geeignetes Werkzeug und zeigt außer den Pegeln auch gleich Schwächen der
Signale auf. Wenn man häufiger Datentelegramme "mitlesen" will, ist
natürlich ein Logikanalysator das bessere Werkzeug, aber dann nicht
einer für 10,- Euro.
Panter Schmidt schrieb:> Wie darf ich diese Angaben verstehen?
Vielleicht solltest du dich erst einmal damit auseinander setzen, wie
diese Schnittstelle bei deinen Komponenten genutzt wird.
Bei SPI wird immer gleichzeitig gesendet und empfangen, denn du hast ja
nur eine gemeinsame Taktleitung. Oft werden aber dummy Daten übertragen,
um Lücken zu füllen.
Günni schrieb:> Wer schon mit dem Oszilloskop überfordert ist, ist das noch mehr mit dem> Logikanalysator.
Das kommt sehr auf die Baustelle an. Ein Schraubendreher nützt dir
überhaupt nichts, wenn es um das Einschlagen von Nägeln geht.
Panter Schmidt schrieb:> jetzt Geht.> Triggermode = normal> und der eigentliche fehler..was ich nicht verwartet hab?!?> Ich hatte die Messpitze als Trigger genommen und die zwei krokoklemmen> für das Signal...> Nehme ich nun aber die Krokoklemmen für den Trigger und sie Messpitzen> für das Signal geht es..wieso raffe ich jetzt aber nicht
Mal ganz blöd gefragt:
Was meinst du mit Messspitze und Krokoklemme?
Meinst du mit Krokoklemme die klemme mit dem kurzem Kabel am Tastkopf?
Das Ding ist Masse und nicht für Signale.
Günni schrieb:> Wer schon mit dem Oszilloskop überfordert ist, ist das noch mehr mit dem> Logikanalysator.
Der einzige der hier überfordert ist bist du.
Panter Schmidt schrieb:> Aber schön, das hier gleich jeder meint, ich sollte mir besser ein Rhode> und Schwarz kaufen um Spi oder I2C auswerten zu können.
Hat niemand gesagt, für deine Komplexe kann hier keiner etwas.
Außerdem heißt es Rohde & Schwarz, wieso schreiben das so viele
falsch?
Im Ernst, man schreibt es, wie es ausgesprochen wird.
Panter Schmidt schrieb:> ich kann doch Mosi und SCK sehen...> das reicht doch danach kann ich miso und sck prüfen,
Ach
Panter Schmidt schrieb:> Ich bekomme es jetzt hin, etwas an den ADS1118 zu senden und er scheitn> laut Oszi zu antworten..allerdings sieht das bild irgendwie> speileverkehrt aus...
Taktpolarität und Phase scheinen bei dir zu stimmen (Datenblatt 7.7
Figure 1). Bei SPI ist aber die Reihenfolge der Datenbits nicht
festgelegt, das ist also einstellbar. Bei Dir sieht es nach "MSB first"
(Achtung Bit, nicht Byte!) aus, der ADC will "LSB first". Davon
Abgesehen zeigt das Oszi-Bild vermutlich nicht
SPI1_Write(%11000010);
SPI1_Write(%00001010);
sondern
SPI1_Write(%01000010); <<<<==== kommt das woanders bei dir auch vor?
SPI1_Write(%00001010);
Poste mal deinen Code zur Initialisierung (und etwas Info zum
verwendeten Controller).
> Bei SPI ist aber die Reihenfolge der Datenbits nicht> festgelegt, das ist also einstellbar.
Ach? [Augenbraue heb] wie kann das denn sein? Irgendein Wichtigtuer hat
mir doch hier erklaert SPI waere ein genauso definierter Bus wie I2C und
1Wire. :-D
Ich kann nur empfehlen sich das genau auf dem Oszi anzuschauen und Bit
fuer bit mit dem Datenblatt des ICs zu vergleichen. Ausserdem mindestens
einmal richtig reinzoomen. Es gibt falsche Einstellungen wo flanken
gleichzeitig kommen die etwas zeitlichen Versatz haben sollten. Dann
kann es passieren das es nur manchmal geht, oder bei bestimmten
Taktraten.
Es schadet auch nichts wenn das IC ein Register hat dessen Defaultwerte
im Datenblatt stehen und die man beim auslesen plausibel wiederfindet.
Sobald man das einmal geschafft hat ist das schlimmste ueberstanden.
Olaf
https://de.wikipedia.org/wiki/Serial_Peripheral_Interface#Protokollablauf_und_Einstellm%C3%B6glichkeiten
es gibt vier verschiedene Modes, dazu die Bitreihenfolge MSB oder LSB
zuerst und die Wortlänge.
"weil die Spezifikation für den SPI-Bus in vielen Eigenschaften nicht
festgelegt ist, wodurch verschiedene, zueinander inkompatible Geräte
existieren."
Mit diesen Einschränkungen kann man es "Protokoll" nennen.
Bei meiner Erstinbetriebnahme eines DDS mit Raspi und Python war ich
froh, als mein Programm wenigstens mit einem DDS-Pin wackeln konnte. Da
wußte ich, dass die Software läuft, "es lebt!"