CanRecv – Přijetí zprávy sběrnice CAN
Symbol blokuPotřebná licence: CANDRV
Popis funkce
Blok CanRecv slouží k přijetí zprávy na sběrnici CAN. Blok přijímá jen zprávy
které odpovídají filtru (parametry filterId, filterIdMask, filterLength, RTR,
EXT).
Počet zpráv, které prošly filtrem za periodu (tj. od minulého spuštění bloku) určuje výstup nDRDY.
Poslední přijatá zpráva je zobrazena na výstupech msgId, data, length. Starší zprávy (s ohledem na parametr nmax) jsou dostupné pomocí bloku CanItem navázaného na výstup itemRef.
Pro správnou funkci blok musí být napojen na ovladač CanDrv, který je v režimu simpleCAN (tj. NodeMode=256). To se provede pojmenováním bloku dle vzoru <DRV>__<signal> (stejně jako u bloků Goto, OUTSTD, OUTQAD, apod.), tj. název bloku musí začínat názvem driveru a dvěma podtržítky následované názvem signálu, přičemž název signálu může být v tomto případě libovolný.
Blok umožňuje přijímat zprávy s krátkým (11bitů) i dlouhým (29 bitů) číslem zprávy (řídí se parametrem EXT) a také zprávy pro vyžádání zprávy (parametr RTR). FD režim (který umožňuje zprávy s až 64 bajty) není podpořen.
Tento blok nepropaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.
Parametr
filterId | ID zpráv, které mají být přijímány tímto blokem 0 536870911 | Long (I32) |
filterIdMask | Maska pro parametr filterId (označuje platné bity) 0 536870911 | Long (I32) |
filterLength | Počet byte ve zprávách, které mají být přijímány tímto blokem (-1 povoluje libovolnou délku) -1 8 | Long (I32) |
RTR | Příznak žádost o zprávu (RequestToReceive) on | Bool |
EXT | Rozšířený formát čísla zprávy (29bitů) on | Bool |
timeout | Pokud během této doby nepřijde packet, je indikována chyba [s] 0.0 | Double (F64) |
nmax | Maximální počet zpráv přijatých blokem během jedné periody 1 255 | Long (I32) |
Výstup
itemRef | Odkaz na další přijaté packety | Reference |
msgId | Číslo zprávy (COB-ID) | Long (I32) |
data | Data zprávy (max. 8 bajtů, nejnižší byte první) -9.22337E+18 9.22337E+18 | Large (I64) |
length | Počet datových bajtů zprávy 0 8 | Long (I32) |
nDRDY | Počet přijatých zpráv 255 | Word (U16) |
iErr | Kód chyby | Error |
age | Čas od poslední přijaté zprávy [s] 0.0 | Double (F64) |
[Předchozí] [Na začátek] [Výše] [Další]
2024 © REX Controls s.r.o., www.rexygen.com