CAN Bus Filter

Gast #267689
Lesenswert?
• ▲
▼
Dann sollte das Maskenregister diese Bits auch checken (bezieht sich auf
das "3A") und das niederwertigste Byte ignorieren (z.B. 0xFF0
reinschreiben).

In das Kontrollregister solltest du dann einfach 0x3A0 schreiben.

Wenn du noch sagst, welchen Chip du verwendest, wird es einfacher mit
der Erklärung.
Gast #267691
Lesenswert?
• ▲
▼
Prinzipiell funktioniert das so:
Acceptance Filter B011 1010 0000
Acceptance Mask   B000 0000 1110
Der Filter würde nur 3A0 durchlassen, Bits 1-3 sind aber ausmaskiert,
somit wird 3A0,3A2,3A4,3A6,3A8,3AA,3AC und 3AE durchgelassen

oder Logisch ausgedrückt (Message Bit UND Filter Bit) ODER Mask Bit

Vermute der 82C200 ist wie der SJA 1000
Dann wäre ACR0: 0111 0100   ACR1: 0000 xxxx   x=egal
          AMR0: 0000 0001   AMR1: 1100 xxxx   für Standard Frames

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.