PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CAN-BUS: Wie könnte man die Bitrate messen?



Kaiser-F
28.09.2006, 19:29
Hallo Zusammen!

Wie der Titel des Themas schon sagt, würde ich gerne herausfinden,
wie man in einem bestehenden CAN-Bussystem die Bitrate ermitteln kann.

Mein erster Gedanke wäre gewesen, dass man einen CAN-Controller nimmt,
und den alle Fraquenzen nach der Reihe testen lässt.
Sobald er eine Nachricht korrekt empfangen kann, ist die Bitrate ermittelt.

Nur gibt es da ein Problem. Mit einem Quarz kann man nur eine Hand voll
Bitrates einstellen (mit 0% Error).... Viele Systeme haben andere
Quarze und andere Prescaler und so weiter....

Evtl hat von Euch jemand Ideen oder Erfahrungen über diese Thema.

Ich bedanke mich herzlichst,

franzl
28.09.2006, 21:35
hallo franz,
du kannst die frequenz mit einem digital oszi messen und dann nach folgender formel berechnen.
Datenübertragungsrate = Frequenz * Datenbitbreite/8
mfg franzl

Kaiser-F
28.09.2006, 21:37
Hallo Franzl,

Tjo.... wenn man ein Digitaloszi hätte, dann wär das kein Problem :-)

sigo
29.09.2006, 09:38
Hi, du kannst auch analog messen, wenn mehrere CAN-Teilnehmer am Bus sind, ist der Acknoledge-Impuls etwas stärker als der Rest (weil alle den gleichzeitig senden). Darauf kannst du triggern, bzw. die Pulsweites des Acknoledge-Impulses messen..

Man kann es auch mit einem Interrupteingang hinter dem Bustreiber (TTL-Seite) messen. Einfach die kürzeste Bitzeit bestimmen. Wenn die Rate bestimmt ist, kannst du den Interrupt ausschalten. Das geht natürlich nur, wenn Datenverkehr auf dem Bus ist..

Sigo