FCAN Rx Data Size and Type uint8(8) - - What determines Data size and type?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

FCAN Rx Data Size and Type uint8(8) - - What determines Data size and type?

868 Views
rsating
Contributor III

I'm building an interface for a controller that has 7 inputs.. The FCAN Rx block seems hard-coded to output a uint8(8), a vector of uint8 integers of size 8.  Is there a way to override the length?  And the type?  For example, if we need uint16 instead of unit8 to represent the inputs?  Or two uint8 bytes to represent each value?  The MBDT only includes examples with type uint8 and vector size 8. It is not clear from the examples if other sizes and types are possible, and if so, how. Thanks

FCAN_Rx_Data_Size_Type.png

0 Kudos
4 Replies

839 Views
Wausau
Contributor I

The clock input defines the baud rate (bit-rate) of the serial communication. The baud-rate ... The parity type can be dynamically changed between bytes without ... FIFO into the data buffer defined by RX Buffer Size. ... Writes an 8-bit value into the control register ... uint8 intSrc: Bit field containing the RX interrupts to enable Mypascoconnect login

0 Kudos

867 Views
rsating
Contributor III

Note that the size of the FCAN Tx block input is different, uint8(3), in response to input Length=2, showing the size of Data can change for the Tx block.

0 Kudos

862 Views
rsating
Contributor III

I noticed an S32DS example FlexCan_FD showing increased Rx and Tx message size 64 bytes:

S32K1xx Series Cookbook
Software examples and startup code to exercise microcontroller features
https://www.nxp.com/docs/en/application-note/AN5413.pdf

And C code for the cookbook examples available here:

https://source.codeaurora.org/external/s32support/S32K1xx_cookbook

However, I could not find a comparable example using MBDT.

Any guidance would be welcome.

0 Kudos

838 Views
rsating
Contributor III

Based on what I have learned since posting my original question, I ***suspect*** the MBDT does not yet support CAN FD, only CAN 2.0A/B (ISO 11898) which is limited to one 8-byte block. CAN FD supports 64 bytes per frame but that seems to require coding in C using S32DS.

0 Kudos