CAN-Bus: Empfangen geht, Senden nicht

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From German to

Threaded View
Hi NG,
ich habe ja schon wiederholt mal Fragen zum Thema CAN-Bus gestellt.

Leider habe ich immer noch Probleme - speziell beim Senden von Messages -
die ich mir nicht erklären kann.

Hardware: MCP2515 (16MHz Keramik-Resonoator)+ 82C251 (Rs mit 10k gegen
Masse)

Konfiguration: 125kbps; CNF1-3 berechnet mit dem Intrepid-Kalkulator
(0x03,0xb8,0x05)

Ich kann Messages von anderen Nodes problemlos und fehlerfrei empfangen,
daher gehe ich davon aus, dass die Hardwareschaltung, Verkabelung und
Konfiguration des MCP korrekt funktionieren.
Zwischen CANL und CANH messe ich 60 Ohm, Terminierung müsste also auch gut
sein.

Versuche ich nun eine Nachricht zu senden, dann geht sofort das MERRF-Flag
im MCP2515 an, das TXERR-Flag im TX0 geht an. Ausserdem geht ERRIF an, in
EFLG wird TXEP und EWARN signalisiert.
Das geht dann nicht mehr weg !

Was mich besonders wundert: Der REC-Zähler geht hoch, nicht der TEC !


Ich vermute ein Software-Problem, da das Empfangen gut geht.

Jetzt noch ein, zwei Fragen:
- Angenommen ich sende eine Message mit einem Identifier der von keinem
anderen Node empfangen werden will (Filter); kriege ich als Sender dann
einen Fehler oder verhallt die Message ungehört ?
- Sende ich eine Message mi Standard oder Extended Identifier udn die
übrigen Nodes unterhlaten sich jeweils mit umgekehrten Identifiern, gibt das
eine Fehlermeldung ?


Gruss Nico  und viel Spass bei Ostereier suchen !!



Re: CAN-Bus: Empfangen geht, Senden nicht
On Fri, 14 Apr 2006 09:29:41 +0200, "Nicolas Nickisch"

Quoted text here. Click to load it

Die Message wird einfach verworfen. Die Controller empfangen erst und
filtern erst anschließend.

Quoted text here. Click to load it

Hab ich noch nicht ausprobiert, sollte man aber nicht machen.

Mit freundlichen Grüßen

Frank-Christian Krügel

Re: CAN-Bus: Empfangen geht, Senden nicht
Frank-Christian Kruegel schrieb:

Quoted text here. Click to load it

Ergänzend: Wenn kein anderer Teilnehmer die Nachricht empfängt (z.B.
wegen Kabelbruch, Stromausfall etc.), bekommst Du natürlich einen
Sendefehler-Status. Sobald auch nur ein einziger weiterer aktiver
Teilnehmer vorhanden ist, wird der das "Acknowledge" senden - unabhängig
davon, ob der Filter das Telegramm anschließend akzeptiert oder nicht.

Quoted text here. Click to load it

IIRC (ohne nachgelesen zu haben), verhalten sich die Teilnehmer wie beim
Filtern der IDs: Es werden korrekte ACKs gesendet, die Nachrichten aber
verworfen.

--
Dipl.-Ing. Tilmann Reh
http://www.autometer.de - Elektronik nach Maß.

Re: CAN-Bus: Empfangen geht, Senden nicht
Auf einmal bin ich mir FC%ber meiner Konfiguration nicht mehr so sicher:
Die Werte fFC%r 125kbps/16Mhz habe ich mit dem Intrepid-Tool berechnet
(CNF1-3 03,b8.05)
Ich habe alle Einstellungen FC%bernommen "as is" und keinerlei
C4%nderungen vorgenommen.

Wie bereits geschildert kann ich mit diesen Einstellungen prima
empfangen aber nicht senden.

Nun bin ich auf ein weiteres Tool von kvaser.com gestossen

Dort bekomme ich mit den gleichen Parametern bestimmt 20 verschiedene
Einstellungen, alle fFC%r 125kbps/16Mhz.

Ist also 125kbps <> 125kbps ?

KF6%nnte dies meine Probleme erklE4%ren, dass die anderen Nodes die
125kbps aber mit anderen Einstellungen erzeugen und ich deswegen hF6%re
aber nicht von den anderen verstanden werde ?


Re: CAN-Bus: Empfangen geht, Senden nicht
snipped-for-privacy@gmx.de schrieb:

[Konfigurations-Berechnung mit "tools"]
Quoted text here. Click to load it

Wäre durchaus denkbar. Ich kenne diese Tools nicht und habe mir die
Konfigurationswerte für SJA1000 und MCP2515 immer "zu Fuß" ausgerechnet.

Ich könnte Dir meine Tabellen für den 2515 ja mal mailen.

--
Dipl.-Ing. Tilmann Reh
http://www.autometer.de - Elektronik nach Maß.

Re: CAN-Bus: Empfangen geht, Senden nicht
Das wE4%re nett !
Das kvaser-Tool its FC%brigens hier: www.kvasre.com/protocols/timing


Re: CAN-Bus: Empfangen geht, Senden nicht
Nicolas Nickisch schrieb:

Quoted text here. Click to load it

Hast Du Dir denn mal die Signale auf dem Bus mit einem Oszilloskop
angesehen? Da kannst Du sehr genau sehen, was der MCP2515 überhaupt
sendet, ob er ein ACK von den anderen Nodes bekommt, ob er den
Sendevorgang wiederholt etc...

--
Dipl.-Ing. Tilmann Reh
http://www.autometer.de - Elektronik nach Maß.

Re: CAN-Bus: Empfangen geht, Senden nicht
Muss ich das mit abgestecktem Kabel machen ?
Quoted text here. Click to load it



Re: CAN-Bus: Empfangen geht, Senden nicht
Gleich noch eine Frage: Habe hier nur ein uraltes, kleines
Hameg-Oszilloskop. Braucht man spezielles Equipment um die Signale zu sehen.
Das SIgnal wiederholt sich ja eigentlich nicht, oder ?

Quoted text here. Click to load it



Re: CAN-Bus: Empfangen geht, Senden nicht
Nicolas Nickisch schrieb:

Quoted text here. Click to load it

Nein, natürlich nicht - dann bekommt der CAN-Controller definitiv kein
ACK und sendet kontinuerlich (bis der Fehlerzähler dem Einhalt
gebietet). So etwas mißt man im laufenden Betrieb.

Quoted text here. Click to load it

Ein Speicheroszilloskop ist ausgesprochen nützlich zur Untersuchung
einzelner oder seltener Signale... Ohne Speicher wirst Du hier leider
kaum weiterkommen.

[TOFU beseitigt. Bitte lies und beachte
<http://einklich.net/usenet/zitier.htm und
<http://www.sockenseite.de/usenet/plenken.html . Danke.]

--
Dipl.-Ing. Tilmann Reh
http://www.autometer.de - Elektronik nach Maß.

Site Timeline