Ich habe mir mal überlegt, ob es möglich ist, auf z.B. einem I²C Bus zu messen, von wo die Daten kommen (also vom Master oder vom Slave). Wenn sich der Strom mit Lichtgeschwindigkeit bewegt, habe ich folgende Zeiten ausgerechnet: 1m -> 3,34µs 50cm -> 1,67µs 10cm -> 0,334µs = 334ns Wenn ich einen µC mit 40MIPS nehme (dsPIC), die also 40mio Befehle pro Sekunde kann, braucht er für einen 25ns. Wenn man also ein Kabel hat, dass 10cm lang ist und man schließt an beiden Enden jeweils einen IO an, könnte man doch eigentlich die Richtung messen, oder? Wenn links PortA1 und rechts PortA2 ist, und das Signal erst bei A1 auf High geht und dann bei A2, müsste man doch so sagen könne, dass das Signal von links nach rechts geht. Oder hab ich da einen Denkfehler?
ich glaube du liegst um eine 10er potenz daneben 300.000.000m/s ergibt 3.3m/ns grob überschlagen
hmm glaube nicht. 1/300 Mio -> quasi 300MHz. -> 3,333*10^(-9) s oder 1/3 * 1/100.ooo.ooo = 0,333 * 10^(-8) s
einigen wir uns auf 0,33 m/ns. Im Kabel oder auf der Leiterplatte ist die Lichtgeschwindigkeit allerdings etwas kleiner als im freien Raum. Dürften so ca. 20cm/ns sein.
ahhhhhh ja stimmt.. trottel.. Naja kam mir schon komisch vor. Dann hat sich das glaub ich erledigt. Ne andere Möglichkeit gibt es nicht, oder? Also mit Dioden oder so? Das Problem ist ja, dass es die Gleiche Leitung ist.
Ähem, mal von dem hypothetischen Ansatz abgesehen (und wofür man das brauchen könnte), mit welcher Samplerate willst du denn da abtasten UND die abgetasteten Werte dann noch weiterverarbeiten? - gerd
ach verdammt, richtig gerechnet und die einheit falsch aufgeschrieben ja 0.3m/ns ist richtig =)
ich schrieb: > Ne andere Möglichkeit gibt es nicht, oder? > Also mit Dioden oder so? Das Problem ist ja, dass es die Gleiche Leitung > ist. Hallo, naja mit ein bisschen Intelligenz im Mitschneidegerät sollte es gehen, passiv am Bus zu horchen. - auf START-Condition warten -> nachfolgendey Byte ist Adresse des Slaves -> je nachdem ob Read- oder Write-Bit gesetzt ist, ist die Datenrichtung festgelegt -> den Rest der Datenübertragung erfassen -> STOP-Condition
gerd schrieb: > Ähem, mal von dem hypothetischen Ansatz abgesehen (und wofür man das > brauchen könnte) Hab mir gedacht, dass man das als evtl. Erweiterung zu einem Logianalyzer machen kann. Das heißt, man hat 1 Messspitze die man an die Erweiterung klemmt + einer Messspitze für die Richtung. Dann hat man am ersten Kanal die Daten bzw. den Status und der andere Kanal gibt an, in welche Richtung es geht. Man bräuchte dafür natürlich eine Leitung, die "Unterbrechbar" ist, also 2 Trennbare Punkte hat. Christian schrieb: > Hallo, > > naja mit ein bisschen Intelligenz im Mitschneidegerät sollte es gehen, > passiv am Bus zu horchen. Das stimmt, man könnte auch die Bekannten Adressen angeben und weiß somit, wer wohin sendet. Allerdings war das mit dem I²C Bus nur ein Beispiel. Ist jetzt auch nicht überlebenswichtiges, aber es interessiert mich irgendwie.
Also, wenn man den dsPIC auf 2GIPS übertakten würde, hätte man bei einem Meter Kabel 6 Befehle zum messen. ;)
Für den einfachen Fall: Erkennen "wer hat was gesendet?" Massepotential für z.B. Slave mit Schottky-Diode anheben. Mit Analog-Scope messen. Man kann dann sogar den ACK-Impuls der Gegenrichtung erkennen und hat die Möglichkeit, die Einzelimpulse abzu- zählen. mfg Padex
Mit Massepotential anheben, war hier gemeint: Schottky-Diode in die SDA-Leitung mit Katode nach SDA-PIN (Slave). Dadurch sind die LOW-Pegel im Oszillogramm etwas nach oben verschoben (nur für Slave). mfg Padex
nein: „MIPS“, von engl. „Mega instructions per second“ also ist GIPS - Giga instructions per second. War aber als scherz gemeint.
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.