Kennt jemand eine Quelle für CAN Spezifikationen, die ins eingemachte gehen, ich finde im Netz nur sehr allgemeine Angaben die sich eher mit dem Aufbau der Nachrichten befassen als mit den Timings die mich eher interessieren. z.B. Abtastung bei 3/4 der Bitzeit... Gerne auch per Mail falls eine Veröffentlich nicht so gern gesehen ist.
google: can spezifikation 2.0 erster Link: http://www.can-cia.org/fileadmin/cia/specifications/CAN20B.pdf Seite 34: 10 BIT TIMING REQUIREMENTS Oder suchst du was anderes?
genau dazu wollte ich es etwas genauer haben. Diese 1 Bit Zeit wird ja für die zw. 8 und 25 Abschnitte unterteilt(programmiert). Ich frage mich wovon ist das abhängig oder wozu wird das benutzt dadurch könnte man ja Inkompatibilität erzeugen oder sollen dadurch evtl. Laufzeitanpassungen erzeugt werden?
Thomas O. schrieb: > sollen dadurch evtl. Laufzeitanpassungen > erzeugt werden? Exactly. Der bekannte Microchip-CAN-Controller MCP2515 macht das lt. Datenblatt so: Einteilung einer Bitzeit in "Time Quanta". Diese Time Quanta werden in mehrere Segmente aufgeteilt, unter anderem PROPSEG = Propagation segment Hier ist eine komplette Verzögerungzeit einzurechnen, und zwar von den beiden am weitesten voneinander entfernten CAN-Knoten. Es muss ja die Arbitrierung funktionieren sowie das zeitlich Korrekte löschen des ACK-Bits. PHSEG1 = Phasensegment 1 Die Zeit vor dem Erfassungspunkt des Pegels des aktuellen Bits PHSEG2 = Phasensegment 2 Die Zeit nach dem Erfassungspunkt des Pegels des aktuellen Bits mfg mf PS: Schau dir das Datenblatt zu dem MCP2515 an. Fast ein Musterbeispiel... Bei Softing gibts auch viel Info: www.softing.com/home/en/industrial-automation/products/can-bus/more-can- bus/data-frame/control-field.php
danke für den Link da werde ich mich mal einlesen und das genannte Datenblatt auch mal durchmachen. Aber noch schnell eine Frage vielleicht hat das jemand im Kopf, wenn ein CAN Teilnehmer aus der Arbitrierung raus fliegt weil eine andere Nachricht höher priorisiert ist, wie lange wartet er dann bis ein neuer Sendeversuch erfolgt.
>Aber noch schnell eine Frage vielleicht hat das jemand im Kopf, wenn ein >CAN Teilnehmer aus der Arbitrierung raus fliegt weil eine andere >Nachricht höher priorisiert ist, wie lange wartet er dann bis ein neuer >Sendeversuch erfolgt. Er wartet nicht und versucht es sofort noch einmal.
Er wartet das Ende der vorigen Message ab und dann noch die Intermission Time von 3 Bitzeiten. Dann geht das Gerangel um die niedrigste ID wieder los.
Bernhard Spitzer schrieb: > und dann noch die Intermission > Time von 3 Bitzeiten Manche älteren Controller kann man noch mit einem "Arbitrierungstrick" in die Irre führen. Das Netz scheint nur die wichtigsten IDs überhaupt zu transferieren. Bei neueren Controllern kann man deswegen die Intermissionszeit niedriger als 3 Bitzeiten einstellen. Entweder bei allen Controllern gleich oder --- lass es einfach. mfg mf
Thomas O. schrieb: > Ich frage mich > wovon ist das abhängig oder wozu wird das benutzt dadurch könnte man ja > Inkompatibilität erzeugen oder sollen dadurch evtl. Laufzeitanpassungen > erzeugt werden? Normalerweise wird das Bit-Timing auf die Kabellänge des Systems angepaßt. Alle Busteilnehmer sollten ein ähnliches Bittiming haben. Im PKW legt man den Sample-Point eher nach "spät". (75-85%) Gruß Anja
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.