Forum: Mikrocontroller und Digitale Elektronik SPI Debugger / Logger gesucht


von Dirk (Gast)


Lesenswert?

Hallo.
Ich suche einen SPI Debugger/Logger mit kompletter Dekodierung (Adresse 
...) und Anzeige der Daten (Binär und Hex).
Habe schon danach gesucht aber nocht nichts gefunden.
Das ganze sollte auf einem PC laufen, mit wenig Hardware!

Habe mir auch schon überlegt so was selber zu bauen, aber da ich nur 
einmal die Komunikation zwischen 2 Systemen Analysieren muss ist es mir 
zu viel aufwand.

Hat hier jemand von euch einen Tip?

Viele Grüsse.

von TheMason (Gast)


Lesenswert?

Am einfachsten ist es sicherlich einen kleinen uC dafür zu nehmen.
Es wäre auch noch möglich ein/zwei Schieberegister zu nehmen diese an 
den Parallelport klemmen und per EPP auszulesen.
Du wirst nur dann ein Problem kriegen wenn die SPI-Kommunikation recht 
flott (muß noch nicht mal dauerhaft sein, es reichen 2-3 Bytes die per 
SPI mit x MHz rausgeclockt werden) ist und dein PC nicht mitkriegt das 
da ein paar Bytes rein bzw durchgerauscht sind.
Von daher ist es empfehlenswert einen uC zu nehmen, vor allem weil der 
sein RAM dann ja als Puffer verwenden kann und so nix verloren geht ...

von Dirk (Gast)


Lesenswert?

Hi,

dafür nimmt man einen Logic Analyzer wie z.B. 
http://www.pctestinstruments.com/

Gruß,

Dirk

von TheMason (Gast)


Lesenswert?

oder so ...

von Daniel M. (usul27)


Lesenswert?

Ich denke auch, wer so etwas oft braucht, ist mit einem Logicanalyzer 
besser bedient, da dieser einfach universeller einsetzbar ist. Zum o.g. 
LA gibt es hier im Forum auch einen längeren Thread.

von Dirk (Gast)


Lesenswert?

Nun der Logic Analyzer ist mit Sicherheit sein Geld wert für jemanden 
der das Ding öffter braucht. Leider will ich aber nur einmal den 
Datenverker analysieren und dann würde er in der Ecke liegen.

Die Taktrate liegt bei ca. 500KHz. Also MHz Signale habe ich noch nicht 
gemessen.

Also wenn es keine andere Alternative gibt, muss ich wohl oder übel doch 
mal einen uC da dran hängen und die Daten über die SIO zum PC senden. 
Das sollte dann hoffentlich die einfachste Methode sein. Werde mal sehen 
was ich da an uC so finde, ein Mega 32 sollte da ja reichen.

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

fertige Schaltung für sowas (Mega8 + FT245BM): www.matwei.de -> USBisp

Ich hab aber keine Platinen mehr. Nur so als Ideeengeber.

Matthias

von Dirk (Gast)


Lesenswert?

Hi Matthias.
Genau so hatte ich mir das vorgestellt. Werde wie ich schon geschrieben 
hatte wohl die RS232 Version aufbauen.
Die USB Version ist aber auch nicht schlecht. Muss ich mir mal 
überlegen, ob ich mir die nicht auch mal baue.

Kann man eingentlich ohne Umprogramierung die SPI mit dem MK-2 oder dem 
AVR-ISP Programmer abhören?
Dann bräuchte ich mir nicht mal was bauen.

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

Nein. Das Abhören einer SPI Verbindung mit einem AVRisp ist nicht 
möglich.

Matthias

von Dirk (Gast)


Lesenswert?

Habe heute auch noch festgestellt das die Sache doch viel kompilizierter 
ist als ich dachte. Ich muss ja 2 * die SPI Leitung mit schneiden (hin 
und rückweg). Und das Funktioniert so weit mir bekannt nicht mit einem 
uC. Nun kann ich mir zwar 2 aufbauen und versuchen die Daten passent 
zueinander wieder ausgeben oder ich besorge mir doch einen passenden 
Logic Analyzer.
Werde mir noch mal alle infrage kommenden ansehen, ob die auch genau das 
erforderliche können.

von TheMason (Gast)


Lesenswert?

oder nehme einen uC der 2x spi hat (z.b. MSP430). da hast du dann nur 
das problem das (speziell beim msp) du alle seriellen schnittstellen 
belegt hast (der hat 2 USARTs die wahlweise als SPI,RS232 oder gar I2C 
konfiguriert werden können, aber eben immer nur eins von 3 pro USART).
ansonsten nimm einen CPLD der dir die daten einfängt und an einen uC 
weitergibt der diese wiederum zwischenspeichert und auf die serielle 
ausgibt.

gruß
rene

von Dirk (Gast)


Lesenswert?

Eigentlich sollte das keine Diplom oder Doktorarbeit werden.
Und mit CPLD & FPGA kenne ich mich nicht aus.
Das ist alles viel zu umständlich.
Da werfe ich dann doch lieber 400€ raus und kaufe mir einen Logic 
Analyzer.

Habe grad mal nach gesehen was ich noch so an Porzessoren habe und 
ausser Mega32, Mega48, 8052 und M16C62 ist nichts da. Der M16C hätte 
zwar 5 * SIO aber anscheinend kann der kein SPI. Zu mindestens steht 
nichts im Datenblatt.

von A.K. (Gast)


Lesenswert?

Alternative ohne Verwendung von 2 Hardware-SPIs:

2x 74HC595 am externen Bus des Mega162. Einer für MISO einer für MOSI.
SCK zusätzlich an einen Timer-Eingang zum Bitzählen. OCx-Ausgang von 
diesem Timer an den "Latch" Anschluss der 595-er. Damit sollte man auch 
bei ein paar MHz SPI-Takt noch Tracen können ohne Daten zu verlieren.

von Dirk (Gast)


Lesenswert?

Hi.
Das ist glaube ich die perfekte Lösung für mein Problem.
An Schieberegister habe ich gar nicht gedacht.
Und ist so was von einfach zu bauen.
Auch der Softwareaufwand ist so auch nur eine Kleinigkeit.
Dann vergesse ich mal ganz schnell wieder alle anderen Lösungen.

Danke, werden ich aufbauen und so ein setzen.

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
Noch kein Account? Hier anmelden.