Re: gepatchtes OS für CAN-Bus Kategorie: CAN-Bus (von CAN-abis - 28.11.2002 22:11) | |
Als Antwort auf Re: gepatchtes OS für CAN-Bus von Muetze - 28.11.2002 10:05
| |
Hi Die 4 war schon nicht so ganz falsch. Allerdings ist das nur der BRP-Wert. In das BTR-Register mu� jedoch die komplette Bittiming-Information geschrieben werden. So wäre z.B. 0x5CC4 ein Wert für 100 kBaud. 5 = TSEG2 - 1 ==> TSEG2 mit 6 Zeitquanten C = TSEG1 - 1 ==> TSEG1 mit 13 Zeitquanten Mit dem Synch-Segment hat ein CAN-Bit also 1 + 13 + 6 = 20 Segmente (=Zeitquanten). Der CAN-Bitzeitquantentakt ergibt sich -- siehe C164 Datenbuch -- aus CPU-Freq / 2 (BRP+1) Bei 20MHz und BRP=4 sind das 2MHz. Mit 20 Quanten pro Bit sind das 2MHz/20 = 100kBit/s, oder? Der Sample-Point liegt in diesem Beispiel bei 70% der Bitzeit = (1+13) / 20. Das "C" zwischen dem "5C" und der "4" steht für die zwei Bits der Resynchronisationssprungweite, also in diesem Fall für SJW = 2. Das sollte passen. Wen's interessiert: die im OS-CAN voreingestellten Raten ergeben sich wie folgt: 50k -> BTR = 0x5CC9 62k -> BTR = 0x5CC7 83k -> BTR = 0x5CC5 125k -> BTR = 0x5CC3 250k -> BTR = 0x5CC1 500k -> BTR = 0x5CC0 �brigens eine kleine Warnung an alle unwissenden CAN-Lauscher im AUTO: Finger weg von den CANs an dem die Steuergeräte für Motor, Getriebe, ABS, Airbag usw. hängen, es sei denn, es stört Euch nicht, wenn Euch Kolben und Zahnräder um die Ohren fliegen, der Katalysator abraucht, das ABS bei Glatteis ausfällt usw. Auch wenn Eure C2-Unit "nur" mithört, ist sie ein aktiver CAN-Teilnehmer. Da sollte man schon sehr genau wissen, was man tut. Gru�, CAN-abis (Gebt das Hanf frei, und zwar sofort!) > Danke für die Infos. > > Ich habe mir das schon so gedacht. leider kann ich somit immer noch keine 100kbit schaffen, das der entsprechende BTR-Register Wert 4 beträgt. > > Bis denne > > Muetze > | |
Antwort schreiben Antworten: Re: gepatchtes OS für CAN-Bus (von Muetze - 26.12.2002 12:02) |