16 Bit Filter im CANNET System


Durch die Verwendung von 16 Bit Hardware ID-Filter für die „CANNET“ Protokolle werden nur die in der Seite "Stack ID Gruppen" vorgestellten Felder PRIO (Priorität), SIG (Signal) und CHAN (Channel) , sowie das höchstwertige Bit ( EXID[15] ) des WERT Feldes, von diesen Filtern erfasst. Die weitere Auswertung erfolgt für die Felder WERT (Wertekennung 0..2), DIM (Dimensionskennung) als auch für die NODE (Nodeadresse) in der Firmware.

Die Filter Register sind in der beCAN Hardware innerhalb von 3 Filter-Pages mit jeweils zwei Filterbänken untergebracht und können über das beCAN Register CAN_PSR (Page Select Register) ausgewählt werden.

In der CANNET Architektur kommt nur die 16-Bit Filtereinstellung mit FMHx = 0 und FMLx = 0 zur Anwendung. Dabei sind pro Filter ein 16 Bit ID-Wert und ein 16 Bit MASK-Wert einzustellen.

16 Bit Filter Konfiguration Konfiguration Konfiguration Konfiguration
Ext. ID [28..21] Ex.ID[20..18] R
T
R
I
D
E
Ex.ID[17..15] FMHx = 0
FMLx = 0
FMHx = 0
FMLx = 1
FMHx = 1
FMLx = 0
FMHx = 1
FMLx = 1
Std. ID [10..3] St.ID[2..0]
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
CAN_FxR1 CAN_FxR2 ID n ID n ID n ID n
CAN_FxR3 CAN_FxR4 M ID n+1 M ID n+1
CAN_FxR5 CAN_FxR6 ID n+1 ID n+2 ID n+1 ID n+2
CAN_FxR7 CAN_FxR8 M M ID n+2 ID n+3

Das „x“ in den Filterregistern bezieht sich auf die verwendete Filterbank. Verfügbar sind Filterbank 0 bis Filterbank 5, wobei jeweils zwei Filterbänke in einer Filter-Page enthalten sind.

Eine Filterbank (im nachfolgenden Beispiel die Filterbank „0“) ermöglicht so die Konfiguration von zwei unabhängigen 16 Bit ID/MASK Filtern, wobei sich folgendes Bild ergibt:

beCAN_F0Rn Register (Beispiel: Filterbank 0 ) bei 16 Bit ID / MASK Filter (FMHx = FMLx = 0)
Register Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
CAN_F0R1 EXID[28] EXID[27] EXID[26] EXID[25] EXID[24] EXID[23] EXID[22] EXID[21]
CAN_F0R2 EXID[20] EXID[19] EXID[18] RTR IDE EXID[17] EXID[16] EXID[15]
CAN_F0R3 MASK[28] MASK[27] MASK[26] MASK[25] MASK[24] MASK[23] MASK[22] MASK[21]
CAN_F0R4 MASK[20] MASK[19] MASK[18] RTR IDE MASK[17] MASK[16] MASK[15]
CAN_F0R5 EXID[28] EXID[27] EXID[26] EXID[25] EXID[24] EXID[23] EXID[22] EXID[21]
CAN_F0R6 EXID[20] EXID[19] EXID[18] RTR IDE EXID[17] EXID[16] EXID[15]
CAN_F0R7 MASK[28] MASK[27] MASK[26] MASK[25] MASK[24] MASK[23] MASK[22] MASK[21]
CAN_F0R8 MASK[20] MASK[19] MASK[18] RTR IDE MASK[17] MASK[16] MASK[15]

Als Beispiel: Die ID/MASK Konfiguration findet Anwendung für das CANNET „ALARM“ Signal und ist in nachfolgender Tabelle in den Registern CAN_F0R1 bis CAN_F0R4 dargestellt. Die weiteren Register in der zweiten Hälfte der Registerbank, CAN_F0R5 bis CAN_F0R8 sind für ein weiteres Filter reserviert.

beCAN_F0Rn Register (Beispiel: Filterbank 0 ) bei 16 Bit ID / MASK Filter für „ALARM“ und „VIRT.LINE“
Register Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
CAN_F0R1 IDH 1 0 0 0 1 0 0 0
CAN_F0R2 IDL 1 0 0 RTR = 0 IDE = 1 0 1 0
CAN_F0R3 MH 1 1 1 1 1 1 1 1
CAN_F0R4 ML 1 0 0 1 1 0 0 1
CAN_F0R5 IDH 1 0 0 1 0 0 0 1
CAN_F0R6 IDL 1 0 0 RTR = 0 IDE = 1 0 0 0
CAN_F0R7 MH 1 1 1 1 1 1 1 1
CAN_F0R8 ML 1 0 0 1 1 0 0 1

CAN_F0R1 beinhaltet das statische Bit „1“ in EXID[28], die PRIO Kennung in EXID[27:24] und die höherwertigen 3 SIG-Bits EXID[23:21]. CAN_F0R2 enthält das niedrigwertigste SIG-Bit EXID[20], die CHAN-Bits in den Bits EXID[19:18] und EXID[17:16], sowie das höchstwertige Bit der WERT Kennung in EXID[15].

In der MASKE im Register CAN_F0R4 sind die CHAN-Bits durch den Wert „0“ ausmaskiert (schraffiert) und werden nicht verglichen. Dadurch werden alle „ALARM“ Signale durch dieses Filter erfasst. Die weitere Dekodierung erfolgt per Software.

Copyright Notiz

Copyright 2019 by Dipl.Ing.(FH) Franz Henkel

Dieses Dokument sowie dessen Inhalt, insbesondere Texte, Fotografien und Grafiken, unterliegt dem Copyright (© 2019) und sind nur mit einer schriftlicher Zustimmung des Autors, Dipl.Ing.(FH) Franz Henkel zur vollständigen oder auszugsweisen Weiterverwendung in Form einer gedruckten oder elektronischen Kopie oder Replikation bzw. einer vollständigen oder auszugsweisen Bereitstellung des Inhalts in schriftlicher, gedruckter oder elektronischer Form, zu verwenden.