Forum: Mikrocontroller und Digitale Elektronik SJA1000 - Problem


von Atlan (Gast)


Lesenswert?

Hallo,
ein ominöses Problem mit meinem SJA 1000:

Das Senden bestimmter bitfolgen, insbesondere wenn eines oder mehrere
der Datenbytes 0xFF übertragen werden sollen, haben zur Folge, dass in
den entprechenden Empfangsregistern des SJA 0x00 steht. Teilweise auch
noch nachfolgende Datenbytes 0x00 sind.
So zum Beispiel übertragen:
Id: 0x17F
DLC: 0x04
Data1: 0xFF
Data2: 0xFF
Data3: 0x56
Data4: 0x78

und aus den Registern des SJA1000 kommt zurück:

Id: 0x178
DLC: 0x04
DAta1: 0x00
Data2: 0x00
Data3: 0x00
Data4: 0x78

Meine Frage nun: hatte jemand schon ein ähliches Problem biem empfangen
von Daten mit dem SJA 1000 und woran könnte das liegen

Sende ich: id 0x106
dlc 0x04
data1: 0x3f
data2: 0x34
data3: 0x56
data4: 0x78

dann kommen die Daten richtig aus dem SJA1000 raus, habe auch mal das
Signal am RX-Pin des SJA1000 oszilloskopiert, das kommt mit
bit-stuffing und so weiter richtig am Pin an - nur scheinbar werden die
Daten nicht richtig in die Register geschrieben...

mfg. Reinhard

von KoF (Gast)


Lesenswert?

kann es sein, das du eine maske gesetzt hast, dass nur ein bestimmter
id-breich empfangen wird?

oder kann es sein, das dein "auf den bus schreiben" nicht richtig
funktioniert? (daran lag es einmal bei mir bei einem ähnlichen fehler)

ist die taktrate des busses geringfügig falsch? (hatte ich auch schon)

von Rudi (Gast)


Lesenswert?

Hallo !

Bin auf deinen Beitrag vom letzten Jahr gestossen.
Hast Du das Problem gelöst.

Ich habe dasselbe Problem bei der Anbindung an ein 8051 Derivat.

Offensichtlich geht der Lesezugriff auf den SJA1000 schief, abhängig
was in den zu lesenden Registern steht.

Es sieht so aus, daß bei der negativen Flanke von /RD nocheinmal ein
ALE Puls generiert wird, nur mit dem Oszi ist niczts zu erkennen.

mfg Rudi

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
Noch kein Account? Hier anmelden.