Moin,
ich habe einen SPI Bus an dem 10 Teilnehmer mit jeweils ca. 2 SPI
Bausteinen hängen. Die Datenleitung SDO und SDI sollten unkritisch sein,
da diese vom µC aus starten und von Teilnehmer zu Teilnehmer kaskadiert
wird, also ca 30cm zwischen jeeils einem Teilnehmer.
Ich gehe nicht davon aus, hier etwas treiben zu müssen. Der Takt kann
sehr langsam gewählt werden (500khz z.b.).
Der SPI Clock hängt nun aber sternförmig am µC Ausgang zu den
Teilnehmern, also 10x 15cm leitungen. Meine Frage ist, was ich an
Reflexionen zu erwarten habe und ob ich das ganze treiben sollte? Ich
habe einen Rs485 Treiber hier, ich denke sowas kann ich da verwenden
oder?
mfg
Nils
Hi, Nils,
>> Der SPI Clock hängt nun aber sternförmig am µC Ausgang zu den> Teilnehmern, also 10x 15cm leitungen. Meine Frage ist, was ich an> Reflexionen zu erwarten habe
Gar nichts. Rechne einfach die Lichtgeschwindigkeit für die Strecke aus.
Die Frage ist eher, ob der Treiber für den Takt die Kapazitäten schnell
genug umladen kann.
Beim Atmega sehe ich keine Problem. Aber Sicherheit tut gut, bevor man
Platinen ätzen lässt und vielleicht viel Arbeit wiederholen muss.
Simuliere Deinen Aufbau einfach mit einem STK500 oder einem ähnlichen
Bord und schau Dir den Verlauf der Spannungen am Ziel an.
Ciao
Wolfgang Horn
Wolfgang Horn schrieb:
...
Eine komplett unbrauchbare Antwort...
> Die Frage ist eher, ob der Treiber für den Takt die Kapazitäten schnell> genug umladen kann.
???
Unsinn.
> Gar nichts.
soso...
> Rechne einfach die Lichtgeschwindigkeit für die Strecke aus.
aha... Meinst du vielleicht die Wellenlänge in Relation zur
Leitungslänge?
> Simuliere Deinen Aufbau einfach mit einem STK500 oder einem ähnlichen> Bord und schau Dir den Verlauf der Spannungen am Ziel an.
Das STK500 ist für einen Test ("Simulation" ist hier Käse) genausowenig
geeignet, weil das eigene Pintreiber mit Pegelanpassung hat.
Nils schrieb:> Ich gehe nicht davon aus, hier etwas treiben zu müssen.
Ein Treiber ist Unsinn. Leg die Leitung und fertig.
Wenn du es päpstlicher als der Papst machen willst, dann legst du die
Leitung als Kette aus, setzt eine Anpassung der Leitung mit einem
Längswiderstand am AVR und einen Abschlusswiderstand am Kettenende. Nimm
als Hausnummer 27Ohm Längswiderstand und 27k als Abschluss.
Siehe Wellenwiderstand.
> Der Takt kann> sehr langsam gewählt werden (500khz z.b.).
Der Takt ist irrelevant. Wichtig sind die Anstiegszeiten und die daraus
resultierenden Spektren.
@ Nils (Gast)
>ich habe einen SPI Bus an dem 10 Teilnehmer mit jeweils ca. 2 SPI>Bausteinen hängen.
??? Warum 2 pro Teilnehmer?
> Die Datenleitung SDO und SDI sollten unkritisch sein,
Jain.
>da diese vom µC aus starten und von Teilnehmer zu Teilnehmer kaskadiert>wird, also ca 30cm zwischen jeeils einem Teilnehmer.
Hmm.
>Ich gehe nicht davon aus, hier etwas treiben zu müssen.
Irrtum.
> Der Takt kann sehr langsam gewählt werden (500khz z.b.).
Ist zweitrangig.
>Der SPI Clock hängt nun aber sternförmig am µC Ausgang zu den>Teilnehmern, also 10x 15cm leitungen.
Schlecht.
>Meine Frage ist, was ich an>Reflexionen zu erwarten habe und ob ich das ganze treiben sollte?
Treiben tut man es immer, die Frage ist nur womit (dumme Kommentare
gefällig?)
Direkt mit dem Mikrocontroller oder mit einem zusätzlichen Treiber.
> Ich>habe einen Rs485 Treiber hier, ich denke sowas kann ich da verwenden>oder?
Nö.
@ Michael H. (michael_h45)
>Wolfgang Horn schrieb:>...>Eine komplett unbrauchbare Antwort...
Nix neues.
>> Rechne einfach die Lichtgeschwindigkeit für die Strecke aus.
Muss man nicht, die ist konstant, im ganzen Universum, für jeden
beliebig bewegten und beschleunigten Beobachter. Einstein sei Dank ;-)
>> Ich gehe nicht davon aus, hier etwas treiben zu müssen.>Ein Treiber ist Unsinn. Leg die Leitung und fertig.
Nein. 10x30cm ist schon ne ziemliche Hausnummer. Aus der Beschreibung
schließe ich, dass hier was zentral-kreisförmiges vorliegt, ich tippe
mal auf ein größeres LED-Projekt ;-)
>Wenn du es päpstlicher als der Papst machen willst, dann legst du die>Leitung als Kette aus, setzt eine Anpassung der Leitung mit einem>Längswiderstand am AVR und einen Abschlusswiderstand am Kettenende.
Nö. Er und auh du liest besser mal den Artikel Wellenwiderstand und
stellt fest, dass für eine Taktleitung mit mehreren Empfängern
(Multidrop) eine Serienterminierung ins Auge geht.
> Nimm als Hausnummer 27Ohm Längswiderstand und 27k als Abschluss.
Beides Unsinn. Ersteres siehe oben, zweiteres ist meilenweit vom
Wellenwiderstand entfernt, kann man sich schenken. Sinnvoll ist bei
einer linear durchgehenden Taktleitung eine Terminierung am Ende, AC
oder Thevenin.
Hi, Michael,
> Eine komplett unbrauchbare Antwort...
Bei solch einer brutalen Antwort kann es nur heißen - auf einen groben
Klotz gehört ein grober Keil.
>> Die Frage ist eher, ob der Treiber für den Takt die Kapazitäten schnell>> genug umladen kann.> ???> Unsinn.
Mein Rat war und ist richtig, Dein Einwand war falsch, inkompetent und
zum Nachteil des Fragers.
Begründung:
Die SPI-Übertragung soll fehlerfrei sein bei einer Taktrate von 500 kHz.
Das entspricht einer Wellenlänge von 600 Metern. Reflexionen laut
Leitungstheorie werden erst gefährlich ab etwa 1/10 Wellenlänge.
Fehlerfreiheit bedeutet aber auch: Die Flankenwechsel auf der
Taktleitung müssen in allen SPI-Devices innerhalb der Taktphase
abgeschlossen sein - also rechtzeitig und steil genug. Die
Ausgangsimpedanz des Takttreibers ("SCK" beim Atmega) muss also die
Leitungskapazität gegen Masse schnell genug umladen. Je größer die
Leitungskapazität, desto flacher und verschliffener die Flankenwechsel
an den SPI-Devices.
Fehlerfreiheit bedeutet auch Sicherheit gegen Einstrahlung. Auch hier
muss die Impedanz von SCK klein genug sein. Meiner Erfahrung nach ist
sie das.
Zusatzinformation für Nils: Auf den RS-485-Treiber kannst Du verzichten,
wie auch auf die von Michael vorgeschlagene Impedanzanpassung der
Leitung.
>> Simuliere Deinen Aufbau einfach mit einem STK500 oder einem ähnlichen>> Bord und schau Dir den Verlauf der Spannungen am Ziel an.> Das STK500 ist für einen Test ("Simulation" ist hier Käse) genausowenig> geeignet, weil das eigene Pintreiber mit Pegelanpassung hat.
Für die Simulation genügt die Verdrahtung mit dem SCK-Pin des Atmega.
Tschüss
Wolfgang Horn
Ich habe mal eine Zeichnung angewhängt, wie lange die Spi Leitungen sind
und wie sie so in etwa verlaufen werden.
Die Meinungen gehen hier ja auseiannder.
@Wolfgang Horn (Firma: AknF) (wolfgang_horn)
>> Eine komplett unbrauchbare Antwort...>Bei solch einer brutalen Antwort
Mensch bis du weich. Inddor-Wattebällchenwerfer?
>Mein Rat war und ist richtig, Dein Einwand war falsch, inkompetent und>zum Nachteil des Fragers.
Ohh, der Herr spiel gleich mal selber den obersten Richter. Schau an,
schau an!
>Begründung:>Die SPI-Übertragung soll fehlerfrei sein bei einer Taktrate von 500 kHz.>Das entspricht einer Wellenlänge von 600 Metern. Reflexionen laut>Leitungstheorie werden erst gefährlich ab etwa 1/10 Wellenlänge.
Tja mei lieber Woflgang, nicht nur im Gebiet der Parapsychologie ist
dein Wissen oberflächlich, auch bei HF. Die TaktFREQUENZ ist in erster
Linie egal, die FLANKENSTEILHEIT ist der Knackpunkt. Lies den Artikel
Wellenwiderstadn und staune.
>Ausgangsimpedanz des Takttreibers ("SCK" beim Atmega) muss also die>Leitungskapazität gegen Masse schnell genug umladen.
Bei HF-mäßiger Betrachtung ist eine Leitung ein nahezu ohmscher
Verbraucher, das Umladen geschieht NICHT wie bei einem lokal punktuellen
RC-Tiefpass!
> Je größer die>Leitungskapazität, desto flacher und verschliffener die Flankenwechsel>an den SPI-Devices.
So flach und verschliffen wie deine Antworten. Allerdings ein Ergebnis
von nicht vorhandener Kapazität. Wie paradox!
>>> Simuliere Deinen Aufbau einfach mit einem STK500 oder einem ähnlichen>>> Bord und schau Dir den Verlauf der Spannungen am Ziel an.>> Das STK500 ist für einen Test ("Simulation" ist hier Käse) genausowenig>> geeignet, weil das eigene Pintreiber mit Pegelanpassung hat.>Für die Simulation genügt die Verdrahtung mit dem SCK-Pin des Atmega.
Du weißt gar nicht, was der Untschied zwischen Simulation, Emulation und
Test ist.
http://de.wikipedia.org/wiki/Simulationhttp://de.wikipedia.org/wiki/Emulationhttp://de.wikipedia.org/wiki/Test
I like Wiki!
Nils, wenn was problematisch sein könnte, dann sind es die steilen
Flanken der Clock. Ich würde einen Serienwiderstand (ca. 33 Ohm) nahe an
den Ausgangstreiber setzen. Damit werden die Flanken schon etwas
abgeflacht und dann sollten keine Relfexionen auftreten.
Alternativ könntest du die Leitungen "verkürzen" indem du einen Buffer
(z.b 74LVC1Gxxx / 74HC1Gxxx) an jedem deiner SPI Teilnehmer benutzt.
Wenn das Ding ähnliche Verzögerung hat wie dein SPI Bautstein hat
(entsprechend wählen), sollte der Takt auch schön synchron bleiben.
Ohne jetzt den tatsächlichen Aufbau zu kennen würde ich aus dem Bauch
heraus bei kleinem Serienwiderstand und dieser "langen" SPI Leitung
keine größeren Probleme erwarten.
@ Nils (Gast)
> spibus.jpg
Ui, und auch noch Stichleitungen. Na denn mal Prost.
>Ich habe mal eine Zeichnung angewhängt, wie lange die Spi Leitungen sind>und wie sie so in etwa verlaufen werden.
Wie kommst du dann auf die Idee, du könntest sternförmig den Takt mit
10x15cm verteilen, wenn die Empfänger so weit auseinander liegen? Das
braucht einen N-dimensionalen Raum |N>10 ;-)
>Die Meinungen gehen hier ja auseiannder.
Es gibt Meinungen und es gibt qualifizierte Meinungen.
Bei 30x10cm=3m SPI-Buslänge sollte man sich schon warm anziehen. Mit
VORSICHT und Bedacht kriegt man das mit CMOS hin, aber dann bitte mit
linearer Busführung OHNE Stichleitungen und einem kräftigen Treiber für
SCK, das MUSS am Ende terminiert werden. UNd verdriller Leitung + Masse
für SCK. Sonst findest du dich ganz fix in der Liga der gescheiterten
LD-Ansteuerer wieder, die mit 20cm Flachbandkabel schon baden gehen,
weil das Taktsignal E klingelt wie Sau.
ähhh Falk war schneller... ich verstehe den Aufbau jetzt doch nicht
100%. Vielleicht wäre ein oder meherere Treiber doch empfehlenswert. Ich
war von einem linear angeordneten Konstrukt ausgegangen. Ich ziehe die
Buachgefühlaussage zurück :)
Bin ich froh nicht studiert zuhaben
5 jahre studium aufs berufsleben mit versuch und irtum umgelegt gehe ich
mit 70 in rente und hab noch 1,5 jahr übrig.
Also addieren sich die abzweigenden Leitungen zu einer langen Leitung
10x30cm. Was für ein kräftiger Treiber würde sich denn empfehlen?
Was ist mit den ~30cm von Baustein zu Baustein bei der SDO/SDI Leitung?
Diese 30cm sollte die SPI Bausteine doch in der Regel schaffen. Es
handelt sich um Microship digitale Potentiometer.
@ Nils (Gast)
>Also addieren sich die abzweigenden Leitungen zu einer langen Leitung>10x30cm. Was für ein kräftiger Treiber würde sich denn empfehlen?
Gibt es viele, es reicht auch ein paar Gatter aus einem 74HC04 parallel
zu schalten, damit hat man genug Dampf.
>Was ist mit den ~30cm von Baustein zu Baustein bei der SDO/SDI Leitung?>Diese 30cm sollte die SPI Bausteine doch in der Regel schaffen. Es>handelt sich um Microship digitale Potentiometer.
So klein ist das Schiff nicht, es heißt Microchip ;-)
Welches Bauteil GENAU?
Falk Brunner schrieb:> @ Nils (Gast)>>>Also addieren sich die abzweigenden Leitungen zu einer langen Leitung>>10x30cm. Was für ein kräftiger Treiber würde sich denn empfehlen?>> Gibt es viele, es reicht auch ein paar Gatter aus einem 74HC04 parallel> zu schalten, damit hat man genug Dampf.>>>Was ist mit den ~30cm von Baustein zu Baustein bei der SDO/SDI Leitung?>>Diese 30cm sollte die SPI Bausteine doch in der Regel schaffen. Es>>handelt sich um Microship digitale Potentiometer.>> So klein ist das Schiff nicht, es heißt Microchip ;-)> Welches Bauteil GENAU?
Ich hätte jetzt nicht gedacht, dass das Bauteil so entscheident ist.
Aber hier das genaue Datenblatt:
http://www.farnell.com/datasheets/12247.pdf
Ich nehme an, jeweils 2 Inverter hintereinander und davon ein paar
parallel? Nicht vielleicht doch Und-Gatter oder 74HC244?
@ Nils (Gast)
>Ich hätte jetzt nicht gedacht, dass das Bauteil so entscheident ist.
Jain.
>Aber hier das genaue Datenblatt:>http://www.farnell.com/datasheets/12247.pdf
Naja, du willst sie alle zu einem großen Schieberegister
zusammenschalten, halt kaskadieren. Das ist OK, aber nicht 100% SPI
Verhalten. Denn normalerweise wird jeder IC direkt an MOSI angeschlossen
un per individuellem CS angesprochen.
>Ich nehme an, jeweils 2 Inverter hintereinander und davon ein paar>parallel?
Mach einfach alle sechs Gatter parallel, dann muss man nur den SPI-Takt
per Software invertieren (CPOL) und fertig.
> Nicht vielleicht doch Und-Gatter oder 74HC244?
Nein.
Falk Brunner schrieb:>>Ein Treiber ist Unsinn. Leg die Leitung und fertig.>> Nein. 10x30cm ist schon ne ziemliche Hausnummer.
Meine Güte, jetzt kapier ichs erst... 10 MAL 15cm Strecke. Ich hab eine
10 auf 15 cm Platine im Kopf gehabt...
Okay, dann muss da gerechnet werden.
> Nö. Er und auh du liest besser mal den Artikel Wellenwiderstand und
Kennt er... äh, ich!
> stellt fest, dass für eine Taktleitung mit mehreren Empfängern> (Multidrop) eine Serienterminierung ins Auge geht.
Richtig. Daher auch der Hinweis, die Verbindung á la Daisy-Chain
vorzunehmen.
>> Nimm als Hausnummer 27Ohm Längswiderstand und 27k als Abschluss.>> Beides Unsinn. Ersteres siehe oben,
Stimmt auch nur, wenn man sternförmig verlegt. Das muss man sich ja
nicht antun. Eine lange Kette ist weniger "problem"anfällig.
> zweiteres ist meilenweit vom> Wellenwiderstand entfernt,
stimmt.
Ach, Falk,
was soll Deine Giftspritzerei? Vor allem, was belastet Du den Nils, wenn
Du doch eigentlich nur mir einen "reinwürgen" willst?
> Die TaktFREQUENZ ist in erster Linie egal, die FLANKENSTEILHEIT ist der> Knackpunkt.
Wie gesagt - Fehlerfreiheit ist notwendig. Irgend etwas qualitativ Neues
von Dir außer Stänkerei?
>>Ausgangsimpedanz des Takttreibers ("SCK" beim Atmega) muss also die>>Leitungskapazität gegen Masse schnell genug umladen.>> Bei HF-mäßiger Betrachtung ist eine Leitung ein nahezu ohmscher> Verbraucher, das Umladen geschieht NICHT wie bei einem lokal punktuellen> RC-Tiefpass!
Nils, prüf selbst. Simuliere den Aufbau und leg den Tastkopf des Scopes
an den Enden der Stichleitungen an.
Bei einer maximalem Länge der längsten Stichleitung von 35cm, 500 khZ
Takt und einem Prozessor wie Atmega und Vergleichbare passiert nicht
viel.
Falk kann wohl seine Wut auf mich nicht kontrollieren.
Nils, Dein System müsste anders beurteilt werden, wenn Du da mit
ECL-Schaltkreisen arbeiten würdest. Aber dann hättest Du das in Deiner
Frage erwähnt.
Ciao
Wolfgang Horn
Wolfgang Horn schrieb:> Bei einer maximalem Länge der längsten Stichleitung von 35cm, 500 khZ> Takt und einem Prozessor wie Atmega und Vergleichbare passiert nicht> viel.
Da kann sehr viel passieren. Die 500kHz sind sch...egal! Das macht auch
mit 1kHz die selben Schwierigkeiten wie bei 50MHz.
SPI-Bausteine sind auf 100MHz und mehr designed und entsprechend steil
sind die Flanken und entsprechend schnell reagiert der Baustein. Und
das was du bei einer schönen Darstellung eines 500kHz-Signals auf dem
Skope siehst, ist nicht das, was der Baustein sieht und auf was er
reagiert.
Was damals ein ECL-Baustein an Speed auf Platine brachte, das kann heute
auch eine schnelle CMOS-Logikfamilie. Anstiegszeiten unter 1ns sind
heute nichts besonderes mehr.
> Falk kann wohl seine Wut auf mich nicht kontrollieren.
Er hat keine Wut - er hat einfach nur sehr viel Wissen und Erfahrung und
die hat er dem TO zur Verfügung gestellt. Und, er hat in allen Punkten
in diesem Thread recht!
Wenn das Bild von Nils stimmt (alle 10 Abzweige(a' 20cm) innerhalb eines
10cm Stücks), dann ist die sternförmige Clockverteilung bei
CMOS-Eingängen das Beste. Lieber alle mit etwas niedergeknüppelter
Anstiegszeit durch die vielen parallelen Leitungen als eine Treppe im
Bereich der Schaltschwelle bei den vorderen Empfängern im Falle der
Serienschaltung.
Wenn man den Clock mit Reihenschaltung verlegt, "verharrt" das Signal u.
U. beim 1. Empfänger für lange Zeit im Bereich um Vcc/2. Das lässt sich
nur dadurch vermeiden, in dem man einen so kräftigen Treiber nimmt der
die Leitung sofort auf fast volle 5V Hub bringt. Dann gibt es aber am
Leitungsende kräftige Überschwinger und EMV-mäßig ist das auch schlecht.
Wolfgang Horn schrieb:> Vor allem, was belastet Du den Nils, wenn> Du doch eigentlich nur mir einen "reinwürgen" willst?
Was postest du hier mit deinem Halbwissen und siehst dann nicht mal ein,
wenn du Unrecht hast?
Jeder macht mal Fehler, aber zum x-ten Mal das hier von dir:
> Bei einer maximalem Länge der längsten Stichleitung von 35cm, 500 khZ> Takt und einem Prozessor wie Atmega und Vergleichbare passiert nicht> viel.
Ist einfach Mist. Begreif doch bitte endlich mal, dass die 500kHz hier
völlig Wurschd sind!
Die Frequenz ist aber nur dann egal wenn man mit schnellen Treibern
ungebremst auf eine Leitung geht. Mit begrenzter Anstiegszeit (slew rate
control, im einfachsten Fall nur ein Widerstand) sieht das dann wieder
anders aus. Bei 30cm und 500khz könnte die Anstiegszeit sogar im
Kriechfall noch ausreichen.
Hmm , mal so doof gefragt.
Könnte man für so ein Bastelprojekt nicht einfach Kapazitäten
hinzuschalten um die Anstiegszeiten zu erhöhen ?
Ich weiß das man ein verschleifen der Signale unter allen Umständen
vermeiden will, aber bei 500 KHz.
Das ist natürlich total unprofessionell und Murkserei aber technisch
ginge das doch oder ?
@ Mirosa (Gast)
>Die Frequenz ist aber nur dann egal wenn man mit schnellen Treibern>ungebremst auf eine Leitung geht.
Jain.
> Mit begrenzter Anstiegszeit (slew rate>control,
Ja.
> im einfachsten Fall nur ein Widerstand)
NEIN! Ein einfacher Widerstand macht das NICHT! Dazu müsste man
mindestens einen Kondensator noch am Pin zuschalten, natürlich NACH dem
Widerstand.
> sieht das dann wieder>anders aus. Bei 30cm und 500khz könnte die Anstiegszeit sogar im>Kriechfall noch ausreichen.
@ Helmut S. (helmuts)
>Wenn das Bild von Nils stimmt (alle 10 Abzweige(a' 20cm) innerhalb eines>10cm Stücks), dann ist die sternförmige Clockverteilung bei>CMOS-Eingängen das Beste.
Es ist eine Möglichkeit. Aber aus mechanischen und "logistischen"
Gründen eher ungünstig.
> Lieber alle mit etwas niedergeknüppelter>Anstiegszeit durch die vielen parallelen Leitungen als eine Treppe im>Bereich der Schaltschwelle bei den vorderen Empfängern im Falle der>Serienschaltung.>Wenn man den Clock mit Reihenschaltung verlegt, "verharrt" das Signal u.>U. beim 1. Empfänger für lange Zeit im Bereich um Vcc/2.
Falsche Schlussfolgerung. Die Treppe gibt es nur bei falsch gewählter
Serienterminierung.
> Das lässt sich>nur dadurch vermeiden, in dem man einen so kräftigen Treiber nimmt der>die Leitung sofort auf fast volle 5V Hub bringt.
Genau das war mein Vorschlag.
> Dann gibt es aber am>Leitungsende kräftige Überschwinger
Nicht, wenn man eben DORT eine Terminierung platziert.
>und EMV-mäßig ist das auch schlecht.
Nein.
Ja, noname, hi, Nils,
> Könnte man für so ein Bastelprojekt nicht einfach Kapazitäten> hinzuschalten um die Anstiegszeiten zu erhöhen ?
Natürlich könnte man das, würde aber einen höheren Stromverbrauch zur
Folge haben. Deshalb, wie Du richtig schreibst, "Murks". Weil der
SCLK-Pin des Prozessors diese Kapazitäten mit umladen müsste.
Diesen erhöhten Stromverbrauch könnte man dann wieder reduzieren mit
RC-Kombinationen, also Widerstand zwischen SCLK-Pin des Prozessors und
jedem SCLK-Pin am SPI-Device, sowie an letzterem ein C nach Masse.
Aber unnötig bei einem Prozessor wie einem ATmega, ATTiny oder ähnliche,
auch nicht bei SPI-IC's für diese Prozessoren. Der ATmega1284P kann mit
bis zu 20 MHZ Systemtakt betrieben werden und dann einen SPI-Takt von
bis zu 5 MHz.
Bei 15cm passiert da eher nichts. Sicherheit gewinnst Du, Nils, wenn Du
den Aufbau an Deinem Experimentierboard mit genau Deinem Prozessor und
genau Deinen SPI-ICs ausprobierst. Verdrahte, vielleicht mit einer
zusätzlichen Lochrasterplatte (ich verwende noch gern die Fädeltechnik)
MISO, MOSI, SCLK am SPI-IC mit dem längsten Draht. Dann miss mit einem
hochohmigen Tastkopf und Scope, was am Ende zu erleben ist.
Schreib in das SPI-IC hinein, lese es aus, und prüfe, ob es korrekt
gelesen wurde.
Nils, ich bedaure, dass Du hier Opfer des Kollateralschadens
mittelalterlicher Hexenjagd geworden bist, die heute noch als
Trolljägerei vorkommt. Da versteift sich dann jemand auf eine Person,
die er mit dem Teufel im Bunde wähnt, deutet alle ihre Handlungen in
diesem Sinne, bis er sie auf dem Scheiterhaufen brennen sieht und sich
selbst bestätigen kann, er habe wieder mal Recht gehabt.
Auch Stalker-Geschädigte wissen ein Lied zu singen, bei denen ist die
"Versteifung" dagegen von einer etwas anderen Art.
Diese Hexen- oder Trollübersensibilität ist Symptom eines
pathologischen, krankhaften Geistes.
Halte Dich dabei weder an mich, noch an Falk, denn wir sind hier beide
befangen.
Halte Dich besser an
1. Dritte, die Dir besonnen geantwortet haben und sachlich, weil sie
weder Anlass haben zur Hexenverfolgung, noch, sich verfolgt sehen zu
müssen.
2. An die Natur, an die Technik, an Dein Experimentierboard, Dein
Testprogramm und Dein Scope. Die sind ziemlich sicher gegen Irrtümer und
Wahn. Wie ich diesen Thread in seiner Abartigkeit hier sehe, kostet Dich
dessen Verfolgung mehr Zeit als das Fädeln von zwei IC-Sockeln,
programmieren und testen.
Ich bedaure, dass wir nach dem Fortschritt seit den Hexenverbrennungen
durch solche Leute wie Falk wieder einen moralischen Rückschlag erleben
müssen.
Ciao
Wolfgang Horn
Ich habe einen kleinen Testaufbau gemacht.
Ich habe bereits 2 Effektschaltungen für Gitarre in SMD geroutet und die
Potentiometer durch Digitalpotentiometer ersetzt. Zum Glück habe ich in
der Hochschule die Möglichkeit, selber doppelseitige Platinen
durchzzukontaktieren. Im Bild sieht man diese langen Leitungen. Das sind
hier jetzt so 50cm insgesamt auf CS und CLK, die von den Effektgeräten
direkt an den µC gehen. Dieser taktet beim hochfahren einfach einmal die
Informationen in die Schieberegister der Digitalpotentiometer.
Das sind jetzt jeweils 2 Teilnehmer mit 5 Spi Bausteinen. Hier konnte
ich nun keine Probleme feststellen. Wann werden die Probleme auftauchen?
Es handelt sich da um ein Equalizer und ein Delay. Für den späteren
Aufbau sind komplexere analoge Effekte natürlich interessanter.
@ Nils (Gast)
>durchzzukontaktieren. Im Bild sieht man diese langen Leitungen. Das sind>hier jetzt so 50cm insgesamt auf CS und CLK, die von den Effektgeräten>direkt an den µC gehen. Dieser taktet beim hochfahren einfach einmal die>Informationen in die Schieberegister der Digitalpotentiometer.
Netter Drahtverhau ;-)
Wie prüfst du, ob die Daten richtig in die Potis geschrieben wurden? Wie
OFT prüfst du? Einmal ist keinmal.
>Das sind jetzt jeweils 2 Teilnehmer mit 5 Spi Bausteinen. Hier konnte>ich nun keine Probleme feststellen. Wann werden die Probleme auftauchen?
Dann, wenn du sie am wenigsten gebrauchen kannst ;-)
>Es handelt sich da um ein Equalizer und ein Delay. Für den späteren>Aufbau sind komplexere analoge Effekte natürlich interessanter.
Na dann klemm mal ein so langes Kabel dran, wie es später im Vollausbau
sein wird. Klemm ein Gerät in die mitte des Kabels, eins ans Ende. Dann
teste ausgiebig, dauerhaft Daten schreiben, lesen, vergleichen.
noname schrieb:> Ich weiß das man ein verschleifen der Signale unter allen Umständen> vermeiden will, aber bei 500 KHz.
Verschliffene Flanken sind nur das halbe Problem. Der Ärger kommt, wenn
das Clk-Signal an der Flanke klingelt und dadurch am Empfänger die
Schaltschwelle mehrmals über-/unterschritten wird, so dass ein Clk-Puls
vom Sender beim Empfänger als eine ganze Folge von schnellen Pulsen
ankommt.
Falk Brunner schrieb:> Netter Drahtverhau ;-)> Wie prüfst du, ob die Daten richtig in die Potis geschrieben wurden? Wie> OFT prüfst du? Einmal ist keinmal.
Die Drähte sind mit diesen 30cm natürlich worst case. Je nachdem, wie
nacher Platz im Gehäuse ist, könnten diese auch deutlich gekürzt werden.
Ich teste direkt mit einem Gitarrenverstärker und höre ja was passiert.
Verhält sich alles total normal, wie gewollt. Ich habe nun auch ein
Potentiometer an den ADC angeschlossen und lasse ein zufälliges Digipoti
kontinuierlich ändern. Funtioniert auch wunderbest. Also das ganze in
Endlosschleife takten..
Falk Brunner schrieb:> Na dann klemm mal ein so langes Kabel dran, wie es später im Vollausbau> sein wird. Klemm ein Gerät in die mitte des Kabels, eins ans Ende. Dann> teste ausgiebig, dauerhaft Daten schreiben, lesen, vergleichen.
Na, das ganze würde jetzt ja nur noch reproduziert werden auf max. 10
Teilnehmer. Einen habe ich noch hier, fertig aufgebaut, allerdings
müsste ich erst weitere Kabel basteln.
Ich hab mal ein kleines Video gemacht. Das Rauschen im Hintergrund kommt
übrigens von ner Baustellenpumpe vorm Fenster.
Der Code steht am Ende des Beitrages. In einer Endlosschleife wird nun
CS auf 0 gesetzt, Daten reingetaktet und Cs wieder auf 1. Eines der
Potis wird ruch adc() gesetzt (delay Länge).
http://www.youtube.com/watch?v=TXHqOtnVuQE
@ Nils (Gast)
Du hast Glück, CS, SCK und SI haben einen Schmitt-Trigger Eingang,
das entschärft das Problem deutlich. Da kann SCK auch ein wenig unsauber
sein. Trotzdem sollte man SCK solide führen, wie beschrieben. Auf den
Treiber kann man vielleicht verzichten.
Jawoll, Nils!
> Ich habe einen kleinen Testaufbau gemacht.
Mit diesen Steckbrettern ist das auch gut zu machen, sogar ohne die
Gefahr von Lötspritzern auf dem Hemd.
> Ich habe bereits 2 Effektschaltungen für Gitarre in SMD geroutet und die> Potentiometer durch Digitalpotentiometer ersetzt.
Fein, dass Du Dich nicht hast bremsen lassen durch die Unsicherheiten,
die dieser Thread erzeugen musste.
> Das sind jetzt jeweils 2 Teilnehmer mit 5 Spi Bausteinen. Hier konnte> ich nun keine Probleme feststellen. Wann werden die Probleme auftauchen?
Da stimme ich Falk zu:
„Alles, was schief gehen kann, wird schief gehen.“ („Murphys Law“)
(Grundgesetz der Qualitäter)
Deshalb ist die Überlegung gut, welche Gefahren drohen. (Vor allem
Einkopplung von Netzfrequenz. Insbesondere in der Zeit, vom Einschalten
der Versorgungsspannung bis Deine Firmware den Treiber des SCLK auf
niederohming geschaltet hat.
Die Pfrüfung mit einem Testprogramm hast Du ja schon gemacht, alles o.k.
Aber da fühle ich mich noch unsicher, weil ich nicht wissen kann, was
sich an de SCLK.Leitung abspielt. Deshalb ist die Prüfung des
Geschehens auf den langen Drähten gut mit einem getriggerten Oszilloskop
und einem Teilertastkopf, ob an der SCLK-Leitung irgendwelche Flanken,
Abnormitäten oder gar Überschwinger zu beobachten sind.
Dann ist das Wichtisgste untersucht und der Schlaf ruhig und gesund.
Ciao
Wolfgang Horn