Forum: Mikrocontroller und Digitale Elektronik Akzeptanzfilter Maske / Tag Verständnisproblem


von C. L. (calle)


Lesenswert?

Hi zusammen,

Ich habe hier ein Verständnisproblem mit dem CAN Akzeptanzfilter beim 
AT89C51CC03CA.

Ich verrenne mich immer wieder in der Berechnung der Bits.

Ziel ist es, den ID 0x201 und 0x202 durchzulassen.
Man ließt bei diversen Erläuterungen auch immer wieder unterschiedliche 
Bitzustände dieser Register.

Meine Auffassung ist:
Maskregister:
"1" wird zur Filterung herangezogen
"0" wird nicht zu Filterung herangezogen, ist also egal.

Code/Tag Register:
"1" Diese Bitstelle des reinkommenden Identifiers wird auf 1 geprüft und 
somit durchgelassen (UND verknüpft)
"0" Diese Bitstelle des reinkommenden Identifiers wird auf 0 geprüft und 
somit auf 0 gesetzt.
Bleibt dann eine ID über.
Wie kommt es aber zu einem Filterband?

Beispiel:
ID 0x201 => 10000000001
ID 0x202 => 10000000010

Mask Register = 10000000011
(somit wird doch alles von 0x200...0x203 geprüft)

Tag/Code Register = 10000000000
(somit kommen IDs raus die 0x200..0x203 sind)

Ist das richtig? Ziel war aber nur 0x201 und 0x202.

Kann mir das mal jemand verständlich erklären? Steh da gewaltig auf dem 
Schlauch!
Gibt es da ein Berechnungstool? Habe nichts gefunden für CC03er.

Carsten

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.