11 #include <uavcan/uavcan.hpp>    14 #ifndef UAVCAN_CPP_VERSION    15 # error UAVCAN_CPP_VERSION    18 #if UAVCAN_CPP_VERSION < UAVCAN_CPP11    20 # define constexpr const    33         volatile uint32_t 
dlc : 4;
    34         volatile uint32_t 
rtr : 1;
    35         volatile uint32_t 
ide : 1;
    36         volatile uint32_t 
srr : 1;
    37         volatile uint32_t 
res : 1;
    38         volatile uint32_t 
code : 4;
    39         volatile uint32_t 
res2 : 4;
    47         volatile uint32_t 
dlc : 4;
    48         volatile uint32_t 
rtr : 1;
    49         volatile uint32_t 
ide : 1;
    50         volatile uint32_t 
srr : 1;
    51         volatile uint32_t 
res : 9;
    58         volatile uint32_t 
ext : 29;
    62         volatile uint32_t 
res : 18;
    63         volatile uint32_t 
std : 11;
    71         volatile uint32_t 
res : 1; 
    72         volatile uint32_t 
ext : 29; 
    75         volatile uint32_t 
ress : 19; 
    76         volatile uint32_t 
std : 11; 
    79         volatile uint32_t 
resc : 30; 
    80         volatile uint32_t 
ide : 1; 
    81         volatile uint32_t 
rtr : 1; 
    89         volatile uint32_t 
b3 : 8;
    90         volatile uint32_t 
b2 : 8;
    91         volatile uint32_t 
b1 : 8;
    92         volatile uint32_t 
b0 : 8;
    93         volatile uint32_t 
b7 : 8;
    94         volatile uint32_t 
b6 : 8;
    95         volatile uint32_t 
b5 : 8;
    96         volatile uint32_t 
b4 : 8;
   156     uint32_t RESERVED5[12];                 
   161     uint32_t RESERVED6[448];                
   199     reinterpret_cast<CanType *
>(0x40024000) 
   200 #
if UAVCAN_KINETIS_NUM_IFACES > 1
   202     reinterpret_cast<CanType *>(0x400A4000) 
   604 constexpr 
unsigned long RXIMR0 = (1U << 0);             
   605 constexpr 
unsigned long RXIMR1 = (1U << 1);             
   606 constexpr 
unsigned long RXIMR2 = (1U << 2);             
   607 constexpr 
unsigned long RXIMR3 = (1U << 3);             
   608 constexpr 
unsigned long RXIMR4 = (1U << 4);             
   609 constexpr 
unsigned long RXIMR5 = (1U << 5);             
   610 constexpr 
unsigned long RXIMR6 = (1U << 6);             
   611 constexpr 
unsigned long RXIMR7 = (1U << 7);             
   612 constexpr 
unsigned long RXIMR8 = (1U << 8);             
   613 constexpr 
unsigned long RXIMR9 = (1U << 9);             
   639 #if UAVCAN_CPP_VERSION < UAVCAN_CPP11 constexpr unsigned long CAN_IMASK2_15
