Gast
#4239833
Servus Leute, Wie im Betreff schon angekündigt,handelt es sich um einen MCP2515 Can-Controller und dessen Filter/Maskeneinstellung. Ich habe Filter RXF0 und RXF1 auf zwei Extended-IDs gesetzt und entsprechend in der Maske RXM0 alle Bits auf 1, da nur diese zwei IDs gefiltert werden sollen. Soweit ist alles gut und der Filter funktioniert prima... Jetzt würde ich gern eine Extended und eine Standard-ID filtern,also stelle ich eine Standard-ID in Filter RXF1 ein. Das Ergebnis ist nun, das die Extended-ID weiterhin prima gefiltert wird und die Standard-ID nicht durch den Filter kommt. Grundsätzlich wird ja durch das EXIDE-Flag im Filter festgelegt ob die ID als Extended- oder Standard-ID behandelt wird....? Leider musste ich jetzt feststellen das die Maske unabhängig vom EXIDE-Flag immer auf die volle Bitbreite von 29 Bit Anwendung findet, selbst wenn nur eine Standard-ID im Filter steht. Stelle ich die Maske auf die ersten 11 Bit,dann funktionert das Filtern der Standard-ID, allerdings hab ich dann entsprechend bei den Filter der Extended-IDs durch die 11-Bit-Maske eine ganze Range (alles grösser 11 Bit) "freigeschaltet"....das soll so aber nicht sein ;-) Ist es also wirklich so,dass man dadurch in einem Empfangspuffer nicht beide ID-Typen gemischt empfangen kann?? Eine gemeinsame Nutzung der Maske für beide Typen wäre doch über das EXIDE-Flag möglich...ich kann mir nicht vorstellen das dies nicht implementiert ist :( Vielleich stand ja jemand schon mal vor dem Problem? Im Datenblatt ist alles recht schwammig erklärt.... Danke fürs lesen und beste Grüsse :o)