constexpr unsigned long CTRL2_RFFN_56MB(6U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CAN_IMASK1_28
constexpr unsigned long CAN_IMASK2_24
constexpr unsigned long MCR_IDAM_MASK
constexpr unsigned long CAN_IMASK1_27
constexpr unsigned long ESR1_FRMERR
constexpr unsigned long CTRL2_TASD_MASK
constexpr unsigned long CAN_IFLAG2_13
constexpr unsigned long CAN_IMASK1_10
constexpr unsigned long ESR1_BOFFINT
constexpr unsigned long CAN_IMASK2_25
constexpr unsigned long CTRL1_LPB
constexpr unsigned long RXIMR31
constexpr unsigned long MCR_FRZACK
constexpr unsigned long ESR1_RX
constexpr unsigned long RXMGMASK30
constexpr unsigned long RXM14MASK31
constexpr unsigned long RXMGMASK21
constexpr unsigned long CAN_IFLAG1_24
constexpr unsigned long CAN_IFLAG2_2
constexpr unsigned long CAN_IFLAG2_15
constexpr unsigned long CAN_IMASK1_2
constexpr unsigned long CAN_IFLAG1_5
constexpr unsigned long RXM15MASK13
constexpr unsigned long ESR1_RWRNINT
constexpr unsigned long CAN_IMASK2_4
constexpr unsigned long CAN_IMASK1_0
constexpr unsigned long CAN_IMASK1_6
constexpr unsigned long MCR_FRZ
constexpr unsigned long RXM14MASK20
constexpr unsigned long RXM15MASK28
constexpr unsigned long CTRL2_MRP
constexpr unsigned long CAN_IFLAG1_14
constexpr unsigned long RXMGMASK2
constexpr unsigned long CAN_IFLAG2_22
constexpr unsigned long CAN_IMASK2_17
constexpr unsigned long CTRL2_RFFN_96MB(11U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CTRL2_RFFN_104MB(12U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CAN_IMASK1_31
constexpr unsigned long RXM15MASK5
constexpr unsigned long CTRL1_ROPSEG_MASK
constexpr unsigned long CAN_IMASK2_2
constexpr unsigned long CTRL1_ROPSEG_SHIFT
constexpr unsigned long ESR1_WAKINT
constexpr unsigned long RXM15MASK25
constexpr unsigned long ECR_RXERRCNT_SHIFT
constexpr unsigned long CAN_IMASK2_5
constexpr unsigned long CTRL1_TSYN
constexpr unsigned long CAN_IMASK2_19
constexpr unsigned long ESR1_FLTCONF_ACTV
constexpr unsigned long RXFIR_IDHIT_SHIFT
constexpr unsigned long ESR1_RXWRN
constexpr unsigned long CTRL2_RFFN_48MB(5U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long RXM15MASK11
constexpr unsigned long RXM14MASK30
constexpr unsigned long RXM15MASK0
constexpr unsigned long RXIMR15
constexpr unsigned long CAN_IMASK1_11
constexpr unsigned long MCR_IDAM_FMTD(3U<< MCR_IDAM_SHIFT)
constexpr unsigned long MCR_SRXDIS
constexpr unsigned long CAN_IFLAG1_25
constexpr unsigned long CAN_IFLAG1_2
constexpr unsigned long MCR_IDAM_FMTA(0U<< MCR_IDAM_SHIFT)
constexpr unsigned long CAN_IFLAG2_23
volatile uint32_t RX15MASK
constexpr unsigned long RXMGMASK17
constexpr unsigned long RXM14MASK26
constexpr unsigned long RXM15MASK9
constexpr unsigned long CAN_IFLAG1_17
constexpr unsigned long CAN_IMASK1_7
constexpr unsigned long MCR_MAXMB_MASK
constexpr unsigned long CTRL2_RFFN_72MB(8U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CAN_IFLAG1_20
constexpr unsigned long RXM14MASK19
constexpr unsigned long CAN_IMASK2_6
constexpr unsigned long RXIMR23
constexpr unsigned long RXMGMASK15
constexpr unsigned long RXM15MASK17
constexpr unsigned long CTRL2_RFFN_SHIFT
constexpr unsigned long CAN_IMASK2_3
constexpr unsigned long CAN_IMASK1_8
constexpr unsigned long RXM15MASK10
constexpr unsigned long CAN_IMASK2_28
constexpr unsigned long CAN_IFLAG1_30
constexpr unsigned long MCR_MDIS
constexpr unsigned long RXIMR6
constexpr unsigned long RXMGMASK20
constexpr unsigned long RXM14MASK23
constexpr unsigned long CTRL2_RFFN_64MB(7U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CAN_IFLAG2_18
constexpr unsigned long CAN_FIFO_NE
constexpr unsigned long RXM14MASK12
constexpr unsigned long RXM15MASK22
constexpr unsigned long ESR1_TWRNINT
constexpr unsigned long RXMGMASK22
constexpr unsigned long RXFIR_IDHIT_MASK
constexpr unsigned long RXIMR19
constexpr unsigned long CAN_IMASK2_16
constexpr unsigned long CAN_IMASK2_1
constexpr unsigned long CAN_IMASK2_22
constexpr unsigned long CTRL2_TASD_SHIFT
constexpr unsigned long MCR_LPRIOEN
constexpr unsigned long RXMGMASK8
constexpr unsigned long RXMGMASK16
constexpr unsigned long CAN_IMASK1_19
constexpr unsigned long CTRL1_RJW_SHIFT
constexpr unsigned long CAN_IMASK2_27
constexpr unsigned long CAN_IFLAG2_0
constexpr unsigned long RXM15MASK15
constexpr unsigned long CAN_IMASK1_23
constexpr unsigned long CAN_IMASK1_20
constexpr unsigned long RXM14MASK16
constexpr unsigned long CAN_IFLAG2_4
constexpr unsigned long ESR1_FLTCONF_OFF
constexpr unsigned long RXM15MASK19
constexpr unsigned long RXM14MASK8
constexpr unsigned long RXMGMASK9
constexpr unsigned long RXMGMASK5
constexpr unsigned long CTRL1_TWRNMSK
constexpr unsigned long CAN_IMASK1_26
constexpr unsigned long CAN_IFLAG2_30
constexpr unsigned long RXM15MASK20
constexpr unsigned long CTRL1_PSEG1_SHIFT
constexpr unsigned long ESR1_SYNCH
constexpr unsigned long CAN_IMASK2_21
constexpr unsigned long CTRL1_PSEG2_SHIFT
constexpr unsigned long RXM14MASK28
constexpr unsigned long RXM14MASK24
constexpr unsigned long CAN_IMASK1_29
constexpr unsigned long RXIMR8
constexpr unsigned long CRCR_MBCRC_SHIFT
constexpr unsigned long RXM14MASK9
volatile uint32_t RXFGMASK
constexpr unsigned long RXM15MASK12
constexpr unsigned long RXM15MASK4
constexpr unsigned long ESR1_TX
constexpr unsigned long RXMGMASK1
constexpr unsigned long ESR1_TXWRN
constexpr unsigned long RXIMR10
constexpr unsigned long RXIMR2
constexpr unsigned long CAN_IFLAG2_27
constexpr unsigned long RXIMR28
constexpr unsigned long RXIMR0
constexpr unsigned long RXIMR20
constexpr unsigned long RXMGMASK6
constexpr unsigned long CAN_IMASK1_12
constexpr unsigned long CTRL2_RFFN_88MB(10U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long RXMGMASK11
constexpr unsigned long RXIMR1
constexpr unsigned long RXMGMASK27
constexpr unsigned long MCR_IRMQ
constexpr unsigned long CTRL2_RFFN_120MB(14U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long RXMGMASK29
constexpr unsigned long CAN_IMASK2_14
constexpr unsigned long CAN_IFLAG2_7
constexpr unsigned long RXIMR7
constexpr unsigned long ESR1_BIT1ERR
constexpr unsigned long CAN_IFLAG2_6
constexpr unsigned long ECR_TXERRCNT_MASK
constexpr unsigned long RXIMR29
constexpr unsigned long CAN_IFLAG2_12
constexpr unsigned long CTRL2_WRMFRZ
constexpr unsigned long MCR_IDAM_SHIFT
constexpr unsigned long RXMGMASK26
constexpr unsigned long CAN_IMASK2_0
constexpr unsigned long CAN_IFLAG1_1
constexpr unsigned long RXM14MASK11
constexpr unsigned long CAN_IMASK1_4
constexpr unsigned long RXIMR16
constexpr unsigned long RXM14MASK22
constexpr unsigned long CAN_IFLAG2_8
constexpr unsigned long CAN_IFLAG2_24
constexpr unsigned long CAN_IFLAG1_18
constexpr unsigned long CAN_IFLAG1_13
constexpr unsigned long MCR_NOTRDY
constexpr unsigned long CAN_IFLAG2_16
constexpr unsigned long CAN_IFLAG1_6
constexpr unsigned long RXMGMASK18
constexpr unsigned long ESR1_FLTCONF_PASV
constexpr unsigned long CAN_IMASK1_3
constexpr unsigned long CAN_IFLAG1_4
constexpr unsigned long CAN_IFLAG1_21
constexpr unsigned long RXM15MASK29
constexpr unsigned long MCR_SUPV
constexpr unsigned long RXM14MASK6
constexpr unsigned long RXMGMASK13
constexpr unsigned long RXMGMASK3
constexpr unsigned long CAN_IMASK1_9
constexpr unsigned long CAN_IFLAG2_21
constexpr unsigned long CAN_IMASK2_7
constexpr unsigned long CAN_IMASK2_12
constexpr unsigned long CAN_IFLAG1_15
constexpr unsigned long RXM15MASK30
constexpr unsigned long CAN_IMASK2_31
constexpr unsigned long RXM14MASK15
constexpr unsigned long CAN_IFLAG1_19
constexpr unsigned long CAN_IMASK1_24
constexpr unsigned long MCR_IDAM_FMTC(2U<< MCR_IDAM_SHIFT)
constexpr unsigned long CAN_IFLAG2_28
constexpr unsigned long RXM14MASK21
constexpr unsigned long CTRL1_ERRMSK
constexpr unsigned long RXIMR22
constexpr unsigned long CRCR_MBCRC_MASK
constexpr unsigned long RXM15MASK31
constexpr unsigned long CAN_IFLAG1_0
constexpr unsigned long CAN_IMASK1_21
constexpr unsigned long CAN_IMASK1_30
constexpr unsigned long CTRL2_RFFN_24MB(2U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long RXM15MASK7
constexpr unsigned long CAN_IMASK1_22
constexpr unsigned long CAN_IFLAG1_29
constexpr unsigned long RXM15MASK14
constexpr unsigned long CAN_IFLAG2_29
constexpr unsigned long ESR2_IMB
constexpr unsigned long RXM14MASK27
constexpr unsigned long CAN_IMASK1_1
constexpr unsigned long RXIMR9
constexpr unsigned long CAN_IFLAG2_17
constexpr unsigned long CAN_IFLAG1_31
constexpr unsigned long ESR1_CRCERR
constexpr unsigned long CAN_IFLAG2_5
constexpr unsigned long RXM15MASK1
constexpr unsigned long CAN_IFLAG1_23
constexpr unsigned long RXM14MASK3
constexpr unsigned long RXMGMASK23
constexpr unsigned long RXM15MASK23
constexpr unsigned long CAN_IFLAG1_8
constexpr unsigned long RXIMR27
constexpr unsigned long RXM14MASK2
constexpr unsigned long CAN_IFLAG2_31
constexpr unsigned long CAN_IMASK1_18
volatile uint32_t time_stamp
constexpr unsigned long RXIMR3
constexpr unsigned long CTRL1_RJW_MASK
constexpr unsigned long ESR1_ACKERR
constexpr unsigned long CAN_IMASK2_26
constexpr unsigned long TIMER_MASK
constexpr unsigned long CTRL2_RFFN_32MB(3U<< CTRL2_RFFN_SHIFT)
CanType *const Can[UAVCAN_KINETIS_NUM_IFACES]
CANx register sets. 
constexpr unsigned long CAN_IFLAG1_7
constexpr unsigned long CAN_IFLAG2_19
constexpr unsigned long ESR1_STFERR
constexpr unsigned long CRCR_TXCRC_SHIFT
constexpr unsigned long RXIMR5
constexpr unsigned long RXM14MASK0
constexpr unsigned long RXIMR14
constexpr unsigned long CAN_IFLAG1_12
volatile uint32_t RXMGMASK
constexpr unsigned long CAN_IMASK2_9
constexpr unsigned long RXMGMASK10
constexpr unsigned long RXMGMASK19
constexpr unsigned long RXIMR24
constexpr unsigned long CAN_MCR_IDAM_FMTB(1U<< MCR_IDAM_SHIFT)
constexpr unsigned long CTRL1_BOFFMSK
constexpr unsigned long RXMGMASK28
constexpr unsigned long MCR_WAKMSK
volatile uint32_t time_stamp
constexpr unsigned long RXIMR17
constexpr unsigned long CAN_IFLAG1_16
constexpr unsigned long RXM15MASK6
constexpr unsigned long CTRL1_PSEG2_MASK
constexpr unsigned long CTRL2_RFFN_16MB(1U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long RXM15MASK2
constexpr unsigned long CAN_IFLAG1_10
constexpr unsigned long ESR2_LPTM_MASK
constexpr unsigned long RXM14MASK13
constexpr unsigned long CTRL1_BOFFREC
constexpr unsigned long RXMGMASK12
constexpr unsigned long RXM14MASK18
constexpr unsigned long CAN_IMASK2_13
constexpr unsigned long ECR_TXERRCNT_SHIFT
constexpr unsigned long RXM15MASK3
constexpr unsigned long CAN_IFLAG2_20
constexpr unsigned long RXM14MASK17
constexpr unsigned long RXMGMASK24
constexpr unsigned long RXM15MASK16
constexpr unsigned long RXM14MASK5
constexpr unsigned long RXMGMASK14
constexpr unsigned long MCR_AEN
constexpr unsigned long RXMGMASK31
constexpr unsigned long RXM15MASK24
constexpr unsigned long CAN_IFLAG2_9
constexpr unsigned long CTRL1_RWRNMSK
constexpr unsigned long CAN_IFLAG2_3
constexpr unsigned long RXM15MASK27
constexpr unsigned long CTRL1_LOM
constexpr unsigned long CTRL1_PSEG1_MASK
constexpr unsigned long CAN_FIFO_WARN
constexpr unsigned long RXM14MASK14
constexpr unsigned long RXIMR11
constexpr unsigned long RXIMR13
constexpr unsigned long RXM14MASK4
constexpr unsigned long CAN_IFLAG2_26
constexpr unsigned long CAN_IMASK2_23
constexpr unsigned long RXIMR30
constexpr unsigned long ESR1_ERRINT
constexpr unsigned long ESR1_BIT0ERR
constexpr unsigned long CTRL1_SMP
constexpr unsigned long CAN_IFLAG2_25
constexpr unsigned long ECR_RXERRCNT_MASK
constexpr unsigned long CAN_IFLAG1_3
constexpr unsigned long MCR_MAXMB_SHIFT
volatile uint32_t RX14MASK
constexpr unsigned long CRCR_TXCRC_MASK
constexpr unsigned long CTRL2_RFFN_MASK(15U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long MCR_SOFTRST
constexpr unsigned long CTRL1_PRESDIV_SHIFT
constexpr unsigned long RXMGMASK0
constexpr unsigned long MCR_WAKSRC
constexpr unsigned long CAN_IMASK2_20
constexpr unsigned long RXM14MASK7
constexpr unsigned long CAN_IMASK1_17
constexpr unsigned long RXIMR25
constexpr unsigned long CAN_IMASK1_14
constexpr unsigned long CTRL2_RFFN_8MB(0U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CTRL2_RFFN_112MB(13U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CAN_IFLAG1_22
constexpr unsigned long CAN_IFLAG2_11
constexpr unsigned long CTRL1_LBUF
constexpr unsigned long RXIMR21
constexpr unsigned long RXIMR18
constexpr unsigned long ESR2_VPS
constexpr unsigned long CAN_IFLAG1_11
constexpr unsigned long CAN_IMASK2_29
constexpr unsigned long MCR_RFEN
constexpr unsigned long CAN_IFLAG2_14
constexpr unsigned long CAN_IFLAG2_10
constexpr unsigned long RXMGMASK7
constexpr unsigned long ESR1_IDLE
constexpr unsigned long MCR_WRNEN
constexpr unsigned long CAN_IMASK2_18
constexpr unsigned long CAN_IMASK1_15
constexpr unsigned long MCR_HALT
constexpr unsigned long RXMGMASK4
constexpr unsigned long CTRL2_RRS
constexpr unsigned long MCR_LPMACK
constexpr unsigned long RXIMR26
constexpr unsigned long CTRL2_RFFN_128MB(15U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long RXM15MASK26
constexpr unsigned long RXM14MASK25
constexpr unsigned long CAN_IMASK2_8
constexpr unsigned long RXM15MASK21
constexpr unsigned long CAN_IFLAG1_28
constexpr unsigned long CTRL1_CLKSRC
constexpr unsigned long CAN_FIFO_OV
constexpr unsigned long CTRL2_EACEN
constexpr unsigned long RXIMR4
constexpr unsigned long CAN_IMASK2_11
constexpr unsigned long CAN_IMASK2_30
constexpr unsigned long RXMGMASK25
constexpr unsigned long ESR1_FLTCONF_MASK
constexpr unsigned long MCR_SLFWAK
constexpr unsigned long RXM15MASK8
constexpr unsigned long ESR2_LPTM_SHIFT
constexpr unsigned long ESR1_FLTCONF_SHIFT
constexpr unsigned long CAN_IFLAG2_1
constexpr unsigned long CAN_IFLAG1_26
constexpr unsigned long RXM14MASK10
constexpr unsigned long CTRL1_PRESDIV_MASK
constexpr unsigned long RXM14MASK1
constexpr unsigned long CAN_IMASK1_13
constexpr unsigned long CAN_IFLAG1_9
constexpr unsigned long CAN_IMASK1_25
constexpr unsigned long CAN_IMASK2_10
constexpr unsigned long TIMER_SHIFT
constexpr unsigned long RXIMR12
constexpr unsigned long CAN_IMASK1_5
constexpr unsigned long RXM15MASK18
constexpr unsigned long RXM14MASK29
constexpr unsigned long CAN_IFLAG1_27
constexpr unsigned long CTRL2_RFFN_80MB(9U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CTRL2_RFFN_40MB(4U<< CTRL2_RFFN_SHIFT)
constexpr unsigned long CAN_IMASK1_16