The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.
Dependents: hello SerialTestv11 SerialTestv12 Sierpinski ... more
mbed 2
This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.
TARGET_NUCLEO_H743ZI/TOOLCHAIN_ARM_STD/stm32h7xx_hal_fdcan.h@172:65be27845400, 2019-02-20 (annotated)
- Committer:
- AnnaBridge
- Date:
- Wed Feb 20 20:53:29 2019 +0000
- Revision:
- 172:65be27845400
mbed library release version 165
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
AnnaBridge | 172:65be27845400 | 1 | /** |
AnnaBridge | 172:65be27845400 | 2 | ****************************************************************************** |
AnnaBridge | 172:65be27845400 | 3 | * @file stm32h7xx_hal_fdcan.h |
AnnaBridge | 172:65be27845400 | 4 | * @author MCD Application Team |
AnnaBridge | 172:65be27845400 | 5 | * @brief Header file of FDCAN HAL module. |
AnnaBridge | 172:65be27845400 | 6 | ****************************************************************************** |
AnnaBridge | 172:65be27845400 | 7 | * @attention |
AnnaBridge | 172:65be27845400 | 8 | * |
AnnaBridge | 172:65be27845400 | 9 | * <h2><center>© Copyright (c) 2017 STMicroelectronics. |
AnnaBridge | 172:65be27845400 | 10 | * All rights reserved.</center></h2> |
AnnaBridge | 172:65be27845400 | 11 | * |
AnnaBridge | 172:65be27845400 | 12 | * This software component is licensed by ST under BSD 3-Clause license, |
AnnaBridge | 172:65be27845400 | 13 | * the "License"; You may not use this file except in compliance with the |
AnnaBridge | 172:65be27845400 | 14 | * License. You may obtain a copy of the License at: |
AnnaBridge | 172:65be27845400 | 15 | * opensource.org/licenses/BSD-3-Clause |
AnnaBridge | 172:65be27845400 | 16 | * |
AnnaBridge | 172:65be27845400 | 17 | ****************************************************************************** |
AnnaBridge | 172:65be27845400 | 18 | */ |
AnnaBridge | 172:65be27845400 | 19 | |
AnnaBridge | 172:65be27845400 | 20 | /* Define to prevent recursive inclusion -------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 21 | #ifndef STM32H7xx_HAL_FDCAN_H |
AnnaBridge | 172:65be27845400 | 22 | #define STM32H7xx_HAL_FDCAN_H |
AnnaBridge | 172:65be27845400 | 23 | |
AnnaBridge | 172:65be27845400 | 24 | #ifdef __cplusplus |
AnnaBridge | 172:65be27845400 | 25 | extern "C" { |
AnnaBridge | 172:65be27845400 | 26 | #endif |
AnnaBridge | 172:65be27845400 | 27 | |
AnnaBridge | 172:65be27845400 | 28 | /* Includes ------------------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 29 | #include "stm32h7xx_hal_def.h" |
AnnaBridge | 172:65be27845400 | 30 | |
AnnaBridge | 172:65be27845400 | 31 | /** @addtogroup STM32H7xx_HAL_Driver |
AnnaBridge | 172:65be27845400 | 32 | * @{ |
AnnaBridge | 172:65be27845400 | 33 | */ |
AnnaBridge | 172:65be27845400 | 34 | |
AnnaBridge | 172:65be27845400 | 35 | /** @addtogroup FDCAN |
AnnaBridge | 172:65be27845400 | 36 | * @{ |
AnnaBridge | 172:65be27845400 | 37 | */ |
AnnaBridge | 172:65be27845400 | 38 | |
AnnaBridge | 172:65be27845400 | 39 | /* Exported types ------------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 40 | /** @defgroup FDCAN_Exported_Types FDCAN Exported Types |
AnnaBridge | 172:65be27845400 | 41 | * @{ |
AnnaBridge | 172:65be27845400 | 42 | */ |
AnnaBridge | 172:65be27845400 | 43 | |
AnnaBridge | 172:65be27845400 | 44 | /** |
AnnaBridge | 172:65be27845400 | 45 | * @brief HAL State structures definition |
AnnaBridge | 172:65be27845400 | 46 | */ |
AnnaBridge | 172:65be27845400 | 47 | typedef enum |
AnnaBridge | 172:65be27845400 | 48 | { |
AnnaBridge | 172:65be27845400 | 49 | HAL_FDCAN_STATE_RESET = 0x00U, /*!< FDCAN not yet initialized or disabled */ |
AnnaBridge | 172:65be27845400 | 50 | HAL_FDCAN_STATE_READY = 0x01U, /*!< FDCAN initialized and ready for use */ |
AnnaBridge | 172:65be27845400 | 51 | HAL_FDCAN_STATE_BUSY = 0x02U, /*!< FDCAN process is ongoing */ |
AnnaBridge | 172:65be27845400 | 52 | HAL_FDCAN_STATE_ERROR = 0x03U /*!< FDCAN error state */ |
AnnaBridge | 172:65be27845400 | 53 | } HAL_FDCAN_StateTypeDef; |
AnnaBridge | 172:65be27845400 | 54 | |
AnnaBridge | 172:65be27845400 | 55 | /** |
AnnaBridge | 172:65be27845400 | 56 | * @brief FDCAN Init structure definition |
AnnaBridge | 172:65be27845400 | 57 | */ |
AnnaBridge | 172:65be27845400 | 58 | typedef struct |
AnnaBridge | 172:65be27845400 | 59 | { |
AnnaBridge | 172:65be27845400 | 60 | uint32_t FrameFormat; /*!< Specifies the FDCAN frame format. |
AnnaBridge | 172:65be27845400 | 61 | This parameter can be a value of @ref FDCAN_frame_format */ |
AnnaBridge | 172:65be27845400 | 62 | |
AnnaBridge | 172:65be27845400 | 63 | uint32_t Mode; /*!< Specifies the FDCAN mode. |
AnnaBridge | 172:65be27845400 | 64 | This parameter can be a value of @ref FDCAN_operating_mode */ |
AnnaBridge | 172:65be27845400 | 65 | |
AnnaBridge | 172:65be27845400 | 66 | FunctionalState AutoRetransmission; /*!< Enable or disable the automatic retransmission mode. |
AnnaBridge | 172:65be27845400 | 67 | This parameter can be set to ENABLE or DISABLE */ |
AnnaBridge | 172:65be27845400 | 68 | |
AnnaBridge | 172:65be27845400 | 69 | FunctionalState TransmitPause; /*!< Enable or disable the Transmit Pause feature. |
AnnaBridge | 172:65be27845400 | 70 | This parameter can be set to ENABLE or DISABLE */ |
AnnaBridge | 172:65be27845400 | 71 | |
AnnaBridge | 172:65be27845400 | 72 | FunctionalState ProtocolException; /*!< Enable or disable the Protocol Exception Handling. |
AnnaBridge | 172:65be27845400 | 73 | This parameter can be set to ENABLE or DISABLE */ |
AnnaBridge | 172:65be27845400 | 74 | |
AnnaBridge | 172:65be27845400 | 75 | uint32_t NominalPrescaler; /*!< Specifies the value by which the oscillator frequency is |
AnnaBridge | 172:65be27845400 | 76 | divided for generating the nominal bit time quanta. |
AnnaBridge | 172:65be27845400 | 77 | This parameter must be a number between 1 and 512 */ |
AnnaBridge | 172:65be27845400 | 78 | |
AnnaBridge | 172:65be27845400 | 79 | uint32_t NominalSyncJumpWidth; /*!< Specifies the maximum number of time quanta the FDCAN |
AnnaBridge | 172:65be27845400 | 80 | hardware is allowed to lengthen or shorten a bit to perform |
AnnaBridge | 172:65be27845400 | 81 | resynchronization. |
AnnaBridge | 172:65be27845400 | 82 | This parameter must be a number between 1 and 128 */ |
AnnaBridge | 172:65be27845400 | 83 | |
AnnaBridge | 172:65be27845400 | 84 | uint32_t NominalTimeSeg1; /*!< Specifies the number of time quanta in Bit Segment 1. |
AnnaBridge | 172:65be27845400 | 85 | This parameter must be a number between 2 and 256 */ |
AnnaBridge | 172:65be27845400 | 86 | |
AnnaBridge | 172:65be27845400 | 87 | uint32_t NominalTimeSeg2; /*!< Specifies the number of time quanta in Bit Segment 2. |
AnnaBridge | 172:65be27845400 | 88 | This parameter must be a number between 2 and 128 */ |
AnnaBridge | 172:65be27845400 | 89 | |
AnnaBridge | 172:65be27845400 | 90 | uint32_t DataPrescaler; /*!< Specifies the value by which the oscillator frequency is |
AnnaBridge | 172:65be27845400 | 91 | divided for generating the data bit time quanta. |
AnnaBridge | 172:65be27845400 | 92 | This parameter must be a number between 1 and 32 */ |
AnnaBridge | 172:65be27845400 | 93 | |
AnnaBridge | 172:65be27845400 | 94 | uint32_t DataSyncJumpWidth; /*!< Specifies the maximum number of time quanta the FDCAN |
AnnaBridge | 172:65be27845400 | 95 | hardware is allowed to lengthen or shorten a data bit to |
AnnaBridge | 172:65be27845400 | 96 | perform resynchronization. |
AnnaBridge | 172:65be27845400 | 97 | This parameter must be a number between 1 and 16 */ |
AnnaBridge | 172:65be27845400 | 98 | |
AnnaBridge | 172:65be27845400 | 99 | uint32_t DataTimeSeg1; /*!< Specifies the number of time quanta in Data Bit Segment 1. |
AnnaBridge | 172:65be27845400 | 100 | This parameter must be a number between 1 and 32 */ |
AnnaBridge | 172:65be27845400 | 101 | |
AnnaBridge | 172:65be27845400 | 102 | uint32_t DataTimeSeg2; /*!< Specifies the number of time quanta in Data Bit Segment 2. |
AnnaBridge | 172:65be27845400 | 103 | This parameter must be a number between 1 and 16 */ |
AnnaBridge | 172:65be27845400 | 104 | |
AnnaBridge | 172:65be27845400 | 105 | uint32_t MessageRAMOffset; /*!< Specifies the message RAM start address. |
AnnaBridge | 172:65be27845400 | 106 | This parameter must be a number between 0 and 2560 */ |
AnnaBridge | 172:65be27845400 | 107 | |
AnnaBridge | 172:65be27845400 | 108 | uint32_t StdFiltersNbr; /*!< Specifies the number of standard Message ID filters. |
AnnaBridge | 172:65be27845400 | 109 | This parameter must be a number between 0 and 128 */ |
AnnaBridge | 172:65be27845400 | 110 | |
AnnaBridge | 172:65be27845400 | 111 | uint32_t ExtFiltersNbr; /*!< Specifies the number of extended Message ID filters. |
AnnaBridge | 172:65be27845400 | 112 | This parameter must be a number between 0 and 64 */ |
AnnaBridge | 172:65be27845400 | 113 | |
AnnaBridge | 172:65be27845400 | 114 | uint32_t RxFifo0ElmtsNbr; /*!< Specifies the number of Rx FIFO0 Elements. |
AnnaBridge | 172:65be27845400 | 115 | This parameter must be a number between 0 and 64 */ |
AnnaBridge | 172:65be27845400 | 116 | |
AnnaBridge | 172:65be27845400 | 117 | uint32_t RxFifo0ElmtSize; /*!< Specifies the Data Field Size in an Rx FIFO 0 element. |
AnnaBridge | 172:65be27845400 | 118 | This parameter can be a value of @ref FDCAN_data_field_size */ |
AnnaBridge | 172:65be27845400 | 119 | |
AnnaBridge | 172:65be27845400 | 120 | uint32_t RxFifo1ElmtsNbr; /*!< Specifies the number of Rx FIFO 1 Elements. |
AnnaBridge | 172:65be27845400 | 121 | This parameter must be a number between 0 and 64 */ |
AnnaBridge | 172:65be27845400 | 122 | |
AnnaBridge | 172:65be27845400 | 123 | uint32_t RxFifo1ElmtSize; /*!< Specifies the Data Field Size in an Rx FIFO 1 element. |
AnnaBridge | 172:65be27845400 | 124 | This parameter can be a value of @ref FDCAN_data_field_size */ |
AnnaBridge | 172:65be27845400 | 125 | |
AnnaBridge | 172:65be27845400 | 126 | uint32_t RxBuffersNbr; /*!< Specifies the number of Dedicated Rx Buffer elements. |
AnnaBridge | 172:65be27845400 | 127 | This parameter must be a number between 0 and 64 */ |
AnnaBridge | 172:65be27845400 | 128 | |
AnnaBridge | 172:65be27845400 | 129 | uint32_t RxBufferSize; /*!< Specifies the Data Field Size in an Rx Buffer element. |
AnnaBridge | 172:65be27845400 | 130 | This parameter can be a value of @ref FDCAN_data_field_size */ |
AnnaBridge | 172:65be27845400 | 131 | |
AnnaBridge | 172:65be27845400 | 132 | uint32_t TxEventsNbr; /*!< Specifies the number of Tx Event FIFO elements. |
AnnaBridge | 172:65be27845400 | 133 | This parameter must be a number between 0 and 32 */ |
AnnaBridge | 172:65be27845400 | 134 | |
AnnaBridge | 172:65be27845400 | 135 | uint32_t TxBuffersNbr; /*!< Specifies the number of Dedicated Tx Buffers. |
AnnaBridge | 172:65be27845400 | 136 | This parameter must be a number between 0 and 32 */ |
AnnaBridge | 172:65be27845400 | 137 | |
AnnaBridge | 172:65be27845400 | 138 | uint32_t TxFifoQueueElmtsNbr; /*!< Specifies the number of Tx Buffers used for Tx FIFO/Queue. |
AnnaBridge | 172:65be27845400 | 139 | This parameter must be a number between 0 and 32 */ |
AnnaBridge | 172:65be27845400 | 140 | |
AnnaBridge | 172:65be27845400 | 141 | uint32_t TxFifoQueueMode; /*!< Tx FIFO/Queue Mode selection. |
AnnaBridge | 172:65be27845400 | 142 | This parameter can be a value of @ref FDCAN_txFifoQueue_Mode */ |
AnnaBridge | 172:65be27845400 | 143 | |
AnnaBridge | 172:65be27845400 | 144 | uint32_t TxElmtSize; /*!< Specifies the Data Field Size in a Tx Element. |
AnnaBridge | 172:65be27845400 | 145 | This parameter can be a value of @ref FDCAN_data_field_size */ |
AnnaBridge | 172:65be27845400 | 146 | |
AnnaBridge | 172:65be27845400 | 147 | } FDCAN_InitTypeDef; |
AnnaBridge | 172:65be27845400 | 148 | |
AnnaBridge | 172:65be27845400 | 149 | /** |
AnnaBridge | 172:65be27845400 | 150 | * @brief FDCAN clock calibration unit structure definition |
AnnaBridge | 172:65be27845400 | 151 | */ |
AnnaBridge | 172:65be27845400 | 152 | typedef struct |
AnnaBridge | 172:65be27845400 | 153 | { |
AnnaBridge | 172:65be27845400 | 154 | uint32_t ClockCalibration; /*!< Enable or disable the clock calibration. |
AnnaBridge | 172:65be27845400 | 155 | This parameter can be a value of @ref FDCAN_clock_calibration. */ |
AnnaBridge | 172:65be27845400 | 156 | |
AnnaBridge | 172:65be27845400 | 157 | uint32_t ClockDivider; /*!< Specifies the FDCAN kernel clock divider when the clock calibration |
AnnaBridge | 172:65be27845400 | 158 | is bypassed. |
AnnaBridge | 172:65be27845400 | 159 | This parameter can be a value of @ref FDCAN_clock_divider */ |
AnnaBridge | 172:65be27845400 | 160 | |
AnnaBridge | 172:65be27845400 | 161 | uint32_t MinOscClkPeriods; /*!< Configures the minimum number of periods in two CAN bit times. The |
AnnaBridge | 172:65be27845400 | 162 | actual configured number of periods is MinOscClkPeriods x 32. |
AnnaBridge | 172:65be27845400 | 163 | This parameter must be a number between 0x00 and 0xFF */ |
AnnaBridge | 172:65be27845400 | 164 | |
AnnaBridge | 172:65be27845400 | 165 | uint32_t CalFieldLength; /*!< Specifies the calibration field length. |
AnnaBridge | 172:65be27845400 | 166 | This parameter can be a value of @ref FDCAN_calibration_field_length */ |
AnnaBridge | 172:65be27845400 | 167 | |
AnnaBridge | 172:65be27845400 | 168 | uint32_t TimeQuantaPerBitTime; /*!< Configures the number of time quanta per bit time. |
AnnaBridge | 172:65be27845400 | 169 | This parameter must be a number between 4 and 25 */ |
AnnaBridge | 172:65be27845400 | 170 | |
AnnaBridge | 172:65be27845400 | 171 | uint32_t WatchdogStartValue; /*!< Start value of the Calibration Watchdog Counter. |
AnnaBridge | 172:65be27845400 | 172 | If set to zero the counter is disabled. |
AnnaBridge | 172:65be27845400 | 173 | This parameter must be a number between 0x0000 and 0xFFFF */ |
AnnaBridge | 172:65be27845400 | 174 | |
AnnaBridge | 172:65be27845400 | 175 | } FDCAN_ClkCalUnitTypeDef; |
AnnaBridge | 172:65be27845400 | 176 | |
AnnaBridge | 172:65be27845400 | 177 | /** |
AnnaBridge | 172:65be27845400 | 178 | * @brief FDCAN filter structure definition |
AnnaBridge | 172:65be27845400 | 179 | */ |
AnnaBridge | 172:65be27845400 | 180 | typedef struct |
AnnaBridge | 172:65be27845400 | 181 | { |
AnnaBridge | 172:65be27845400 | 182 | uint32_t IdType; /*!< Specifies the identifier type. |
AnnaBridge | 172:65be27845400 | 183 | This parameter can be a value of @ref FDCAN_id_type */ |
AnnaBridge | 172:65be27845400 | 184 | |
AnnaBridge | 172:65be27845400 | 185 | uint32_t FilterIndex; /*!< Specifies the filter which will be initialized. |
AnnaBridge | 172:65be27845400 | 186 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 187 | - 0 and 127, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 188 | - 0 and 63, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 189 | |
AnnaBridge | 172:65be27845400 | 190 | uint32_t FilterType; /*!< Specifies the filter type. |
AnnaBridge | 172:65be27845400 | 191 | This parameter can be a value of @ref FDCAN_filter_type. |
AnnaBridge | 172:65be27845400 | 192 | The value FDCAN_EXT_FILTER_RANGE_NO_EIDM is permitted |
AnnaBridge | 172:65be27845400 | 193 | only when IdType is FDCAN_EXTENDED_ID. |
AnnaBridge | 172:65be27845400 | 194 | This parameter is ignored if FilterConfig is set to |
AnnaBridge | 172:65be27845400 | 195 | FDCAN_FILTER_TO_RXBUFFER */ |
AnnaBridge | 172:65be27845400 | 196 | |
AnnaBridge | 172:65be27845400 | 197 | uint32_t FilterConfig; /*!< Specifies the filter configuration. |
AnnaBridge | 172:65be27845400 | 198 | This parameter can be a value of @ref FDCAN_filter_config */ |
AnnaBridge | 172:65be27845400 | 199 | |
AnnaBridge | 172:65be27845400 | 200 | uint32_t FilterID1; /*!< Specifies the filter identification 1. |
AnnaBridge | 172:65be27845400 | 201 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 202 | - 0 and 0x7FF, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 203 | - 0 and 0x1FFFFFFF, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 204 | |
AnnaBridge | 172:65be27845400 | 205 | uint32_t FilterID2; /*!< Specifies the filter identification 2. |
AnnaBridge | 172:65be27845400 | 206 | This parameter is ignored if FilterConfig is set to |
AnnaBridge | 172:65be27845400 | 207 | FDCAN_FILTER_TO_RXBUFFER. |
AnnaBridge | 172:65be27845400 | 208 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 209 | - 0 and 0x7FF, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 210 | - 0 and 0x1FFFFFFF, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 211 | |
AnnaBridge | 172:65be27845400 | 212 | uint32_t RxBufferIndex; /*!< Contains the index of the Rx buffer in which the |
AnnaBridge | 172:65be27845400 | 213 | matching message will be stored. |
AnnaBridge | 172:65be27845400 | 214 | This parameter must be a number between 0 and 63. |
AnnaBridge | 172:65be27845400 | 215 | This parameter is ignored if FilterConfig is different |
AnnaBridge | 172:65be27845400 | 216 | from FDCAN_FILTER_TO_RXBUFFER */ |
AnnaBridge | 172:65be27845400 | 217 | |
AnnaBridge | 172:65be27845400 | 218 | uint32_t IsCalibrationMsg; /*!< Specifies whether the filter is configured for |
AnnaBridge | 172:65be27845400 | 219 | calibration messages. |
AnnaBridge | 172:65be27845400 | 220 | This parameter is ignored if FilterConfig is different |
AnnaBridge | 172:65be27845400 | 221 | from FDCAN_FILTER_TO_RXBUFFER. |
AnnaBridge | 172:65be27845400 | 222 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 223 | - 0 : ordinary message |
AnnaBridge | 172:65be27845400 | 224 | - 1 : calibration message */ |
AnnaBridge | 172:65be27845400 | 225 | |
AnnaBridge | 172:65be27845400 | 226 | } FDCAN_FilterTypeDef; |
AnnaBridge | 172:65be27845400 | 227 | |
AnnaBridge | 172:65be27845400 | 228 | /** |
AnnaBridge | 172:65be27845400 | 229 | * @brief FDCAN Tx header structure definition |
AnnaBridge | 172:65be27845400 | 230 | */ |
AnnaBridge | 172:65be27845400 | 231 | typedef struct |
AnnaBridge | 172:65be27845400 | 232 | { |
AnnaBridge | 172:65be27845400 | 233 | uint32_t Identifier; /*!< Specifies the identifier. |
AnnaBridge | 172:65be27845400 | 234 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 235 | - 0 and 0x7FF, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 236 | - 0 and 0x1FFFFFFF, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 237 | |
AnnaBridge | 172:65be27845400 | 238 | uint32_t IdType; /*!< Specifies the identifier type for the message that will be |
AnnaBridge | 172:65be27845400 | 239 | transmitted. |
AnnaBridge | 172:65be27845400 | 240 | This parameter can be a value of @ref FDCAN_id_type */ |
AnnaBridge | 172:65be27845400 | 241 | |
AnnaBridge | 172:65be27845400 | 242 | uint32_t TxFrameType; /*!< Specifies the frame type of the message that will be transmitted. |
AnnaBridge | 172:65be27845400 | 243 | This parameter can be a value of @ref FDCAN_frame_type */ |
AnnaBridge | 172:65be27845400 | 244 | |
AnnaBridge | 172:65be27845400 | 245 | uint32_t DataLength; /*!< Specifies the length of the frame that will be transmitted. |
AnnaBridge | 172:65be27845400 | 246 | This parameter can be a value of @ref FDCAN_data_length_code */ |
AnnaBridge | 172:65be27845400 | 247 | |
AnnaBridge | 172:65be27845400 | 248 | uint32_t ErrorStateIndicator; /*!< Specifies the error state indicator. |
AnnaBridge | 172:65be27845400 | 249 | This parameter can be a value of @ref FDCAN_error_state_indicator */ |
AnnaBridge | 172:65be27845400 | 250 | |
AnnaBridge | 172:65be27845400 | 251 | uint32_t BitRateSwitch; /*!< Specifies whether the Tx frame will be transmitted with or without |
AnnaBridge | 172:65be27845400 | 252 | bit rate switching. |
AnnaBridge | 172:65be27845400 | 253 | This parameter can be a value of @ref FDCAN_bit_rate_switching */ |
AnnaBridge | 172:65be27845400 | 254 | |
AnnaBridge | 172:65be27845400 | 255 | uint32_t FDFormat; /*!< Specifies whether the Tx frame will be transmitted in classic or |
AnnaBridge | 172:65be27845400 | 256 | FD format. |
AnnaBridge | 172:65be27845400 | 257 | This parameter can be a value of @ref FDCAN_format */ |
AnnaBridge | 172:65be27845400 | 258 | |
AnnaBridge | 172:65be27845400 | 259 | uint32_t TxEventFifoControl; /*!< Specifies the event FIFO control. |
AnnaBridge | 172:65be27845400 | 260 | This parameter can be a value of @ref FDCAN_EFC */ |
AnnaBridge | 172:65be27845400 | 261 | |
AnnaBridge | 172:65be27845400 | 262 | uint32_t MessageMarker; /*!< Specifies the message marker to be copied into Tx Event FIFO |
AnnaBridge | 172:65be27845400 | 263 | element for identification of Tx message status. |
AnnaBridge | 172:65be27845400 | 264 | This parameter must be a number between 0 and 0xFF */ |
AnnaBridge | 172:65be27845400 | 265 | |
AnnaBridge | 172:65be27845400 | 266 | } FDCAN_TxHeaderTypeDef; |
AnnaBridge | 172:65be27845400 | 267 | |
AnnaBridge | 172:65be27845400 | 268 | /** |
AnnaBridge | 172:65be27845400 | 269 | * @brief FDCAN Rx header structure definition |
AnnaBridge | 172:65be27845400 | 270 | */ |
AnnaBridge | 172:65be27845400 | 271 | typedef struct |
AnnaBridge | 172:65be27845400 | 272 | { |
AnnaBridge | 172:65be27845400 | 273 | uint32_t Identifier; /*!< Specifies the identifier. |
AnnaBridge | 172:65be27845400 | 274 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 275 | - 0 and 0x7FF, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 276 | - 0 and 0x1FFFFFFF, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 277 | |
AnnaBridge | 172:65be27845400 | 278 | uint32_t IdType; /*!< Specifies the identifier type of the received message. |
AnnaBridge | 172:65be27845400 | 279 | This parameter can be a value of @ref FDCAN_id_type */ |
AnnaBridge | 172:65be27845400 | 280 | |
AnnaBridge | 172:65be27845400 | 281 | uint32_t RxFrameType; /*!< Specifies the the received message frame type. |
AnnaBridge | 172:65be27845400 | 282 | This parameter can be a value of @ref FDCAN_frame_type */ |
AnnaBridge | 172:65be27845400 | 283 | |
AnnaBridge | 172:65be27845400 | 284 | uint32_t DataLength; /*!< Specifies the received frame length. |
AnnaBridge | 172:65be27845400 | 285 | This parameter can be a value of @ref FDCAN_data_length_code */ |
AnnaBridge | 172:65be27845400 | 286 | |
AnnaBridge | 172:65be27845400 | 287 | uint32_t ErrorStateIndicator; /*!< Specifies the error state indicator. |
AnnaBridge | 172:65be27845400 | 288 | This parameter can be a value of @ref FDCAN_error_state_indicator */ |
AnnaBridge | 172:65be27845400 | 289 | |
AnnaBridge | 172:65be27845400 | 290 | uint32_t BitRateSwitch; /*!< Specifies whether the Rx frame is received with or without bit |
AnnaBridge | 172:65be27845400 | 291 | rate switching. |
AnnaBridge | 172:65be27845400 | 292 | This parameter can be a value of @ref FDCAN_bit_rate_switching */ |
AnnaBridge | 172:65be27845400 | 293 | |
AnnaBridge | 172:65be27845400 | 294 | uint32_t FDFormat; /*!< Specifies whether the Rx frame is received in classic or FD |
AnnaBridge | 172:65be27845400 | 295 | format. |
AnnaBridge | 172:65be27845400 | 296 | This parameter can be a value of @ref FDCAN_format */ |
AnnaBridge | 172:65be27845400 | 297 | |
AnnaBridge | 172:65be27845400 | 298 | uint32_t RxTimestamp; /*!< Specifies the timestamp counter value captured on start of frame |
AnnaBridge | 172:65be27845400 | 299 | reception. |
AnnaBridge | 172:65be27845400 | 300 | This parameter must be a number between 0 and 0xFFFF */ |
AnnaBridge | 172:65be27845400 | 301 | |
AnnaBridge | 172:65be27845400 | 302 | uint32_t FilterIndex; /*!< Specifies the index of matching Rx acceptance filter element. |
AnnaBridge | 172:65be27845400 | 303 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 304 | - 0 and 127, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 305 | - 0 and 63, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 306 | |
AnnaBridge | 172:65be27845400 | 307 | uint32_t IsFilterMatchingFrame; /*!< Specifies whether the accepted frame did not match any Rx filter. |
AnnaBridge | 172:65be27845400 | 308 | Acceptance of non-matching frames may be enabled via |
AnnaBridge | 172:65be27845400 | 309 | HAL_FDCAN_ConfigGlobalFilter(). |
AnnaBridge | 172:65be27845400 | 310 | This parameter can be 0 or 1 */ |
AnnaBridge | 172:65be27845400 | 311 | |
AnnaBridge | 172:65be27845400 | 312 | } FDCAN_RxHeaderTypeDef; |
AnnaBridge | 172:65be27845400 | 313 | |
AnnaBridge | 172:65be27845400 | 314 | /** |
AnnaBridge | 172:65be27845400 | 315 | * @brief FDCAN Tx event FIFO structure definition |
AnnaBridge | 172:65be27845400 | 316 | */ |
AnnaBridge | 172:65be27845400 | 317 | typedef struct |
AnnaBridge | 172:65be27845400 | 318 | { |
AnnaBridge | 172:65be27845400 | 319 | uint32_t Identifier; /*!< Specifies the identifier. |
AnnaBridge | 172:65be27845400 | 320 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 321 | - 0 and 0x7FF, if IdType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 322 | - 0 and 0x1FFFFFFF, if IdType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 323 | |
AnnaBridge | 172:65be27845400 | 324 | uint32_t IdType; /*!< Specifies the identifier type for the transmitted message. |
AnnaBridge | 172:65be27845400 | 325 | This parameter can be a value of @ref FDCAN_id_type */ |
AnnaBridge | 172:65be27845400 | 326 | |
AnnaBridge | 172:65be27845400 | 327 | uint32_t TxFrameType; /*!< Specifies the frame type of the transmitted message. |
AnnaBridge | 172:65be27845400 | 328 | This parameter can be a value of @ref FDCAN_frame_type */ |
AnnaBridge | 172:65be27845400 | 329 | |
AnnaBridge | 172:65be27845400 | 330 | uint32_t DataLength; /*!< Specifies the length of the transmitted frame. |
AnnaBridge | 172:65be27845400 | 331 | This parameter can be a value of @ref FDCAN_data_length_code */ |
AnnaBridge | 172:65be27845400 | 332 | |
AnnaBridge | 172:65be27845400 | 333 | uint32_t ErrorStateIndicator; /*!< Specifies the error state indicator. |
AnnaBridge | 172:65be27845400 | 334 | This parameter can be a value of @ref FDCAN_error_state_indicator */ |
AnnaBridge | 172:65be27845400 | 335 | |
AnnaBridge | 172:65be27845400 | 336 | uint32_t BitRateSwitch; /*!< Specifies whether the Tx frame is transmitted with or without bit |
AnnaBridge | 172:65be27845400 | 337 | rate switching. |
AnnaBridge | 172:65be27845400 | 338 | This parameter can be a value of @ref FDCAN_bit_rate_switching */ |
AnnaBridge | 172:65be27845400 | 339 | |
AnnaBridge | 172:65be27845400 | 340 | uint32_t FDFormat; /*!< Specifies whether the Tx frame is transmitted in classic or FD |
AnnaBridge | 172:65be27845400 | 341 | format. |
AnnaBridge | 172:65be27845400 | 342 | This parameter can be a value of @ref FDCAN_format */ |
AnnaBridge | 172:65be27845400 | 343 | |
AnnaBridge | 172:65be27845400 | 344 | uint32_t TxTimestamp; /*!< Specifies the timestamp counter value captured on start of frame |
AnnaBridge | 172:65be27845400 | 345 | transmission. |
AnnaBridge | 172:65be27845400 | 346 | This parameter must be a number between 0 and 0xFFFF */ |
AnnaBridge | 172:65be27845400 | 347 | |
AnnaBridge | 172:65be27845400 | 348 | uint32_t MessageMarker; /*!< Specifies the message marker copied into Tx Event FIFO element |
AnnaBridge | 172:65be27845400 | 349 | for identification of Tx message status. |
AnnaBridge | 172:65be27845400 | 350 | This parameter must be a number between 0 and 0xFF */ |
AnnaBridge | 172:65be27845400 | 351 | |
AnnaBridge | 172:65be27845400 | 352 | uint32_t EventType; /*!< Specifies the event type. |
AnnaBridge | 172:65be27845400 | 353 | This parameter can be a value of @ref FDCAN_event_type */ |
AnnaBridge | 172:65be27845400 | 354 | |
AnnaBridge | 172:65be27845400 | 355 | } FDCAN_TxEventFifoTypeDef; |
AnnaBridge | 172:65be27845400 | 356 | |
AnnaBridge | 172:65be27845400 | 357 | /** |
AnnaBridge | 172:65be27845400 | 358 | * @brief FDCAN High Priority Message Status structure definition |
AnnaBridge | 172:65be27845400 | 359 | */ |
AnnaBridge | 172:65be27845400 | 360 | typedef struct |
AnnaBridge | 172:65be27845400 | 361 | { |
AnnaBridge | 172:65be27845400 | 362 | uint32_t FilterList; /*!< Specifies the filter list of the matching filter element. |
AnnaBridge | 172:65be27845400 | 363 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 364 | - 0 : Standard Filter List |
AnnaBridge | 172:65be27845400 | 365 | - 1 : Extended Filter List */ |
AnnaBridge | 172:65be27845400 | 366 | |
AnnaBridge | 172:65be27845400 | 367 | uint32_t FilterIndex; /*!< Specifies the index of matching filter element. |
AnnaBridge | 172:65be27845400 | 368 | This parameter can be a number between: |
AnnaBridge | 172:65be27845400 | 369 | - 0 and 127, if FilterList is 0 (Standard) |
AnnaBridge | 172:65be27845400 | 370 | - 0 and 63, if FilterList is 1 (Extended) */ |
AnnaBridge | 172:65be27845400 | 371 | |
AnnaBridge | 172:65be27845400 | 372 | uint32_t MessageStorage; /*!< Specifies the HP Message Storage. |
AnnaBridge | 172:65be27845400 | 373 | This parameter can be a value of @ref FDCAN_hp_msg_storage */ |
AnnaBridge | 172:65be27845400 | 374 | |
AnnaBridge | 172:65be27845400 | 375 | uint32_t MessageIndex; /*!< Specifies the Index of Rx FIFO element to which the |
AnnaBridge | 172:65be27845400 | 376 | message was stored. |
AnnaBridge | 172:65be27845400 | 377 | This parameter is valid only when MessageStorage is: |
AnnaBridge | 172:65be27845400 | 378 | FDCAN_HP_STORAGE_RXFIFO0 |
AnnaBridge | 172:65be27845400 | 379 | or |
AnnaBridge | 172:65be27845400 | 380 | FDCAN_HP_STORAGE_RXFIFO1 */ |
AnnaBridge | 172:65be27845400 | 381 | |
AnnaBridge | 172:65be27845400 | 382 | } FDCAN_HpMsgStatusTypeDef; |
AnnaBridge | 172:65be27845400 | 383 | |
AnnaBridge | 172:65be27845400 | 384 | /** |
AnnaBridge | 172:65be27845400 | 385 | * @brief FDCAN Protocol Status structure definition |
AnnaBridge | 172:65be27845400 | 386 | */ |
AnnaBridge | 172:65be27845400 | 387 | typedef struct |
AnnaBridge | 172:65be27845400 | 388 | { |
AnnaBridge | 172:65be27845400 | 389 | uint32_t LastErrorCode; /*!< Specifies the type of the last error that occurred on the FDCAN bus. |
AnnaBridge | 172:65be27845400 | 390 | This parameter can be a value of @ref FDCAN_protocol_error_code */ |
AnnaBridge | 172:65be27845400 | 391 | |
AnnaBridge | 172:65be27845400 | 392 | uint32_t DataLastErrorCode; /*!< Specifies the type of the last error that occurred in the data phase of a CAN FD format |
AnnaBridge | 172:65be27845400 | 393 | frame with its BRS flag set. |
AnnaBridge | 172:65be27845400 | 394 | This parameter can be a value of @ref FDCAN_protocol_error_code */ |
AnnaBridge | 172:65be27845400 | 395 | |
AnnaBridge | 172:65be27845400 | 396 | uint32_t Activity; /*!< Specifies the FDCAN module communication state. |
AnnaBridge | 172:65be27845400 | 397 | This parameter can be a value of @ref FDCAN_communication_state */ |
AnnaBridge | 172:65be27845400 | 398 | |
AnnaBridge | 172:65be27845400 | 399 | uint32_t ErrorPassive; /*!< Specifies the FDCAN module error status. |
AnnaBridge | 172:65be27845400 | 400 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 401 | - 0 : The FDCAN is in Error_Active state |
AnnaBridge | 172:65be27845400 | 402 | - 1 : The FDCAN is in Error_Passive state */ |
AnnaBridge | 172:65be27845400 | 403 | |
AnnaBridge | 172:65be27845400 | 404 | uint32_t Warning; /*!< Specifies the FDCAN module warning status. |
AnnaBridge | 172:65be27845400 | 405 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 406 | - 0 : error counters (RxErrorCnt and TxErrorCnt) are below the Error_Warning limit of 96 |
AnnaBridge | 172:65be27845400 | 407 | - 1 : at least one of error counters has reached the Error_Warning limit of 96 */ |
AnnaBridge | 172:65be27845400 | 408 | |
AnnaBridge | 172:65be27845400 | 409 | uint32_t BusOff; /*!< Specifies the FDCAN module Bus_Off status. |
AnnaBridge | 172:65be27845400 | 410 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 411 | - 0 : The FDCAN is not in Bus_Off state |
AnnaBridge | 172:65be27845400 | 412 | - 1 : The FDCAN is in Bus_Off state */ |
AnnaBridge | 172:65be27845400 | 413 | |
AnnaBridge | 172:65be27845400 | 414 | uint32_t RxESIflag; /*!< Specifies ESI flag of last received CAN FD message. |
AnnaBridge | 172:65be27845400 | 415 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 416 | - 0 : Last received CAN FD message did not have its ESI flag set |
AnnaBridge | 172:65be27845400 | 417 | - 1 : Last received CAN FD message had its ESI flag set */ |
AnnaBridge | 172:65be27845400 | 418 | |
AnnaBridge | 172:65be27845400 | 419 | uint32_t RxBRSflag; /*!< Specifies BRS flag of last received CAN FD message. |
AnnaBridge | 172:65be27845400 | 420 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 421 | - 0 : Last received CAN FD message did not have its BRS flag set |
AnnaBridge | 172:65be27845400 | 422 | - 1 : Last received CAN FD message had its BRS flag set */ |
AnnaBridge | 172:65be27845400 | 423 | |
AnnaBridge | 172:65be27845400 | 424 | uint32_t RxFDFflag; /*!< Specifies if CAN FD message (FDF flag set) has been received since last protocol status. |
AnnaBridge | 172:65be27845400 | 425 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 426 | - 0 : no CAN FD message received |
AnnaBridge | 172:65be27845400 | 427 | - 1 : CAN FD message received */ |
AnnaBridge | 172:65be27845400 | 428 | |
AnnaBridge | 172:65be27845400 | 429 | uint32_t ProtocolException; /*!< Specifies the FDCAN module Protocol Exception status. |
AnnaBridge | 172:65be27845400 | 430 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 431 | - 0 : No protocol exception event occurred since last read access |
AnnaBridge | 172:65be27845400 | 432 | - 1 : Protocol exception event occurred */ |
AnnaBridge | 172:65be27845400 | 433 | |
AnnaBridge | 172:65be27845400 | 434 | uint32_t TDCvalue; /*!< Specifies the Transmitter Delay Compensation Value. |
AnnaBridge | 172:65be27845400 | 435 | This parameter can be a number between 0 and 127 */ |
AnnaBridge | 172:65be27845400 | 436 | |
AnnaBridge | 172:65be27845400 | 437 | } FDCAN_ProtocolStatusTypeDef; |
AnnaBridge | 172:65be27845400 | 438 | |
AnnaBridge | 172:65be27845400 | 439 | /** |
AnnaBridge | 172:65be27845400 | 440 | * @brief FDCAN Error Counters structure definition |
AnnaBridge | 172:65be27845400 | 441 | */ |
AnnaBridge | 172:65be27845400 | 442 | typedef struct |
AnnaBridge | 172:65be27845400 | 443 | { |
AnnaBridge | 172:65be27845400 | 444 | uint32_t TxErrorCnt; /*!< Specifies the Transmit Error Counter Value. |
AnnaBridge | 172:65be27845400 | 445 | This parameter can be a number between 0 and 255 */ |
AnnaBridge | 172:65be27845400 | 446 | |
AnnaBridge | 172:65be27845400 | 447 | uint32_t RxErrorCnt; /*!< Specifies the Receive Error Counter Value. |
AnnaBridge | 172:65be27845400 | 448 | This parameter can be a number between 0 and 127 */ |
AnnaBridge | 172:65be27845400 | 449 | |
AnnaBridge | 172:65be27845400 | 450 | uint32_t RxErrorPassive; /*!< Specifies the Receive Error Passive status. |
AnnaBridge | 172:65be27845400 | 451 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 452 | - 0 : The Receive Error Counter (RxErrorCnt) is below the error passive level of 128 |
AnnaBridge | 172:65be27845400 | 453 | - 1 : The Receive Error Counter (RxErrorCnt) has reached the error passive level of 128 */ |
AnnaBridge | 172:65be27845400 | 454 | |
AnnaBridge | 172:65be27845400 | 455 | uint32_t ErrorLogging; /*!< Specifies the Transmit/Receive error logging counter value. |
AnnaBridge | 172:65be27845400 | 456 | This parameter can be a number between 0 and 255. |
AnnaBridge | 172:65be27845400 | 457 | This counter is incremented each time when a FDCAN protocol error causes the TxErrorCnt |
AnnaBridge | 172:65be27845400 | 458 | or the RxErrorCnt to be incremented. The counter stops at 255; the next increment of |
AnnaBridge | 172:65be27845400 | 459 | TxErrorCnt or RxErrorCnt sets interrupt flag FDCAN_FLAG_ERROR_LOGGING_OVERFLOW */ |
AnnaBridge | 172:65be27845400 | 460 | |
AnnaBridge | 172:65be27845400 | 461 | } FDCAN_ErrorCountersTypeDef; |
AnnaBridge | 172:65be27845400 | 462 | |
AnnaBridge | 172:65be27845400 | 463 | /** |
AnnaBridge | 172:65be27845400 | 464 | * @brief FDCAN TT Init structure definition |
AnnaBridge | 172:65be27845400 | 465 | */ |
AnnaBridge | 172:65be27845400 | 466 | typedef struct |
AnnaBridge | 172:65be27845400 | 467 | { |
AnnaBridge | 172:65be27845400 | 468 | uint32_t OperationMode; /*!< Specifies the FDCAN Operation Mode. |
AnnaBridge | 172:65be27845400 | 469 | This parameter can be a value of @ref FDCAN_operation_mode */ |
AnnaBridge | 172:65be27845400 | 470 | |
AnnaBridge | 172:65be27845400 | 471 | uint32_t GapEnable; /*!< Specifies the FDCAN TT Operation. |
AnnaBridge | 172:65be27845400 | 472 | This parameter can be a value of @ref FDCAN_TT_operation. |
AnnaBridge | 172:65be27845400 | 473 | This parameter is ignored if OperationMode is set to |
AnnaBridge | 172:65be27845400 | 474 | FDCAN_TT_COMMUNICATION_LEVEL0 */ |
AnnaBridge | 172:65be27845400 | 475 | |
AnnaBridge | 172:65be27845400 | 476 | uint32_t TimeMaster; /*!< Specifies whether the instance is a slave or a potential master. |
AnnaBridge | 172:65be27845400 | 477 | This parameter can be a value of @ref FDCAN_TT_time_master */ |
AnnaBridge | 172:65be27845400 | 478 | |
AnnaBridge | 172:65be27845400 | 479 | uint32_t SyncDevLimit; /*!< Specifies the Synchronization Deviation Limit SDL of the TUR |
AnnaBridge | 172:65be27845400 | 480 | numerator : TUR = (Numerator ± SDL) / Denominator. |
AnnaBridge | 172:65be27845400 | 481 | With : SDL = 2^(SyncDevLimit+5). |
AnnaBridge | 172:65be27845400 | 482 | This parameter must be a number between 0 and 7 */ |
AnnaBridge | 172:65be27845400 | 483 | |
AnnaBridge | 172:65be27845400 | 484 | uint32_t InitRefTrigOffset; /*!< Specifies the Initial Reference Trigger Offset. |
AnnaBridge | 172:65be27845400 | 485 | This parameter must be a number between 0 and 127 */ |
AnnaBridge | 172:65be27845400 | 486 | |
AnnaBridge | 172:65be27845400 | 487 | uint32_t ExternalClkSync; /*!< Enable or disable External Clock Synchronization. |
AnnaBridge | 172:65be27845400 | 488 | This parameter can be a value of @ref FDCAN_TT_external_clk_sync. |
AnnaBridge | 172:65be27845400 | 489 | This parameter is ignored if OperationMode is set to |
AnnaBridge | 172:65be27845400 | 490 | FDCAN_TT_COMMUNICATION_LEVEL1 */ |
AnnaBridge | 172:65be27845400 | 491 | |
AnnaBridge | 172:65be27845400 | 492 | uint32_t AppWdgLimit; /*!< Specifies the Application Watchdog Limit : maximum time after |
AnnaBridge | 172:65be27845400 | 493 | which the application has to serve the application watchdog. |
AnnaBridge | 172:65be27845400 | 494 | The application watchdog is incremented once each 256 NTUs. |
AnnaBridge | 172:65be27845400 | 495 | The application watchdog can be disabled by setting AppWdgLimit to 0. |
AnnaBridge | 172:65be27845400 | 496 | This parameter must be a number between 0 and 255. |
AnnaBridge | 172:65be27845400 | 497 | This parameter is ignored if OperationMode is set to |
AnnaBridge | 172:65be27845400 | 498 | FDCAN_TT_COMMUNICATION_LEVEL0 */ |
AnnaBridge | 172:65be27845400 | 499 | |
AnnaBridge | 172:65be27845400 | 500 | uint32_t GlobalTimeFilter; /*!< Enable or disable Global Time Filtering. |
AnnaBridge | 172:65be27845400 | 501 | This parameter can be a value of @ref FDCAN_TT_global_time_filtering. |
AnnaBridge | 172:65be27845400 | 502 | This parameter is ignored if OperationMode is set to |
AnnaBridge | 172:65be27845400 | 503 | FDCAN_TT_COMMUNICATION_LEVEL1 */ |
AnnaBridge | 172:65be27845400 | 504 | |
AnnaBridge | 172:65be27845400 | 505 | uint32_t ClockCalibration; /*!< Enable or disable Automatic Clock Calibration. |
AnnaBridge | 172:65be27845400 | 506 | This parameter can be a value of @ref FDCAN_TT_auto_clk_calibration. |
AnnaBridge | 172:65be27845400 | 507 | This parameter is ignored if OperationMode is set to |
AnnaBridge | 172:65be27845400 | 508 | FDCAN_TT_COMMUNICATION_LEVEL1 */ |
AnnaBridge | 172:65be27845400 | 509 | |
AnnaBridge | 172:65be27845400 | 510 | uint32_t EvtTrigPolarity; /*!< Specifies the Event Trigger Polarity. |
AnnaBridge | 172:65be27845400 | 511 | This parameter can be a value of @ref FDCAN_TT_event_trig_polarity. |
AnnaBridge | 172:65be27845400 | 512 | This parameter is ignored if OperationMode is set to |
AnnaBridge | 172:65be27845400 | 513 | FDCAN_TT_COMMUNICATION_LEVEL0 */ |
AnnaBridge | 172:65be27845400 | 514 | |
AnnaBridge | 172:65be27845400 | 515 | uint32_t BasicCyclesNbr; /*!< Specifies the nubmer of basic cycles in the system matrix. |
AnnaBridge | 172:65be27845400 | 516 | This parameter can be a value of @ref FDCAN_TT_basic_cycle_number */ |
AnnaBridge | 172:65be27845400 | 517 | |
AnnaBridge | 172:65be27845400 | 518 | uint32_t CycleStartSync; /*!< Enable or disable synchronization pulse output at pin fdcan1_soc. |
AnnaBridge | 172:65be27845400 | 519 | This parameter can be a value of @ref FDCAN_TT_cycle_start_sync */ |
AnnaBridge | 172:65be27845400 | 520 | |
AnnaBridge | 172:65be27845400 | 521 | uint32_t TxEnableWindow; /*!< Specifies the length of Tx enable window in NTUs. |
AnnaBridge | 172:65be27845400 | 522 | This parameter must be a number between 1 and 16 */ |
AnnaBridge | 172:65be27845400 | 523 | |
AnnaBridge | 172:65be27845400 | 524 | uint32_t ExpTxTrigNbr; /*!< Specifies the number of expected Tx_Triggers in the system matrix. |
AnnaBridge | 172:65be27845400 | 525 | This is the sum of Tx_Triggers for exclusive, single arbitrating and |
AnnaBridge | 172:65be27845400 | 526 | merged arbitrating windows. |
AnnaBridge | 172:65be27845400 | 527 | This parameter must be a number between 0 and 4095 */ |
AnnaBridge | 172:65be27845400 | 528 | |
AnnaBridge | 172:65be27845400 | 529 | uint32_t TURNumerator; /*!< Specifies the TUR (Time Unit Ratio) numerator. |
AnnaBridge | 172:65be27845400 | 530 | It is adviced to set this parameter to the largest applicable value. |
AnnaBridge | 172:65be27845400 | 531 | This parameter must be a number between 0x10000 and 0x1FFFF */ |
AnnaBridge | 172:65be27845400 | 532 | |
AnnaBridge | 172:65be27845400 | 533 | uint32_t TURDenominator; /*!< Specifies the TUR (Time Unit Ratio) denominator. |
AnnaBridge | 172:65be27845400 | 534 | This parameter must be a number between 0x0001 and 0x3FFF */ |
AnnaBridge | 172:65be27845400 | 535 | |
AnnaBridge | 172:65be27845400 | 536 | uint32_t TriggerMemoryNbr; /*!< Specifies the number of trigger memory elements. |
AnnaBridge | 172:65be27845400 | 537 | This parameter must be a number between 0 and 64 */ |
AnnaBridge | 172:65be27845400 | 538 | |
AnnaBridge | 172:65be27845400 | 539 | uint32_t StopWatchTrigSel; /*!< Specifies the input to be used as stop watch trigger. |
AnnaBridge | 172:65be27845400 | 540 | This parameter can be a value of @ref FDCAN_TT_stop_watch_trig_selection */ |
AnnaBridge | 172:65be27845400 | 541 | |
AnnaBridge | 172:65be27845400 | 542 | uint32_t EventTrigSel; /*!< Specifies the input to be used as event trigger. |
AnnaBridge | 172:65be27845400 | 543 | This parameter can be a value of @ref FDCAN_TT_event_trig_selection */ |
AnnaBridge | 172:65be27845400 | 544 | |
AnnaBridge | 172:65be27845400 | 545 | } FDCAN_TT_ConfigTypeDef; |
AnnaBridge | 172:65be27845400 | 546 | |
AnnaBridge | 172:65be27845400 | 547 | /** |
AnnaBridge | 172:65be27845400 | 548 | * @brief FDCAN Trigger structure definition |
AnnaBridge | 172:65be27845400 | 549 | */ |
AnnaBridge | 172:65be27845400 | 550 | typedef struct |
AnnaBridge | 172:65be27845400 | 551 | { |
AnnaBridge | 172:65be27845400 | 552 | uint32_t TriggerIndex; /*!< Specifies the trigger which will be configured. |
AnnaBridge | 172:65be27845400 | 553 | This parameter must be a number between 0 and 63 */ |
AnnaBridge | 172:65be27845400 | 554 | |
AnnaBridge | 172:65be27845400 | 555 | uint32_t TimeMark; /*!< Specifies the cycle time for which the trigger becomes active. |
AnnaBridge | 172:65be27845400 | 556 | This parameter must be a number between 0 and 0xFFFF */ |
AnnaBridge | 172:65be27845400 | 557 | |
AnnaBridge | 172:65be27845400 | 558 | uint32_t RepeatFactor; /*!< Specifies the trigger repeat factor. |
AnnaBridge | 172:65be27845400 | 559 | This parameter can be a value of @ref FDCAN_TT_Repeat_Factor */ |
AnnaBridge | 172:65be27845400 | 560 | |
AnnaBridge | 172:65be27845400 | 561 | uint32_t StartCycle; /*!< Specifies the index of the first cycle in which the trigger becomes active. |
AnnaBridge | 172:65be27845400 | 562 | This parameter is ignored if RepeatFactor is set to FDCAN_TT_REPEAT_EVERY_CYCLE. |
AnnaBridge | 172:65be27845400 | 563 | This parameter must be a number between 0 and RepeatFactor */ |
AnnaBridge | 172:65be27845400 | 564 | |
AnnaBridge | 172:65be27845400 | 565 | uint32_t TmEventInt; /*!< Enable or disable the internal time mark event. |
AnnaBridge | 172:65be27845400 | 566 | If enabled, FDCAN_TT_FLAG_TRIG_TIME_MARK flag is set when trigger memory element |
AnnaBridge | 172:65be27845400 | 567 | becomes active. |
AnnaBridge | 172:65be27845400 | 568 | This parameter can be a value of @ref FDCAN_TT_Time_Mark_Event_Internal */ |
AnnaBridge | 172:65be27845400 | 569 | |
AnnaBridge | 172:65be27845400 | 570 | uint32_t TmEventExt; /*!< Enable or disable the external time mark event. |
AnnaBridge | 172:65be27845400 | 571 | If enabled, and if TTOCN.TTIE is set, a pulse is generated at fdcan1_tmp when |
AnnaBridge | 172:65be27845400 | 572 | trigger memory element becomes active. |
AnnaBridge | 172:65be27845400 | 573 | This parameter can be a value of @ref FDCAN_TT_Time_Mark_Event_External */ |
AnnaBridge | 172:65be27845400 | 574 | |
AnnaBridge | 172:65be27845400 | 575 | uint32_t TriggerType; /*!< Specifies the trigger type. |
AnnaBridge | 172:65be27845400 | 576 | This parameter can be a value of @ref FDCAN_TT_Trigger_Type */ |
AnnaBridge | 172:65be27845400 | 577 | |
AnnaBridge | 172:65be27845400 | 578 | uint32_t FilterType; /*!< Specifies the filter identifier type. |
AnnaBridge | 172:65be27845400 | 579 | This parameter can be a value of @ref FDCAN_id_type */ |
AnnaBridge | 172:65be27845400 | 580 | |
AnnaBridge | 172:65be27845400 | 581 | uint32_t TxBufferIndex; /*!< Specifies the index of the Tx buffer for which the trigger is valid. |
AnnaBridge | 172:65be27845400 | 582 | This parameter can be a value of @ref FDCAN_Tx_location. |
AnnaBridge | 172:65be27845400 | 583 | This parameter is taken in consideration only if the trigger is configured for |
AnnaBridge | 172:65be27845400 | 584 | transmission. */ |
AnnaBridge | 172:65be27845400 | 585 | |
AnnaBridge | 172:65be27845400 | 586 | uint32_t FilterIndex; /*!< Specifies the filter for which the trigger is valid. |
AnnaBridge | 172:65be27845400 | 587 | This parameter is taken in consideration only if the trigger is configured for |
AnnaBridge | 172:65be27845400 | 588 | reception. |
AnnaBridge | 172:65be27845400 | 589 | This parameter must be a number between: |
AnnaBridge | 172:65be27845400 | 590 | - 0 and 127, if FilterType is FDCAN_STANDARD_ID |
AnnaBridge | 172:65be27845400 | 591 | - 0 and 63, if FilterType is FDCAN_EXTENDED_ID */ |
AnnaBridge | 172:65be27845400 | 592 | |
AnnaBridge | 172:65be27845400 | 593 | } FDCAN_TriggerTypeDef; |
AnnaBridge | 172:65be27845400 | 594 | |
AnnaBridge | 172:65be27845400 | 595 | /** |
AnnaBridge | 172:65be27845400 | 596 | * @brief FDCAN TT Operation Status structure definition |
AnnaBridge | 172:65be27845400 | 597 | */ |
AnnaBridge | 172:65be27845400 | 598 | typedef struct |
AnnaBridge | 172:65be27845400 | 599 | { |
AnnaBridge | 172:65be27845400 | 600 | uint32_t ErrorLevel; /*!< Specifies the type of the TT operation error level. |
AnnaBridge | 172:65be27845400 | 601 | This parameter can be a value of @ref FDCAN_TT_error_level */ |
AnnaBridge | 172:65be27845400 | 602 | |
AnnaBridge | 172:65be27845400 | 603 | uint32_t MasterState; /*!< Specifies the type of the TT master state. |
AnnaBridge | 172:65be27845400 | 604 | This parameter can be a value of @ref FDCAN_TT_master_state */ |
AnnaBridge | 172:65be27845400 | 605 | |
AnnaBridge | 172:65be27845400 | 606 | uint32_t SyncState; /*!< Specifies the type of the TT synchronization state. |
AnnaBridge | 172:65be27845400 | 607 | This parameter can be a value of @ref FDCAN_TT_sync_state */ |
AnnaBridge | 172:65be27845400 | 608 | |
AnnaBridge | 172:65be27845400 | 609 | uint32_t GTimeQuality; /*!< Specifies the Quality of Global Time Phase. |
AnnaBridge | 172:65be27845400 | 610 | This parameter is only relevant in Level 0 and Level 2, otherwise fixed to 0. |
AnnaBridge | 172:65be27845400 | 611 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 612 | - 0 : Global time not valid |
AnnaBridge | 172:65be27845400 | 613 | - 1 : Global time in phase with Time Master */ |
AnnaBridge | 172:65be27845400 | 614 | |
AnnaBridge | 172:65be27845400 | 615 | uint32_t ClockQuality; /*!< Specifies the Quality of Clock Speed. |
AnnaBridge | 172:65be27845400 | 616 | This parameter is only relevant in Level 0 and Level 2, otherwise fixed to 1. |
AnnaBridge | 172:65be27845400 | 617 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 618 | - 0 : Local clock speed not synchronized to Time Master clock speed |
AnnaBridge | 172:65be27845400 | 619 | - 1 : Synchronization Deviation = SDL */ |
AnnaBridge | 172:65be27845400 | 620 | |
AnnaBridge | 172:65be27845400 | 621 | uint32_t RefTrigOffset; /*!< Specifies the Actual Reference Trigger Offset Value. |
AnnaBridge | 172:65be27845400 | 622 | This parameter can be a number between 0 and 0xFF */ |
AnnaBridge | 172:65be27845400 | 623 | |
AnnaBridge | 172:65be27845400 | 624 | uint32_t GTimeDiscPending; /*!< Specifies the Global Time Discontinuity State. |
AnnaBridge | 172:65be27845400 | 625 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 626 | - 0 : No global time preset pending |
AnnaBridge | 172:65be27845400 | 627 | - 1 : Node waits for the global time preset to take effect */ |
AnnaBridge | 172:65be27845400 | 628 | |
AnnaBridge | 172:65be27845400 | 629 | uint32_t GapFinished; /*!< Specifies whether a Gap is finished. |
AnnaBridge | 172:65be27845400 | 630 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 631 | - 0 : Reset at the end of each reference message |
AnnaBridge | 172:65be27845400 | 632 | - 1 : Gap finished */ |
AnnaBridge | 172:65be27845400 | 633 | |
AnnaBridge | 172:65be27845400 | 634 | uint32_t MasterPriority; /*!< Specifies the Priority of actual Time Master. |
AnnaBridge | 172:65be27845400 | 635 | This parameter can be a number between 0 and 0x7 */ |
AnnaBridge | 172:65be27845400 | 636 | |
AnnaBridge | 172:65be27845400 | 637 | uint32_t GapStarted; /*!< Specifies whether a Gap is started. |
AnnaBridge | 172:65be27845400 | 638 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 639 | - 0 : No Gap in schedule |
AnnaBridge | 172:65be27845400 | 640 | - 1 : Gap time after Basic Cycle has started */ |
AnnaBridge | 172:65be27845400 | 641 | |
AnnaBridge | 172:65be27845400 | 642 | uint32_t WaitForEvt; /*!< Specifies whether a Gap is annouced. |
AnnaBridge | 172:65be27845400 | 643 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 644 | - 0 : No Gap announced, reset by a reference message with Next_is_Gap = 0 |
AnnaBridge | 172:65be27845400 | 645 | - 1 : Reference message with Next_is_Gap = 1 received */ |
AnnaBridge | 172:65be27845400 | 646 | |
AnnaBridge | 172:65be27845400 | 647 | uint32_t AppWdgEvt; /*!< Specifies the Application Watchdog State. |
AnnaBridge | 172:65be27845400 | 648 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 649 | - 0 : Application Watchdog served in time |
AnnaBridge | 172:65be27845400 | 650 | - 1 : Failed to serve Application Watchdog in time */ |
AnnaBridge | 172:65be27845400 | 651 | |
AnnaBridge | 172:65be27845400 | 652 | uint32_t ECSPending; /*!< Specifies the External Clock Synchronization State. |
AnnaBridge | 172:65be27845400 | 653 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 654 | - 0 : No external clock synchronization pending |
AnnaBridge | 172:65be27845400 | 655 | - 1 : Node waits for external clock synchronization to take effect */ |
AnnaBridge | 172:65be27845400 | 656 | |
AnnaBridge | 172:65be27845400 | 657 | uint32_t PhaseLock; /*!< Specifies the Phase Lock State. |
AnnaBridge | 172:65be27845400 | 658 | This parameter can be: |
AnnaBridge | 172:65be27845400 | 659 | - 0 : Phase outside range |
AnnaBridge | 172:65be27845400 | 660 | - 1 : Phase inside range */ |
AnnaBridge | 172:65be27845400 | 661 | |
AnnaBridge | 172:65be27845400 | 662 | } FDCAN_TTOperationStatusTypeDef; |
AnnaBridge | 172:65be27845400 | 663 | |
AnnaBridge | 172:65be27845400 | 664 | /** |
AnnaBridge | 172:65be27845400 | 665 | * @brief FDCAN Message RAM blocks |
AnnaBridge | 172:65be27845400 | 666 | */ |
AnnaBridge | 172:65be27845400 | 667 | typedef struct |
AnnaBridge | 172:65be27845400 | 668 | { |
AnnaBridge | 172:65be27845400 | 669 | uint32_t StandardFilterSA; /*!< Specifies the Standard Filter List Start Address. |
AnnaBridge | 172:65be27845400 | 670 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 671 | |
AnnaBridge | 172:65be27845400 | 672 | uint32_t ExtendedFilterSA; /*!< Specifies the Extended Filter List Start Address. |
AnnaBridge | 172:65be27845400 | 673 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 674 | |
AnnaBridge | 172:65be27845400 | 675 | uint32_t RxFIFO0SA; /*!< Specifies the Rx FIFO 0 Start Address. |
AnnaBridge | 172:65be27845400 | 676 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 677 | |
AnnaBridge | 172:65be27845400 | 678 | uint32_t RxFIFO1SA; /*!< Specifies the Rx FIFO 1 Start Address. |
AnnaBridge | 172:65be27845400 | 679 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 680 | |
AnnaBridge | 172:65be27845400 | 681 | uint32_t RxBufferSA; /*!< Specifies the Rx Buffer Start Address. |
AnnaBridge | 172:65be27845400 | 682 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 683 | |
AnnaBridge | 172:65be27845400 | 684 | uint32_t TxEventFIFOSA; /*!< Specifies the Tx Event FIFO Start Address. |
AnnaBridge | 172:65be27845400 | 685 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 686 | |
AnnaBridge | 172:65be27845400 | 687 | uint32_t TxBufferSA; /*!< Specifies the Tx Buffers Start Address. |
AnnaBridge | 172:65be27845400 | 688 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 689 | |
AnnaBridge | 172:65be27845400 | 690 | uint32_t TxFIFOQSA; /*!< Specifies the Tx FIFO/Queue Start Address. |
AnnaBridge | 172:65be27845400 | 691 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 692 | |
AnnaBridge | 172:65be27845400 | 693 | uint32_t TTMemorySA; /*!< Specifies the Trigger Memory Start Address. |
AnnaBridge | 172:65be27845400 | 694 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 695 | |
AnnaBridge | 172:65be27845400 | 696 | uint32_t EndAddress; /*!< Specifies the End Address of the allocated RAM. |
AnnaBridge | 172:65be27845400 | 697 | This parameter must be a 32-bit word address */ |
AnnaBridge | 172:65be27845400 | 698 | |
AnnaBridge | 172:65be27845400 | 699 | } FDCAN_MsgRamAddressTypeDef; |
AnnaBridge | 172:65be27845400 | 700 | |
AnnaBridge | 172:65be27845400 | 701 | /** |
AnnaBridge | 172:65be27845400 | 702 | * @brief FDCAN handle structure definition |
AnnaBridge | 172:65be27845400 | 703 | */ |
AnnaBridge | 172:65be27845400 | 704 | #if USE_HAL_FDCAN_REGISTER_CALLBACKS == 1 |
AnnaBridge | 172:65be27845400 | 705 | typedef struct __FDCAN_HandleTypeDef |
AnnaBridge | 172:65be27845400 | 706 | #else |
AnnaBridge | 172:65be27845400 | 707 | typedef struct |
AnnaBridge | 172:65be27845400 | 708 | #endif /* USE_HAL_FDCAN_REGISTER_CALLBACKS */ |
AnnaBridge | 172:65be27845400 | 709 | { |
AnnaBridge | 172:65be27845400 | 710 | FDCAN_GlobalTypeDef *Instance; /*!< Register base address */ |
AnnaBridge | 172:65be27845400 | 711 | |
AnnaBridge | 172:65be27845400 | 712 | TTCAN_TypeDef *ttcan; /*!< TT register base address */ |
AnnaBridge | 172:65be27845400 | 713 | |
AnnaBridge | 172:65be27845400 | 714 | FDCAN_InitTypeDef Init; /*!< FDCAN required parameters */ |
AnnaBridge | 172:65be27845400 | 715 | |
AnnaBridge | 172:65be27845400 | 716 | FDCAN_MsgRamAddressTypeDef msgRam; /*!< FDCAN Message RAM blocks */ |
AnnaBridge | 172:65be27845400 | 717 | |
AnnaBridge | 172:65be27845400 | 718 | uint32_t LatestTxFifoQRequest; /*!< FDCAN Tx buffer index |
AnnaBridge | 172:65be27845400 | 719 | of latest Tx FIFO/Queue request */ |
AnnaBridge | 172:65be27845400 | 720 | |
AnnaBridge | 172:65be27845400 | 721 | __IO HAL_FDCAN_StateTypeDef State; /*!< FDCAN communication state */ |
AnnaBridge | 172:65be27845400 | 722 | |
AnnaBridge | 172:65be27845400 | 723 | HAL_LockTypeDef Lock; /*!< FDCAN locking object */ |
AnnaBridge | 172:65be27845400 | 724 | |
AnnaBridge | 172:65be27845400 | 725 | __IO uint32_t ErrorCode; /*!< FDCAN Error code */ |
AnnaBridge | 172:65be27845400 | 726 | |
AnnaBridge | 172:65be27845400 | 727 | #if USE_HAL_FDCAN_REGISTER_CALLBACKS == 1 |
AnnaBridge | 172:65be27845400 | 728 | void (* ClockCalibrationCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t ClkCalibrationITs); /*!< FDCAN Clock Calibration callback */ |
AnnaBridge | 172:65be27845400 | 729 | void (* TxEventFifoCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t TxEventFifoITs); /*!< FDCAN Tx Event Fifo callback */ |
AnnaBridge | 172:65be27845400 | 730 | void (* RxFifo0Callback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo0ITs); /*!< FDCAN Rx Fifo 0 callback */ |
AnnaBridge | 172:65be27845400 | 731 | void (* RxFifo1Callback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo1ITs); /*!< FDCAN Rx Fifo 1 callback */ |
AnnaBridge | 172:65be27845400 | 732 | void (* TxFifoEmptyCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Tx Fifo Empty callback */ |
AnnaBridge | 172:65be27845400 | 733 | void (* TxBufferCompleteCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes); /*!< FDCAN Tx Buffer complete callback */ |
AnnaBridge | 172:65be27845400 | 734 | void (* TxBufferAbortCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes); /*!< FDCAN Tx Buffer abort callback */ |
AnnaBridge | 172:65be27845400 | 735 | void (* RxBufferNewMessageCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Rx Buffer New Message callback */ |
AnnaBridge | 172:65be27845400 | 736 | void (* HighPriorityMessageCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN High priority message callback */ |
AnnaBridge | 172:65be27845400 | 737 | void (* TimestampWraparoundCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Timestamp wraparound callback */ |
AnnaBridge | 172:65be27845400 | 738 | void (* TimeoutOccurredCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Timeout occurred callback */ |
AnnaBridge | 172:65be27845400 | 739 | void (* ErrorCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Error callback */ |
AnnaBridge | 172:65be27845400 | 740 | void (* ErrorStatusCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t ErrorStatusITs); /*!< FDCAN Error status callback */ |
AnnaBridge | 172:65be27845400 | 741 | void (* TT_ScheduleSyncCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t TTSchedSyncITs); /*!< FDCAN T Schedule Synchronization callback */ |
AnnaBridge | 172:65be27845400 | 742 | void (* TT_TimeMarkCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t TTTimeMarkITs); /*!< FDCAN TT Time Mark callback */ |
AnnaBridge | 172:65be27845400 | 743 | void (* TT_StopWatchCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t SWTime, uint32_t SWCycleCount); /*!< FDCAN TT Stop Watch callback */ |
AnnaBridge | 172:65be27845400 | 744 | void (* TT_GlobalTimeCallback)(struct __FDCAN_HandleTypeDef *hfdcan, uint32_t TTGlobTimeITs); /*!< FDCAN TT Global Time callback */ |
AnnaBridge | 172:65be27845400 | 745 | |
AnnaBridge | 172:65be27845400 | 746 | void (* MspInitCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Msp Init callback */ |
AnnaBridge | 172:65be27845400 | 747 | void (* MspDeInitCallback)(struct __FDCAN_HandleTypeDef *hfdcan); /*!< FDCAN Msp DeInit callback */ |
AnnaBridge | 172:65be27845400 | 748 | #endif /* USE_HAL_FDCAN_REGISTER_CALLBACKS */ |
AnnaBridge | 172:65be27845400 | 749 | |
AnnaBridge | 172:65be27845400 | 750 | } FDCAN_HandleTypeDef; |
AnnaBridge | 172:65be27845400 | 751 | |
AnnaBridge | 172:65be27845400 | 752 | #if USE_HAL_FDCAN_REGISTER_CALLBACKS == 1 |
AnnaBridge | 172:65be27845400 | 753 | /** |
AnnaBridge | 172:65be27845400 | 754 | * @brief HAL FDCAN common Callback ID enumeration definition |
AnnaBridge | 172:65be27845400 | 755 | */ |
AnnaBridge | 172:65be27845400 | 756 | typedef enum |
AnnaBridge | 172:65be27845400 | 757 | { |
AnnaBridge | 172:65be27845400 | 758 | HAL_FDCAN_TX_FIFO_EMPTY_CB_ID = 0x00U, /*!< FDCAN Tx Fifo Empty callback ID */ |
AnnaBridge | 172:65be27845400 | 759 | HAL_FDCAN_RX_BUFFER_NEW_MSG_CB_ID = 0x01U, /*!< FDCAN Rx buffer new message callback ID */ |
AnnaBridge | 172:65be27845400 | 760 | HAL_FDCAN_HIGH_PRIO_MESSAGE_CB_ID = 0x02U, /*!< FDCAN High priority message callback ID */ |
AnnaBridge | 172:65be27845400 | 761 | HAL_FDCAN_TIMESTAMP_WRAPAROUND_CB_ID = 0x03U, /*!< FDCAN Timestamp wraparound callback ID */ |
AnnaBridge | 172:65be27845400 | 762 | HAL_FDCAN_TIMEOUT_OCCURRED_CB_ID = 0x04U, /*!< FDCAN Timeout occurred callback ID */ |
AnnaBridge | 172:65be27845400 | 763 | HAL_FDCAN_ERROR_CALLBACK_CB_ID = 0x05U, /*!< FDCAN Error callback ID */ |
AnnaBridge | 172:65be27845400 | 764 | |
AnnaBridge | 172:65be27845400 | 765 | HAL_FDCAN_MSPINIT_CB_ID = 0x06U, /*!< FDCAN MspInit callback ID */ |
AnnaBridge | 172:65be27845400 | 766 | HAL_FDCAN_MSPDEINIT_CB_ID = 0x07U, /*!< FDCAN MspDeInit callback ID */ |
AnnaBridge | 172:65be27845400 | 767 | |
AnnaBridge | 172:65be27845400 | 768 | } HAL_FDCAN_CallbackIDTypeDef; |
AnnaBridge | 172:65be27845400 | 769 | |
AnnaBridge | 172:65be27845400 | 770 | /** |
AnnaBridge | 172:65be27845400 | 771 | * @brief HAL FDCAN Callback pointer definition |
AnnaBridge | 172:65be27845400 | 772 | */ |
AnnaBridge | 172:65be27845400 | 773 | typedef void (*pFDCAN_CallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan); /*!< pointer to a common FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 774 | typedef void (*pFDCAN_ClockCalibrationCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t ClkCalibrationITs); /*!< pointer to Clock Calibration FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 775 | typedef void (*pFDCAN_TxEventFifoCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t TxEventFifoITs); /*!< pointer to Tx event Fifo FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 776 | typedef void (*pFDCAN_RxFifo0CallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo0ITs); /*!< pointer to Rx Fifo 0 FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 777 | typedef void (*pFDCAN_RxFifo1CallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo1ITs); /*!< pointer to Rx Fifo 1 FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 778 | typedef void (*pFDCAN_TxBufferCompleteCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes); /*!< pointer to Tx Buffer complete FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 779 | typedef void (*pFDCAN_TxBufferAbortCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes); /*!< pointer to Tx Buffer abort FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 780 | typedef void (*pFDCAN_ErrorStatusCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t ErrorStatusITs); /*!< pointer to Error Status callback function */ |
AnnaBridge | 172:65be27845400 | 781 | typedef void (*pFDCAN_TT_ScheduleSyncCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t TTSchedSyncITs); /*!< pointer to TT Schedule Synchronization FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 782 | typedef void (*pFDCAN_TT_TimeMarkCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t TTTimeMarkITs); /*!< pointer to TT Time Mark FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 783 | typedef void (*pFDCAN_TT_StopWatchCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t SWTime, uint32_t SWCycleCount); /*!< pointer to TT Stop Watch FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 784 | typedef void (*pFDCAN_TT_GlobalTimeCallbackTypeDef)(FDCAN_HandleTypeDef *hfdcan, uint32_t TTGlobTimeITs); /*!< pointer to TT Global Time FDCAN callback function */ |
AnnaBridge | 172:65be27845400 | 785 | #endif /* USE_HAL_FDCAN_REGISTER_CALLBACKS */ |
AnnaBridge | 172:65be27845400 | 786 | |
AnnaBridge | 172:65be27845400 | 787 | /** |
AnnaBridge | 172:65be27845400 | 788 | * @} |
AnnaBridge | 172:65be27845400 | 789 | */ |
AnnaBridge | 172:65be27845400 | 790 | |
AnnaBridge | 172:65be27845400 | 791 | /* Exported constants --------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 792 | /** @defgroup FDCAN_Exported_Constants FDCAN Exported Constants |
AnnaBridge | 172:65be27845400 | 793 | * @{ |
AnnaBridge | 172:65be27845400 | 794 | */ |
AnnaBridge | 172:65be27845400 | 795 | |
AnnaBridge | 172:65be27845400 | 796 | /** @defgroup HAL_FDCAN_Error_Code HAL FDCAN Error Code |
AnnaBridge | 172:65be27845400 | 797 | * @{ |
AnnaBridge | 172:65be27845400 | 798 | */ |
AnnaBridge | 172:65be27845400 | 799 | #define HAL_FDCAN_ERROR_NONE ((uint32_t)0x00000000U) /*!< No error */ |
AnnaBridge | 172:65be27845400 | 800 | #define HAL_FDCAN_ERROR_TIMEOUT ((uint32_t)0x00000001U) /*!< Timeout error */ |
AnnaBridge | 172:65be27845400 | 801 | #define HAL_FDCAN_ERROR_NOT_INITIALIZED ((uint32_t)0x00000002U) /*!< Peripheral not initialized */ |
AnnaBridge | 172:65be27845400 | 802 | #define HAL_FDCAN_ERROR_NOT_READY ((uint32_t)0x00000004U) /*!< Peripheral not ready */ |
AnnaBridge | 172:65be27845400 | 803 | #define HAL_FDCAN_ERROR_NOT_STARTED ((uint32_t)0x00000008U) /*!< Peripheral not started */ |
AnnaBridge | 172:65be27845400 | 804 | #define HAL_FDCAN_ERROR_NOT_SUPPORTED ((uint32_t)0x00000010U) /*!< Mode not supported */ |
AnnaBridge | 172:65be27845400 | 805 | #define HAL_FDCAN_ERROR_PARAM ((uint32_t)0x00000020U) /*!< Parameter error */ |
AnnaBridge | 172:65be27845400 | 806 | #define HAL_FDCAN_ERROR_PENDING ((uint32_t)0x00000040U) /*!< Pending operation */ |
AnnaBridge | 172:65be27845400 | 807 | #define HAL_FDCAN_ERROR_RAM_ACCESS ((uint32_t)0x00000080U) /*!< Message RAM Access Failure */ |
AnnaBridge | 172:65be27845400 | 808 | #define HAL_FDCAN_ERROR_FIFO_EMPTY ((uint32_t)0x00000100U) /*!< Put element in full FIFO */ |
AnnaBridge | 172:65be27845400 | 809 | #define HAL_FDCAN_ERROR_FIFO_FULL ((uint32_t)0x00000200U) /*!< Get element from empty FIFO */ |
AnnaBridge | 172:65be27845400 | 810 | #define HAL_FDCAN_ERROR_LOG_OVERFLOW FDCAN_IR_ELO /*!< Overflow of CAN Error Logging Counter */ |
AnnaBridge | 172:65be27845400 | 811 | #define HAL_FDCAN_ERROR_RAM_WDG FDCAN_IR_WDI /*!< Message RAM Watchdog event occurred */ |
AnnaBridge | 172:65be27845400 | 812 | #define HAL_FDCAN_ERROR_PROTOCOL_ARBT FDCAN_IR_PEA /*!< Protocol Error in Arbitration Phase (Nominal Bit Time is used) */ |
AnnaBridge | 172:65be27845400 | 813 | #define HAL_FDCAN_ERROR_PROTOCOL_DATA FDCAN_IR_PED /*!< Protocol Error in Data Phase (Data Bit Time is used) */ |
AnnaBridge | 172:65be27845400 | 814 | #define HAL_FDCAN_ERROR_RESERVED_AREA FDCAN_IR_ARA /*!< Access to Reserved Address */ |
AnnaBridge | 172:65be27845400 | 815 | #define HAL_FDCAN_ERROR_TT_GLOBAL_TIME FDCAN_TTIR_GTE /*!< Global Time Error : Synchronization deviation exceeded limit */ |
AnnaBridge | 172:65be27845400 | 816 | #define HAL_FDCAN_ERROR_TT_TX_UNDERFLOW FDCAN_TTIR_TXU /*!< Tx Count Underflow : Less Tx trigger than expected in one matrix cycle */ |
AnnaBridge | 172:65be27845400 | 817 | #define HAL_FDCAN_ERROR_TT_TX_OVERFLOW FDCAN_TTIR_TXO /*!< Tx Count Overflow : More Tx trigger than expected in one matrix cycle */ |
AnnaBridge | 172:65be27845400 | 818 | #define HAL_FDCAN_ERROR_TT_SCHEDULE1 FDCAN_TTIR_SE1 /*!< Scheduling error 1 */ |
AnnaBridge | 172:65be27845400 | 819 | #define HAL_FDCAN_ERROR_TT_SCHEDULE2 FDCAN_TTIR_SE2 /*!< Scheduling error 2 */ |
AnnaBridge | 172:65be27845400 | 820 | #define HAL_FDCAN_ERROR_TT_NO_INIT_REF FDCAN_TTIR_IWT /*!< No system startup due to missing reference message */ |
AnnaBridge | 172:65be27845400 | 821 | #define HAL_FDCAN_ERROR_TT_NO_REF FDCAN_TTIR_WT /*!< Missing reference message */ |
AnnaBridge | 172:65be27845400 | 822 | #define HAL_FDCAN_ERROR_TT_APPL_WDG FDCAN_TTIR_AW /*!< Application watchdog not served in time */ |
AnnaBridge | 172:65be27845400 | 823 | #define HAL_FDCAN_ERROR_TT_CONFIG FDCAN_TTIR_CER /*!< Error found in trigger list */ |
AnnaBridge | 172:65be27845400 | 824 | |
AnnaBridge | 172:65be27845400 | 825 | #if USE_HAL_FDCAN_REGISTER_CALLBACKS == 1 |
AnnaBridge | 172:65be27845400 | 826 | #define HAL_FDCAN_ERROR_INVALID_CALLBACK ((uint32_t)0x00000100U) /*!< Invalid Callback error */ |
AnnaBridge | 172:65be27845400 | 827 | #endif /* USE_HAL_FDCAN_REGISTER_CALLBACKS */ |
AnnaBridge | 172:65be27845400 | 828 | /** |
AnnaBridge | 172:65be27845400 | 829 | * @} |
AnnaBridge | 172:65be27845400 | 830 | */ |
AnnaBridge | 172:65be27845400 | 831 | |
AnnaBridge | 172:65be27845400 | 832 | /** @defgroup FDCAN_frame_format FDCAN Frame Format |
AnnaBridge | 172:65be27845400 | 833 | * @{ |
AnnaBridge | 172:65be27845400 | 834 | */ |
AnnaBridge | 172:65be27845400 | 835 | #define FDCAN_FRAME_CLASSIC ((uint32_t)0x00000000U) /*!< Classic mode */ |
AnnaBridge | 172:65be27845400 | 836 | #define FDCAN_FRAME_FD_NO_BRS ((uint32_t)FDCAN_CCCR_FDOE) /*!< FD mode without BitRate Switching */ |
AnnaBridge | 172:65be27845400 | 837 | #define FDCAN_FRAME_FD_BRS ((uint32_t)(FDCAN_CCCR_FDOE | FDCAN_CCCR_BRSE)) /*!< FD mode with BitRate Switching */ |
AnnaBridge | 172:65be27845400 | 838 | /** |
AnnaBridge | 172:65be27845400 | 839 | * @} |
AnnaBridge | 172:65be27845400 | 840 | */ |
AnnaBridge | 172:65be27845400 | 841 | |
AnnaBridge | 172:65be27845400 | 842 | /** @defgroup FDCAN_operating_mode FDCAN Operating Mode |
AnnaBridge | 172:65be27845400 | 843 | * @{ |
AnnaBridge | 172:65be27845400 | 844 | */ |
AnnaBridge | 172:65be27845400 | 845 | #define FDCAN_MODE_NORMAL ((uint32_t)0x00000000U) /*!< Normal mode */ |
AnnaBridge | 172:65be27845400 | 846 | #define FDCAN_MODE_RESTRICTED_OPERATION ((uint32_t)0x00000001U) /*!< Restricted Operation mode */ |
AnnaBridge | 172:65be27845400 | 847 | #define FDCAN_MODE_BUS_MONITORING ((uint32_t)0x00000002U) /*!< Bus Monitoring mode */ |
AnnaBridge | 172:65be27845400 | 848 | #define FDCAN_MODE_INTERNAL_LOOPBACK ((uint32_t)0x00000003U) /*!< Internal LoopBack mode */ |
AnnaBridge | 172:65be27845400 | 849 | #define FDCAN_MODE_EXTERNAL_LOOPBACK ((uint32_t)0x00000004U) /*!< External LoopBack mode */ |
AnnaBridge | 172:65be27845400 | 850 | /** |
AnnaBridge | 172:65be27845400 | 851 | * @} |
AnnaBridge | 172:65be27845400 | 852 | */ |
AnnaBridge | 172:65be27845400 | 853 | |
AnnaBridge | 172:65be27845400 | 854 | /** @defgroup FDCAN_clock_calibration FDCAN Clock Calibration |
AnnaBridge | 172:65be27845400 | 855 | * @{ |
AnnaBridge | 172:65be27845400 | 856 | */ |
AnnaBridge | 172:65be27845400 | 857 | #define FDCAN_CLOCK_CALIBRATION_DISABLE ((uint32_t)0x00000000U) /*!< Disable Clock Calibration */ |
AnnaBridge | 172:65be27845400 | 858 | #define FDCAN_CLOCK_CALIBRATION_ENABLE ((uint32_t)0x00000001U) /*!< Enable Clock Calibration */ |
AnnaBridge | 172:65be27845400 | 859 | /** |
AnnaBridge | 172:65be27845400 | 860 | * @} |
AnnaBridge | 172:65be27845400 | 861 | */ |
AnnaBridge | 172:65be27845400 | 862 | |
AnnaBridge | 172:65be27845400 | 863 | /** @defgroup FDCAN_clock_divider FDCAN Clock Divider |
AnnaBridge | 172:65be27845400 | 864 | * @{ |
AnnaBridge | 172:65be27845400 | 865 | */ |
AnnaBridge | 172:65be27845400 | 866 | #define FDCAN_CLOCK_DIV1 ((uint32_t)0x00000000U) /*!< Divide kernel clock by 1 */ |
AnnaBridge | 172:65be27845400 | 867 | #define FDCAN_CLOCK_DIV2 ((uint32_t)0x00010000U) /*!< Divide kernel clock by 2 */ |
AnnaBridge | 172:65be27845400 | 868 | #define FDCAN_CLOCK_DIV4 ((uint32_t)0x00020000U) /*!< Divide kernel clock by 4 */ |
AnnaBridge | 172:65be27845400 | 869 | #define FDCAN_CLOCK_DIV6 ((uint32_t)0x00030000U) /*!< Divide kernel clock by 6 */ |
AnnaBridge | 172:65be27845400 | 870 | #define FDCAN_CLOCK_DIV8 ((uint32_t)0x00040000U) /*!< Divide kernel clock by 8 */ |
AnnaBridge | 172:65be27845400 | 871 | #define FDCAN_CLOCK_DIV10 ((uint32_t)0x00050000U) /*!< Divide kernel clock by 10 */ |
AnnaBridge | 172:65be27845400 | 872 | #define FDCAN_CLOCK_DIV12 ((uint32_t)0x00060000U) /*!< Divide kernel clock by 12 */ |
AnnaBridge | 172:65be27845400 | 873 | #define FDCAN_CLOCK_DIV14 ((uint32_t)0x00070000U) /*!< Divide kernel clock by 14 */ |
AnnaBridge | 172:65be27845400 | 874 | #define FDCAN_CLOCK_DIV16 ((uint32_t)0x00080000U) /*!< Divide kernel clock by 16 */ |
AnnaBridge | 172:65be27845400 | 875 | #define FDCAN_CLOCK_DIV18 ((uint32_t)0x00090000U) /*!< Divide kernel clock by 18 */ |
AnnaBridge | 172:65be27845400 | 876 | #define FDCAN_CLOCK_DIV20 ((uint32_t)0x000A0000U) /*!< Divide kernel clock by 20 */ |
AnnaBridge | 172:65be27845400 | 877 | #define FDCAN_CLOCK_DIV22 ((uint32_t)0x000B0000U) /*!< Divide kernel clock by 22 */ |
AnnaBridge | 172:65be27845400 | 878 | #define FDCAN_CLOCK_DIV24 ((uint32_t)0x000C0000U) /*!< Divide kernel clock by 24 */ |
AnnaBridge | 172:65be27845400 | 879 | #define FDCAN_CLOCK_DIV26 ((uint32_t)0x000D0000U) /*!< Divide kernel clock by 26 */ |
AnnaBridge | 172:65be27845400 | 880 | #define FDCAN_CLOCK_DIV28 ((uint32_t)0x000E0000U) /*!< Divide kernel clock by 28 */ |
AnnaBridge | 172:65be27845400 | 881 | #define FDCAN_CLOCK_DIV30 ((uint32_t)0x000F0000U) /*!< Divide kernel clock by 30 */ |
AnnaBridge | 172:65be27845400 | 882 | /** |
AnnaBridge | 172:65be27845400 | 883 | * @} |
AnnaBridge | 172:65be27845400 | 884 | */ |
AnnaBridge | 172:65be27845400 | 885 | |
AnnaBridge | 172:65be27845400 | 886 | /** @defgroup FDCAN_calibration_field_length FDCAN Calibration Field Length |
AnnaBridge | 172:65be27845400 | 887 | * @{ |
AnnaBridge | 172:65be27845400 | 888 | */ |
AnnaBridge | 172:65be27845400 | 889 | #define FDCAN_CALIB_FIELD_LENGTH_32 ((uint32_t)0x00000000U) /*!< Calibration field length is 32 bits */ |
AnnaBridge | 172:65be27845400 | 890 | #define FDCAN_CALIB_FIELD_LENGTH_64 ((uint32_t)FDCANCCU_CCFG_CFL) /*!< Calibration field length is 64 bits */ |
AnnaBridge | 172:65be27845400 | 891 | /** |
AnnaBridge | 172:65be27845400 | 892 | * @} |
AnnaBridge | 172:65be27845400 | 893 | */ |
AnnaBridge | 172:65be27845400 | 894 | |
AnnaBridge | 172:65be27845400 | 895 | /** @defgroup FDCAN_calibration_state FDCAN Calibration State |
AnnaBridge | 172:65be27845400 | 896 | * @{ |
AnnaBridge | 172:65be27845400 | 897 | */ |
AnnaBridge | 172:65be27845400 | 898 | #define FDCAN_CLOCK_NOT_CALIBRATED ((uint32_t)0x00000000U) /*!< Clock not calibrated */ |
AnnaBridge | 172:65be27845400 | 899 | #define FDCAN_CLOCK_BASIC_CALIBRATED ((uint32_t)0x40000000U) /*!< Clock basic calibrated */ |
AnnaBridge | 172:65be27845400 | 900 | #define FDCAN_CLOCK_PRECISION_CALIBRATED ((uint32_t)0x80000000U) /*!< Clock precision calibrated */ |
AnnaBridge | 172:65be27845400 | 901 | /** |
AnnaBridge | 172:65be27845400 | 902 | * @} |
AnnaBridge | 172:65be27845400 | 903 | */ |
AnnaBridge | 172:65be27845400 | 904 | |
AnnaBridge | 172:65be27845400 | 905 | /** @defgroup FDCAN_calibration_counter FDCAN Calibration Counter |
AnnaBridge | 172:65be27845400 | 906 | * @{ |
AnnaBridge | 172:65be27845400 | 907 | */ |
AnnaBridge | 172:65be27845400 | 908 | #define FDCAN_CALIB_TIME_QUANTA_COUNTER ((uint32_t)0x00000000U) /*!< Time Quanta Counter */ |
AnnaBridge | 172:65be27845400 | 909 | #define FDCAN_CALIB_CLOCK_PERIOD_COUNTER ((uint32_t)0x00000001U) /*!< Oscillator Clock Period Counter */ |
AnnaBridge | 172:65be27845400 | 910 | #define FDCAN_CALIB_WATCHDOG_COUNTER ((uint32_t)0x00000002U) /*!< Calibration Watchdog Counter */ |
AnnaBridge | 172:65be27845400 | 911 | /** |
AnnaBridge | 172:65be27845400 | 912 | * @} |
AnnaBridge | 172:65be27845400 | 913 | */ |
AnnaBridge | 172:65be27845400 | 914 | |
AnnaBridge | 172:65be27845400 | 915 | /** @defgroup FDCAN_data_field_size FDCAN Data Field Size |
AnnaBridge | 172:65be27845400 | 916 | * @{ |
AnnaBridge | 172:65be27845400 | 917 | */ |
AnnaBridge | 172:65be27845400 | 918 | #define FDCAN_DATA_BYTES_8 ((uint32_t)0x00000004U) /*!< 8 bytes data field */ |
AnnaBridge | 172:65be27845400 | 919 | #define FDCAN_DATA_BYTES_12 ((uint32_t)0x00000005U) /*!< 12 bytes data field */ |
AnnaBridge | 172:65be27845400 | 920 | #define FDCAN_DATA_BYTES_16 ((uint32_t)0x00000006U) /*!< 16 bytes data field */ |
AnnaBridge | 172:65be27845400 | 921 | #define FDCAN_DATA_BYTES_20 ((uint32_t)0x00000007U) /*!< 20 bytes data field */ |
AnnaBridge | 172:65be27845400 | 922 | #define FDCAN_DATA_BYTES_24 ((uint32_t)0x00000008U) /*!< 24 bytes data field */ |
AnnaBridge | 172:65be27845400 | 923 | #define FDCAN_DATA_BYTES_32 ((uint32_t)0x0000000AU) /*!< 32 bytes data field */ |
AnnaBridge | 172:65be27845400 | 924 | #define FDCAN_DATA_BYTES_48 ((uint32_t)0x0000000EU) /*!< 48 bytes data field */ |
AnnaBridge | 172:65be27845400 | 925 | #define FDCAN_DATA_BYTES_64 ((uint32_t)0x00000012U) /*!< 64 bytes data field */ |
AnnaBridge | 172:65be27845400 | 926 | /** |
AnnaBridge | 172:65be27845400 | 927 | * @} |
AnnaBridge | 172:65be27845400 | 928 | */ |
AnnaBridge | 172:65be27845400 | 929 | |
AnnaBridge | 172:65be27845400 | 930 | /** @defgroup FDCAN_txFifoQueue_Mode FDCAN Tx FIFO/Queue Mode |
AnnaBridge | 172:65be27845400 | 931 | * @{ |
AnnaBridge | 172:65be27845400 | 932 | */ |
AnnaBridge | 172:65be27845400 | 933 | #define FDCAN_TX_FIFO_OPERATION ((uint32_t)0x00000000U) /*!< FIFO mode */ |
AnnaBridge | 172:65be27845400 | 934 | #define FDCAN_TX_QUEUE_OPERATION ((uint32_t)FDCAN_TXBC_TFQM) /*!< Queue mode */ |
AnnaBridge | 172:65be27845400 | 935 | /** |
AnnaBridge | 172:65be27845400 | 936 | * @} |
AnnaBridge | 172:65be27845400 | 937 | */ |
AnnaBridge | 172:65be27845400 | 938 | |
AnnaBridge | 172:65be27845400 | 939 | /** @defgroup FDCAN_id_type FDCAN ID Type |
AnnaBridge | 172:65be27845400 | 940 | * @{ |
AnnaBridge | 172:65be27845400 | 941 | */ |
AnnaBridge | 172:65be27845400 | 942 | #define FDCAN_STANDARD_ID ((uint32_t)0x00000000U) /*!< Standard ID element */ |
AnnaBridge | 172:65be27845400 | 943 | #define FDCAN_EXTENDED_ID ((uint32_t)0x40000000U) /*!< Extended ID element */ |
AnnaBridge | 172:65be27845400 | 944 | /** |
AnnaBridge | 172:65be27845400 | 945 | * @} |
AnnaBridge | 172:65be27845400 | 946 | */ |
AnnaBridge | 172:65be27845400 | 947 | |
AnnaBridge | 172:65be27845400 | 948 | /** @defgroup FDCAN_frame_type FDCAN Frame Type |
AnnaBridge | 172:65be27845400 | 949 | * @{ |
AnnaBridge | 172:65be27845400 | 950 | */ |
AnnaBridge | 172:65be27845400 | 951 | #define FDCAN_DATA_FRAME ((uint32_t)0x00000000U) /*!< Data frame */ |
AnnaBridge | 172:65be27845400 | 952 | #define FDCAN_REMOTE_FRAME ((uint32_t)0x20000000U) /*!< Remote frame */ |
AnnaBridge | 172:65be27845400 | 953 | /** |
AnnaBridge | 172:65be27845400 | 954 | * @} |
AnnaBridge | 172:65be27845400 | 955 | */ |
AnnaBridge | 172:65be27845400 | 956 | |
AnnaBridge | 172:65be27845400 | 957 | /** @defgroup FDCAN_data_length_code FDCAN Data Length Code |
AnnaBridge | 172:65be27845400 | 958 | * @{ |
AnnaBridge | 172:65be27845400 | 959 | */ |
AnnaBridge | 172:65be27845400 | 960 | #define FDCAN_DLC_BYTES_0 ((uint32_t)0x00000000U) /*!< 0 bytes data field */ |
AnnaBridge | 172:65be27845400 | 961 | #define FDCAN_DLC_BYTES_1 ((uint32_t)0x00010000U) /*!< 1 bytes data field */ |
AnnaBridge | 172:65be27845400 | 962 | #define FDCAN_DLC_BYTES_2 ((uint32_t)0x00020000U) /*!< 2 bytes data field */ |
AnnaBridge | 172:65be27845400 | 963 | #define FDCAN_DLC_BYTES_3 ((uint32_t)0x00030000U) /*!< 3 bytes data field */ |
AnnaBridge | 172:65be27845400 | 964 | #define FDCAN_DLC_BYTES_4 ((uint32_t)0x00040000U) /*!< 4 bytes data field */ |
AnnaBridge | 172:65be27845400 | 965 | #define FDCAN_DLC_BYTES_5 ((uint32_t)0x00050000U) /*!< 5 bytes data field */ |
AnnaBridge | 172:65be27845400 | 966 | #define FDCAN_DLC_BYTES_6 ((uint32_t)0x00060000U) /*!< 6 bytes data field */ |
AnnaBridge | 172:65be27845400 | 967 | #define FDCAN_DLC_BYTES_7 ((uint32_t)0x00070000U) /*!< 7 bytes data field */ |
AnnaBridge | 172:65be27845400 | 968 | #define FDCAN_DLC_BYTES_8 ((uint32_t)0x00080000U) /*!< 8 bytes data field */ |
AnnaBridge | 172:65be27845400 | 969 | #define FDCAN_DLC_BYTES_12 ((uint32_t)0x00090000U) /*!< 12 bytes data field */ |
AnnaBridge | 172:65be27845400 | 970 | #define FDCAN_DLC_BYTES_16 ((uint32_t)0x000A0000U) /*!< 16 bytes data field */ |
AnnaBridge | 172:65be27845400 | 971 | #define FDCAN_DLC_BYTES_20 ((uint32_t)0x000B0000U) /*!< 20 bytes data field */ |
AnnaBridge | 172:65be27845400 | 972 | #define FDCAN_DLC_BYTES_24 ((uint32_t)0x000C0000U) /*!< 24 bytes data field */ |
AnnaBridge | 172:65be27845400 | 973 | #define FDCAN_DLC_BYTES_32 ((uint32_t)0x000D0000U) /*!< 32 bytes data field */ |
AnnaBridge | 172:65be27845400 | 974 | #define FDCAN_DLC_BYTES_48 ((uint32_t)0x000E0000U) /*!< 48 bytes data field */ |
AnnaBridge | 172:65be27845400 | 975 | #define FDCAN_DLC_BYTES_64 ((uint32_t)0x000F0000U) /*!< 64 bytes data field */ |
AnnaBridge | 172:65be27845400 | 976 | /** |
AnnaBridge | 172:65be27845400 | 977 | * @} |
AnnaBridge | 172:65be27845400 | 978 | */ |
AnnaBridge | 172:65be27845400 | 979 | |
AnnaBridge | 172:65be27845400 | 980 | /** @defgroup FDCAN_error_state_indicator FDCAN Error State Indicator |
AnnaBridge | 172:65be27845400 | 981 | * @{ |
AnnaBridge | 172:65be27845400 | 982 | */ |
AnnaBridge | 172:65be27845400 | 983 | #define FDCAN_ESI_ACTIVE ((uint32_t)0x00000000U) /*!< Transmitting node is error active */ |
AnnaBridge | 172:65be27845400 | 984 | #define FDCAN_ESI_PASSIVE ((uint32_t)0x80000000U) /*!< Transmitting node is error passive */ |
AnnaBridge | 172:65be27845400 | 985 | /** |
AnnaBridge | 172:65be27845400 | 986 | * @} |
AnnaBridge | 172:65be27845400 | 987 | */ |
AnnaBridge | 172:65be27845400 | 988 | |
AnnaBridge | 172:65be27845400 | 989 | /** @defgroup FDCAN_bit_rate_switching FDCAN Bit Rate Switching |
AnnaBridge | 172:65be27845400 | 990 | * @{ |
AnnaBridge | 172:65be27845400 | 991 | */ |
AnnaBridge | 172:65be27845400 | 992 | #define FDCAN_BRS_OFF ((uint32_t)0x00000000U) /*!< FDCAN frames transmitted/received without bit rate switching */ |
AnnaBridge | 172:65be27845400 | 993 | #define FDCAN_BRS_ON ((uint32_t)0x00100000U) /*!< FDCAN frames transmitted/received with bit rate switching */ |
AnnaBridge | 172:65be27845400 | 994 | /** |
AnnaBridge | 172:65be27845400 | 995 | * @} |
AnnaBridge | 172:65be27845400 | 996 | */ |
AnnaBridge | 172:65be27845400 | 997 | |
AnnaBridge | 172:65be27845400 | 998 | /** @defgroup FDCAN_format FDCAN format |
AnnaBridge | 172:65be27845400 | 999 | * @{ |
AnnaBridge | 172:65be27845400 | 1000 | */ |
AnnaBridge | 172:65be27845400 | 1001 | #define FDCAN_CLASSIC_CAN ((uint32_t)0x00000000U) /*!< Frame transmitted/received in Classic CAN format */ |
AnnaBridge | 172:65be27845400 | 1002 | #define FDCAN_FD_CAN ((uint32_t)0x00200000U) /*!< Frame transmitted/received in FDCAN format */ |
AnnaBridge | 172:65be27845400 | 1003 | /** |
AnnaBridge | 172:65be27845400 | 1004 | * @} |
AnnaBridge | 172:65be27845400 | 1005 | */ |
AnnaBridge | 172:65be27845400 | 1006 | |
AnnaBridge | 172:65be27845400 | 1007 | /** @defgroup FDCAN_EFC FDCAN Event FIFO control |
AnnaBridge | 172:65be27845400 | 1008 | * @{ |
AnnaBridge | 172:65be27845400 | 1009 | */ |
AnnaBridge | 172:65be27845400 | 1010 | #define FDCAN_NO_TX_EVENTS ((uint32_t)0x00000000U) /*!< Do not store Tx events */ |
AnnaBridge | 172:65be27845400 | 1011 | #define FDCAN_STORE_TX_EVENTS ((uint32_t)0x00800000U) /*!< Store Tx events */ |
AnnaBridge | 172:65be27845400 | 1012 | /** |
AnnaBridge | 172:65be27845400 | 1013 | * @} |
AnnaBridge | 172:65be27845400 | 1014 | */ |
AnnaBridge | 172:65be27845400 | 1015 | |
AnnaBridge | 172:65be27845400 | 1016 | /** @defgroup FDCAN_filter_type FDCAN Filter Type |
AnnaBridge | 172:65be27845400 | 1017 | * @{ |
AnnaBridge | 172:65be27845400 | 1018 | */ |
AnnaBridge | 172:65be27845400 | 1019 | #define FDCAN_FILTER_RANGE ((uint32_t)0x00000000U) /*!< Range filter from FilterID1 to FilterID2 */ |
AnnaBridge | 172:65be27845400 | 1020 | #define FDCAN_FILTER_DUAL ((uint32_t)0x00000001U) /*!< Dual ID filter for FilterID1 or FilterID2 */ |
AnnaBridge | 172:65be27845400 | 1021 | #define FDCAN_FILTER_MASK ((uint32_t)0x00000002U) /*!< Classic filter: FilterID1 = filter, FilterID2 = mask */ |
AnnaBridge | 172:65be27845400 | 1022 | #define FDCAN_FILTER_RANGE_NO_EIDM ((uint32_t)0x00000003U) /*!< Range filter from FilterID1 to FilterID2, EIDM mask not applied */ |
AnnaBridge | 172:65be27845400 | 1023 | /** |
AnnaBridge | 172:65be27845400 | 1024 | * @} |
AnnaBridge | 172:65be27845400 | 1025 | */ |
AnnaBridge | 172:65be27845400 | 1026 | |
AnnaBridge | 172:65be27845400 | 1027 | /** @defgroup FDCAN_filter_config FDCAN Filter Configuration |
AnnaBridge | 172:65be27845400 | 1028 | * @{ |
AnnaBridge | 172:65be27845400 | 1029 | */ |
AnnaBridge | 172:65be27845400 | 1030 | #define FDCAN_FILTER_DISABLE ((uint32_t)0x00000000U) /*!< Disable filter element */ |
AnnaBridge | 172:65be27845400 | 1031 | #define FDCAN_FILTER_TO_RXFIFO0 ((uint32_t)0x00000001U) /*!< Store in Rx FIFO 0 if filter matches */ |
AnnaBridge | 172:65be27845400 | 1032 | #define FDCAN_FILTER_TO_RXFIFO1 ((uint32_t)0x00000002U) /*!< Store in Rx FIFO 1 if filter matches */ |
AnnaBridge | 172:65be27845400 | 1033 | #define FDCAN_FILTER_REJECT ((uint32_t)0x00000003U) /*!< Reject ID if filter matches */ |
AnnaBridge | 172:65be27845400 | 1034 | #define FDCAN_FILTER_HP ((uint32_t)0x00000004U) /*!< Set high priority if filter matches */ |
AnnaBridge | 172:65be27845400 | 1035 | #define FDCAN_FILTER_TO_RXFIFO0_HP ((uint32_t)0x00000005U) /*!< Set high priority and store in FIFO 0 if filter matches */ |
AnnaBridge | 172:65be27845400 | 1036 | #define FDCAN_FILTER_TO_RXFIFO1_HP ((uint32_t)0x00000006U) /*!< Set high priority and store in FIFO 1 if filter matches */ |
AnnaBridge | 172:65be27845400 | 1037 | #define FDCAN_FILTER_TO_RXBUFFER ((uint32_t)0x00000007U) /*!< Store into Rx Buffer, configuration of FilterType ignored */ |
AnnaBridge | 172:65be27845400 | 1038 | /** |
AnnaBridge | 172:65be27845400 | 1039 | * @} |
AnnaBridge | 172:65be27845400 | 1040 | */ |
AnnaBridge | 172:65be27845400 | 1041 | |
AnnaBridge | 172:65be27845400 | 1042 | /** @defgroup FDCAN_Tx_location FDCAN Tx Location |
AnnaBridge | 172:65be27845400 | 1043 | * @{ |
AnnaBridge | 172:65be27845400 | 1044 | */ |
AnnaBridge | 172:65be27845400 | 1045 | #define FDCAN_TX_BUFFER0 ((uint32_t)0x00000001U) /*!< Add message to Tx Buffer 0 */ |
AnnaBridge | 172:65be27845400 | 1046 | #define FDCAN_TX_BUFFER1 ((uint32_t)0x00000002U) /*!< Add message to Tx Buffer 1 */ |
AnnaBridge | 172:65be27845400 | 1047 | #define FDCAN_TX_BUFFER2 ((uint32_t)0x00000004U) /*!< Add message to Tx Buffer 2 */ |
AnnaBridge | 172:65be27845400 | 1048 | #define FDCAN_TX_BUFFER3 ((uint32_t)0x00000008U) /*!< Add message to Tx Buffer 3 */ |
AnnaBridge | 172:65be27845400 | 1049 | #define FDCAN_TX_BUFFER4 ((uint32_t)0x00000010U) /*!< Add message to Tx Buffer 4 */ |
AnnaBridge | 172:65be27845400 | 1050 | #define FDCAN_TX_BUFFER5 ((uint32_t)0x00000020U) /*!< Add message to Tx Buffer 5 */ |
AnnaBridge | 172:65be27845400 | 1051 | #define FDCAN_TX_BUFFER6 ((uint32_t)0x00000040U) /*!< Add message to Tx Buffer 6 */ |
AnnaBridge | 172:65be27845400 | 1052 | #define FDCAN_TX_BUFFER7 ((uint32_t)0x00000080U) /*!< Add message to Tx Buffer 7 */ |
AnnaBridge | 172:65be27845400 | 1053 | #define FDCAN_TX_BUFFER8 ((uint32_t)0x00000100U) /*!< Add message to Tx Buffer 8 */ |
AnnaBridge | 172:65be27845400 | 1054 | #define FDCAN_TX_BUFFER9 ((uint32_t)0x00000200U) /*!< Add message to Tx Buffer 9 */ |
AnnaBridge | 172:65be27845400 | 1055 | #define FDCAN_TX_BUFFER10 ((uint32_t)0x00000400U) /*!< Add message to Tx Buffer 10 */ |
AnnaBridge | 172:65be27845400 | 1056 | #define FDCAN_TX_BUFFER11 ((uint32_t)0x00000800U) /*!< Add message to Tx Buffer 11 */ |
AnnaBridge | 172:65be27845400 | 1057 | #define FDCAN_TX_BUFFER12 ((uint32_t)0x00001000U) /*!< Add message to Tx Buffer 12 */ |
AnnaBridge | 172:65be27845400 | 1058 | #define FDCAN_TX_BUFFER13 ((uint32_t)0x00002000U) /*!< Add message to Tx Buffer 13 */ |
AnnaBridge | 172:65be27845400 | 1059 | #define FDCAN_TX_BUFFER14 ((uint32_t)0x00004000U) /*!< Add message to Tx Buffer 14 */ |
AnnaBridge | 172:65be27845400 | 1060 | #define FDCAN_TX_BUFFER15 ((uint32_t)0x00008000U) /*!< Add message to Tx Buffer 15 */ |
AnnaBridge | 172:65be27845400 | 1061 | #define FDCAN_TX_BUFFER16 ((uint32_t)0x00010000U) /*!< Add message to Tx Buffer 16 */ |
AnnaBridge | 172:65be27845400 | 1062 | #define FDCAN_TX_BUFFER17 ((uint32_t)0x00020000U) /*!< Add message to Tx Buffer 17 */ |
AnnaBridge | 172:65be27845400 | 1063 | #define FDCAN_TX_BUFFER18 ((uint32_t)0x00040000U) /*!< Add message to Tx Buffer 18 */ |
AnnaBridge | 172:65be27845400 | 1064 | #define FDCAN_TX_BUFFER19 ((uint32_t)0x00080000U) /*!< Add message to Tx Buffer 19 */ |
AnnaBridge | 172:65be27845400 | 1065 | #define FDCAN_TX_BUFFER20 ((uint32_t)0x00100000U) /*!< Add message to Tx Buffer 20 */ |
AnnaBridge | 172:65be27845400 | 1066 | #define FDCAN_TX_BUFFER21 ((uint32_t)0x00200000U) /*!< Add message to Tx Buffer 21 */ |
AnnaBridge | 172:65be27845400 | 1067 | #define FDCAN_TX_BUFFER22 ((uint32_t)0x00400000U) /*!< Add message to Tx Buffer 22 */ |
AnnaBridge | 172:65be27845400 | 1068 | #define FDCAN_TX_BUFFER23 ((uint32_t)0x00800000U) /*!< Add message to Tx Buffer 23 */ |
AnnaBridge | 172:65be27845400 | 1069 | #define FDCAN_TX_BUFFER24 ((uint32_t)0x01000000U) /*!< Add message to Tx Buffer 24 */ |
AnnaBridge | 172:65be27845400 | 1070 | #define FDCAN_TX_BUFFER25 ((uint32_t)0x02000000U) /*!< Add message to Tx Buffer 25 */ |
AnnaBridge | 172:65be27845400 | 1071 | #define FDCAN_TX_BUFFER26 ((uint32_t)0x04000000U) /*!< Add message to Tx Buffer 26 */ |
AnnaBridge | 172:65be27845400 | 1072 | #define FDCAN_TX_BUFFER27 ((uint32_t)0x08000000U) /*!< Add message to Tx Buffer 27 */ |
AnnaBridge | 172:65be27845400 | 1073 | #define FDCAN_TX_BUFFER28 ((uint32_t)0x10000000U) /*!< Add message to Tx Buffer 28 */ |
AnnaBridge | 172:65be27845400 | 1074 | #define FDCAN_TX_BUFFER29 ((uint32_t)0x20000000U) /*!< Add message to Tx Buffer 29 */ |
AnnaBridge | 172:65be27845400 | 1075 | #define FDCAN_TX_BUFFER30 ((uint32_t)0x40000000U) /*!< Add message to Tx Buffer 30 */ |
AnnaBridge | 172:65be27845400 | 1076 | #define FDCAN_TX_BUFFER31 ((uint32_t)0x80000000U) /*!< Add message to Tx Buffer 31 */ |
AnnaBridge | 172:65be27845400 | 1077 | /** |
AnnaBridge | 172:65be27845400 | 1078 | * @} |
AnnaBridge | 172:65be27845400 | 1079 | */ |
AnnaBridge | 172:65be27845400 | 1080 | |
AnnaBridge | 172:65be27845400 | 1081 | /** @defgroup FDCAN_Rx_location FDCAN Rx Location |
AnnaBridge | 172:65be27845400 | 1082 | * @{ |
AnnaBridge | 172:65be27845400 | 1083 | */ |
AnnaBridge | 172:65be27845400 | 1084 | #define FDCAN_RX_FIFO0 ((uint32_t)0x00000040U) /*!< Get received message from Rx FIFO 0 */ |
AnnaBridge | 172:65be27845400 | 1085 | #define FDCAN_RX_FIFO1 ((uint32_t)0x00000041U) /*!< Get received message from Rx FIFO 1 */ |
AnnaBridge | 172:65be27845400 | 1086 | #define FDCAN_RX_BUFFER0 ((uint32_t)0x00000000U) /*!< Get received message from Rx Buffer 0 */ |
AnnaBridge | 172:65be27845400 | 1087 | #define FDCAN_RX_BUFFER1 ((uint32_t)0x00000001U) /*!< Get received message from Rx Buffer 1 */ |
AnnaBridge | 172:65be27845400 | 1088 | #define FDCAN_RX_BUFFER2 ((uint32_t)0x00000002U) /*!< Get received message from Rx Buffer 2 */ |
AnnaBridge | 172:65be27845400 | 1089 | #define FDCAN_RX_BUFFER3 ((uint32_t)0x00000003U) /*!< Get received message from Rx Buffer 3 */ |
AnnaBridge | 172:65be27845400 | 1090 | #define FDCAN_RX_BUFFER4 ((uint32_t)0x00000004U) /*!< Get received message from Rx Buffer 4 */ |
AnnaBridge | 172:65be27845400 | 1091 | #define FDCAN_RX_BUFFER5 ((uint32_t)0x00000005U) /*!< Get received message from Rx Buffer 5 */ |
AnnaBridge | 172:65be27845400 | 1092 | #define FDCAN_RX_BUFFER6 ((uint32_t)0x00000006U) /*!< Get received message from Rx Buffer 6 */ |
AnnaBridge | 172:65be27845400 | 1093 | #define FDCAN_RX_BUFFER7 ((uint32_t)0x00000007U) /*!< Get received message from Rx Buffer 7 */ |
AnnaBridge | 172:65be27845400 | 1094 | #define FDCAN_RX_BUFFER8 ((uint32_t)0x00000008U) /*!< Get received message from Rx Buffer 8 */ |
AnnaBridge | 172:65be27845400 | 1095 | #define FDCAN_RX_BUFFER9 ((uint32_t)0x00000009U) /*!< Get received message from Rx Buffer 9 */ |
AnnaBridge | 172:65be27845400 | 1096 | #define FDCAN_RX_BUFFER10 ((uint32_t)0x0000000AU) /*!< Get received message from Rx Buffer 10 */ |
AnnaBridge | 172:65be27845400 | 1097 | #define FDCAN_RX_BUFFER11 ((uint32_t)0x0000000BU) /*!< Get received message from Rx Buffer 11 */ |
AnnaBridge | 172:65be27845400 | 1098 | #define FDCAN_RX_BUFFER12 ((uint32_t)0x0000000CU) /*!< Get received message from Rx Buffer 12 */ |
AnnaBridge | 172:65be27845400 | 1099 | #define FDCAN_RX_BUFFER13 ((uint32_t)0x0000000DU) /*!< Get received message from Rx Buffer 13 */ |
AnnaBridge | 172:65be27845400 | 1100 | #define FDCAN_RX_BUFFER14 ((uint32_t)0x0000000EU) /*!< Get received message from Rx Buffer 14 */ |
AnnaBridge | 172:65be27845400 | 1101 | #define FDCAN_RX_BUFFER15 ((uint32_t)0x0000000FU) /*!< Get received message from Rx Buffer 15 */ |
AnnaBridge | 172:65be27845400 | 1102 | #define FDCAN_RX_BUFFER16 ((uint32_t)0x00000010U) /*!< Get received message from Rx Buffer 16 */ |
AnnaBridge | 172:65be27845400 | 1103 | #define FDCAN_RX_BUFFER17 ((uint32_t)0x00000011U) /*!< Get received message from Rx Buffer 17 */ |
AnnaBridge | 172:65be27845400 | 1104 | #define FDCAN_RX_BUFFER18 ((uint32_t)0x00000012U) /*!< Get received message from Rx Buffer 18 */ |
AnnaBridge | 172:65be27845400 | 1105 | #define FDCAN_RX_BUFFER19 ((uint32_t)0x00000013U) /*!< Get received message from Rx Buffer 19 */ |
AnnaBridge | 172:65be27845400 | 1106 | #define FDCAN_RX_BUFFER20 ((uint32_t)0x00000014U) /*!< Get received message from Rx Buffer 20 */ |
AnnaBridge | 172:65be27845400 | 1107 | #define FDCAN_RX_BUFFER21 ((uint32_t)0x00000015U) /*!< Get received message from Rx Buffer 21 */ |
AnnaBridge | 172:65be27845400 | 1108 | #define FDCAN_RX_BUFFER22 ((uint32_t)0x00000016U) /*!< Get received message from Rx Buffer 22 */ |
AnnaBridge | 172:65be27845400 | 1109 | #define FDCAN_RX_BUFFER23 ((uint32_t)0x00000017U) /*!< Get received message from Rx Buffer 23 */ |
AnnaBridge | 172:65be27845400 | 1110 | #define FDCAN_RX_BUFFER24 ((uint32_t)0x00000018U) /*!< Get received message from Rx Buffer 24 */ |
AnnaBridge | 172:65be27845400 | 1111 | #define FDCAN_RX_BUFFER25 ((uint32_t)0x00000019U) /*!< Get received message from Rx Buffer 25 */ |
AnnaBridge | 172:65be27845400 | 1112 | #define FDCAN_RX_BUFFER26 ((uint32_t)0x0000001AU) /*!< Get received message from Rx Buffer 26 */ |
AnnaBridge | 172:65be27845400 | 1113 | #define FDCAN_RX_BUFFER27 ((uint32_t)0x0000001BU) /*!< Get received message from Rx Buffer 27 */ |
AnnaBridge | 172:65be27845400 | 1114 | #define FDCAN_RX_BUFFER28 ((uint32_t)0x0000001CU) /*!< Get received message from Rx Buffer 28 */ |
AnnaBridge | 172:65be27845400 | 1115 | #define FDCAN_RX_BUFFER29 ((uint32_t)0x0000001DU) /*!< Get received message from Rx Buffer 29 */ |
AnnaBridge | 172:65be27845400 | 1116 | #define FDCAN_RX_BUFFER30 ((uint32_t)0x0000001EU) /*!< Get received message from Rx Buffer 30 */ |
AnnaBridge | 172:65be27845400 | 1117 | #define FDCAN_RX_BUFFER31 ((uint32_t)0x0000001FU) /*!< Get received message from Rx Buffer 31 */ |
AnnaBridge | 172:65be27845400 | 1118 | #define FDCAN_RX_BUFFER32 ((uint32_t)0x00000020U) /*!< Get received message from Rx Buffer 32 */ |
AnnaBridge | 172:65be27845400 | 1119 | #define FDCAN_RX_BUFFER33 ((uint32_t)0x00000021U) /*!< Get received message from Rx Buffer 33 */ |
AnnaBridge | 172:65be27845400 | 1120 | #define FDCAN_RX_BUFFER34 ((uint32_t)0x00000022U) /*!< Get received message from Rx Buffer 34 */ |
AnnaBridge | 172:65be27845400 | 1121 | #define FDCAN_RX_BUFFER35 ((uint32_t)0x00000023U) /*!< Get received message from Rx Buffer 35 */ |
AnnaBridge | 172:65be27845400 | 1122 | #define FDCAN_RX_BUFFER36 ((uint32_t)0x00000024U) /*!< Get received message from Rx Buffer 36 */ |
AnnaBridge | 172:65be27845400 | 1123 | #define FDCAN_RX_BUFFER37 ((uint32_t)0x00000025U) /*!< Get received message from Rx Buffer 37 */ |
AnnaBridge | 172:65be27845400 | 1124 | #define FDCAN_RX_BUFFER38 ((uint32_t)0x00000026U) /*!< Get received message from Rx Buffer 38 */ |
AnnaBridge | 172:65be27845400 | 1125 | #define FDCAN_RX_BUFFER39 ((uint32_t)0x00000027U) /*!< Get received message from Rx Buffer 39 */ |
AnnaBridge | 172:65be27845400 | 1126 | #define FDCAN_RX_BUFFER40 ((uint32_t)0x00000028U) /*!< Get received message from Rx Buffer 40 */ |
AnnaBridge | 172:65be27845400 | 1127 | #define FDCAN_RX_BUFFER41 ((uint32_t)0x00000029U) /*!< Get received message from Rx Buffer 41 */ |
AnnaBridge | 172:65be27845400 | 1128 | #define FDCAN_RX_BUFFER42 ((uint32_t)0x0000002AU) /*!< Get received message from Rx Buffer 42 */ |
AnnaBridge | 172:65be27845400 | 1129 | #define FDCAN_RX_BUFFER43 ((uint32_t)0x0000002BU) /*!< Get received message from Rx Buffer 43 */ |
AnnaBridge | 172:65be27845400 | 1130 | #define FDCAN_RX_BUFFER44 ((uint32_t)0x0000002CU) /*!< Get received message from Rx Buffer 44 */ |
AnnaBridge | 172:65be27845400 | 1131 | #define FDCAN_RX_BUFFER45 ((uint32_t)0x0000002DU) /*!< Get received message from Rx Buffer 45 */ |
AnnaBridge | 172:65be27845400 | 1132 | #define FDCAN_RX_BUFFER46 ((uint32_t)0x0000002EU) /*!< Get received message from Rx Buffer 46 */ |
AnnaBridge | 172:65be27845400 | 1133 | #define FDCAN_RX_BUFFER47 ((uint32_t)0x0000002FU) /*!< Get received message from Rx Buffer 47 */ |
AnnaBridge | 172:65be27845400 | 1134 | #define FDCAN_RX_BUFFER48 ((uint32_t)0x00000030U) /*!< Get received message from Rx Buffer 48 */ |
AnnaBridge | 172:65be27845400 | 1135 | #define FDCAN_RX_BUFFER49 ((uint32_t)0x00000031U) /*!< Get received message from Rx Buffer 49 */ |
AnnaBridge | 172:65be27845400 | 1136 | #define FDCAN_RX_BUFFER50 ((uint32_t)0x00000032U) /*!< Get received message from Rx Buffer 50 */ |
AnnaBridge | 172:65be27845400 | 1137 | #define FDCAN_RX_BUFFER51 ((uint32_t)0x00000033U) /*!< Get received message from Rx Buffer 51 */ |
AnnaBridge | 172:65be27845400 | 1138 | #define FDCAN_RX_BUFFER52 ((uint32_t)0x00000034U) /*!< Get received message from Rx Buffer 52 */ |
AnnaBridge | 172:65be27845400 | 1139 | #define FDCAN_RX_BUFFER53 ((uint32_t)0x00000035U) /*!< Get received message from Rx Buffer 53 */ |
AnnaBridge | 172:65be27845400 | 1140 | #define FDCAN_RX_BUFFER54 ((uint32_t)0x00000036U) /*!< Get received message from Rx Buffer 54 */ |
AnnaBridge | 172:65be27845400 | 1141 | #define FDCAN_RX_BUFFER55 ((uint32_t)0x00000037U) /*!< Get received message from Rx Buffer 55 */ |
AnnaBridge | 172:65be27845400 | 1142 | #define FDCAN_RX_BUFFER56 ((uint32_t)0x00000038U) /*!< Get received message from Rx Buffer 56 */ |
AnnaBridge | 172:65be27845400 | 1143 | #define FDCAN_RX_BUFFER57 ((uint32_t)0x00000039U) /*!< Get received message from Rx Buffer 57 */ |
AnnaBridge | 172:65be27845400 | 1144 | #define FDCAN_RX_BUFFER58 ((uint32_t)0x0000003AU) /*!< Get received message from Rx Buffer 58 */ |
AnnaBridge | 172:65be27845400 | 1145 | #define FDCAN_RX_BUFFER59 ((uint32_t)0x0000003BU) /*!< Get received message from Rx Buffer 59 */ |
AnnaBridge | 172:65be27845400 | 1146 | #define FDCAN_RX_BUFFER60 ((uint32_t)0x0000003CU) /*!< Get received message from Rx Buffer 60 */ |
AnnaBridge | 172:65be27845400 | 1147 | #define FDCAN_RX_BUFFER61 ((uint32_t)0x0000003DU) /*!< Get received message from Rx Buffer 61 */ |
AnnaBridge | 172:65be27845400 | 1148 | #define FDCAN_RX_BUFFER62 ((uint32_t)0x0000003EU) /*!< Get received message from Rx Buffer 62 */ |
AnnaBridge | 172:65be27845400 | 1149 | #define FDCAN_RX_BUFFER63 ((uint32_t)0x0000003FU) /*!< Get received message from Rx Buffer 63 */ |
AnnaBridge | 172:65be27845400 | 1150 | /** |
AnnaBridge | 172:65be27845400 | 1151 | * @} |
AnnaBridge | 172:65be27845400 | 1152 | */ |
AnnaBridge | 172:65be27845400 | 1153 | |
AnnaBridge | 172:65be27845400 | 1154 | /** @defgroup FDCAN_event_type FDCAN Event Type |
AnnaBridge | 172:65be27845400 | 1155 | * @{ |
AnnaBridge | 172:65be27845400 | 1156 | */ |
AnnaBridge | 172:65be27845400 | 1157 | #define FDCAN_TX_EVENT ((uint32_t)0x00400000U) /*!< Tx event */ |
AnnaBridge | 172:65be27845400 | 1158 | #define FDCAN_TX_IN_SPITE_OF_ABORT ((uint32_t)0x00800000U) /*!< Transmission in spite of cancellation */ |
AnnaBridge | 172:65be27845400 | 1159 | /** |
AnnaBridge | 172:65be27845400 | 1160 | * @} |
AnnaBridge | 172:65be27845400 | 1161 | */ |
AnnaBridge | 172:65be27845400 | 1162 | |
AnnaBridge | 172:65be27845400 | 1163 | /** @defgroup FDCAN_hp_msg_storage FDCAN High Priority Message Storage |
AnnaBridge | 172:65be27845400 | 1164 | * @{ |
AnnaBridge | 172:65be27845400 | 1165 | */ |
AnnaBridge | 172:65be27845400 | 1166 | #define FDCAN_HP_STORAGE_NO_FIFO ((uint32_t)0x00000000U) /*!< No FIFO selected */ |
AnnaBridge | 172:65be27845400 | 1167 | #define FDCAN_HP_STORAGE_MSG_LOST ((uint32_t)0x00000040U) /*!< FIFO message lost */ |
AnnaBridge | 172:65be27845400 | 1168 | #define FDCAN_HP_STORAGE_RXFIFO0 ((uint32_t)0x00000080U) /*!< Message stored in FIFO 0 */ |
AnnaBridge | 172:65be27845400 | 1169 | #define FDCAN_HP_STORAGE_RXFIFO1 ((uint32_t)0x000000C0U) /*!< Message stored in FIFO 1 */ |
AnnaBridge | 172:65be27845400 | 1170 | /** |
AnnaBridge | 172:65be27845400 | 1171 | * @} |
AnnaBridge | 172:65be27845400 | 1172 | */ |
AnnaBridge | 172:65be27845400 | 1173 | |
AnnaBridge | 172:65be27845400 | 1174 | /** @defgroup FDCAN_protocol_error_code FDCAN protocol error code |
AnnaBridge | 172:65be27845400 | 1175 | * @{ |
AnnaBridge | 172:65be27845400 | 1176 | */ |
AnnaBridge | 172:65be27845400 | 1177 | #define FDCAN_PROTOCOL_ERROR_NONE ((uint32_t)0x00000000U) /*!< No error occurred */ |
AnnaBridge | 172:65be27845400 | 1178 | #define FDCAN_PROTOCOL_ERROR_STUFF ((uint32_t)0x00000001U) /*!< Stuff error */ |
AnnaBridge | 172:65be27845400 | 1179 | #define FDCAN_PROTOCOL_ERROR_FORM ((uint32_t)0x00000002U) /*!< Form error */ |
AnnaBridge | 172:65be27845400 | 1180 | #define FDCAN_PROTOCOL_ERROR_ACK ((uint32_t)0x00000003U) /*!< Acknowledge error */ |
AnnaBridge | 172:65be27845400 | 1181 | #define FDCAN_PROTOCOL_ERROR_BIT1 ((uint32_t)0x00000004U) /*!< Bit 1 (recessive) error */ |
AnnaBridge | 172:65be27845400 | 1182 | #define FDCAN_PROTOCOL_ERROR_BIT0 ((uint32_t)0x00000005U) /*!< Bit 0 (dominant) error */ |
AnnaBridge | 172:65be27845400 | 1183 | #define FDCAN_PROTOCOL_ERROR_CRC ((uint32_t)0x00000006U) /*!< CRC check sum error */ |
AnnaBridge | 172:65be27845400 | 1184 | #define FDCAN_PROTOCOL_ERROR_NO_CHANGE ((uint32_t)0x00000007U) /*!< No change since last read */ |
AnnaBridge | 172:65be27845400 | 1185 | /** |
AnnaBridge | 172:65be27845400 | 1186 | * @} |
AnnaBridge | 172:65be27845400 | 1187 | */ |
AnnaBridge | 172:65be27845400 | 1188 | |
AnnaBridge | 172:65be27845400 | 1189 | /** @defgroup FDCAN_communication_state FDCAN communication state |
AnnaBridge | 172:65be27845400 | 1190 | * @{ |
AnnaBridge | 172:65be27845400 | 1191 | */ |
AnnaBridge | 172:65be27845400 | 1192 | #define FDCAN_COM_STATE_SYNC ((uint32_t)0x00000000U) /*!< Node is synchronizing on CAN communication */ |
AnnaBridge | 172:65be27845400 | 1193 | #define FDCAN_COM_STATE_IDLE ((uint32_t)0x00000008U) /*!< Node is neither receiver nor transmitter */ |
AnnaBridge | 172:65be27845400 | 1194 | #define FDCAN_COM_STATE_RX ((uint32_t)0x00000010U) /*!< Node is operating as receiver */ |
AnnaBridge | 172:65be27845400 | 1195 | #define FDCAN_COM_STATE_TX ((uint32_t)0x00000018U) /*!< Node is operating as transmitter */ |
AnnaBridge | 172:65be27845400 | 1196 | /** |
AnnaBridge | 172:65be27845400 | 1197 | * @} |
AnnaBridge | 172:65be27845400 | 1198 | */ |
AnnaBridge | 172:65be27845400 | 1199 | |
AnnaBridge | 172:65be27845400 | 1200 | /** @defgroup FDCAN_FIFO_watermark FDCAN FIFO watermark |
AnnaBridge | 172:65be27845400 | 1201 | * @{ |
AnnaBridge | 172:65be27845400 | 1202 | */ |
AnnaBridge | 172:65be27845400 | 1203 | #define FDCAN_CFG_TX_EVENT_FIFO ((uint32_t)0x00000000U) /*!< Tx event FIFO */ |
AnnaBridge | 172:65be27845400 | 1204 | #define FDCAN_CFG_RX_FIFO0 ((uint32_t)0x00000001U) /*!< Rx FIFO0 */ |
AnnaBridge | 172:65be27845400 | 1205 | #define FDCAN_CFG_RX_FIFO1 ((uint32_t)0x00000002U) /*!< Rx FIFO1 */ |
AnnaBridge | 172:65be27845400 | 1206 | /** |
AnnaBridge | 172:65be27845400 | 1207 | * @} |
AnnaBridge | 172:65be27845400 | 1208 | */ |
AnnaBridge | 172:65be27845400 | 1209 | |
AnnaBridge | 172:65be27845400 | 1210 | /** @defgroup FDCAN_Rx_FIFO_operation_mode FDCAN FIFO operation mode |
AnnaBridge | 172:65be27845400 | 1211 | * @{ |
AnnaBridge | 172:65be27845400 | 1212 | */ |
AnnaBridge | 172:65be27845400 | 1213 | #define FDCAN_RX_FIFO_BLOCKING ((uint32_t)0x00000000U) /*!< Rx FIFO blocking mode */ |
AnnaBridge | 172:65be27845400 | 1214 | #define FDCAN_RX_FIFO_OVERWRITE ((uint32_t)0x80000000U) /*!< Rx FIFO overwrite mode */ |
AnnaBridge | 172:65be27845400 | 1215 | /** |
AnnaBridge | 172:65be27845400 | 1216 | * @} |
AnnaBridge | 172:65be27845400 | 1217 | */ |
AnnaBridge | 172:65be27845400 | 1218 | |
AnnaBridge | 172:65be27845400 | 1219 | /** @defgroup FDCAN_Non_Matching_Frames FDCAN non-matching frames |
AnnaBridge | 172:65be27845400 | 1220 | * @{ |
AnnaBridge | 172:65be27845400 | 1221 | */ |
AnnaBridge | 172:65be27845400 | 1222 | #define FDCAN_ACCEPT_IN_RX_FIFO0 ((uint32_t)0x00000000U) /*!< Accept in Rx FIFO 0 */ |
AnnaBridge | 172:65be27845400 | 1223 | #define FDCAN_ACCEPT_IN_RX_FIFO1 ((uint32_t)0x00000001U) /*!< Accept in Rx FIFO 1 */ |
AnnaBridge | 172:65be27845400 | 1224 | #define FDCAN_REJECT ((uint32_t)0x00000002U) /*!< Reject */ |
AnnaBridge | 172:65be27845400 | 1225 | /** |
AnnaBridge | 172:65be27845400 | 1226 | * @} |
AnnaBridge | 172:65be27845400 | 1227 | */ |
AnnaBridge | 172:65be27845400 | 1228 | |
AnnaBridge | 172:65be27845400 | 1229 | /** @defgroup FDCAN_Reject_Remote_Frames FDCAN reject remote frames |
AnnaBridge | 172:65be27845400 | 1230 | * @{ |
AnnaBridge | 172:65be27845400 | 1231 | */ |
AnnaBridge | 172:65be27845400 | 1232 | #define FDCAN_FILTER_REMOTE ((uint32_t)0x00000000U) /*!< Filter remote frames */ |
AnnaBridge | 172:65be27845400 | 1233 | #define FDCAN_REJECT_REMOTE ((uint32_t)0x00000001U) /*!< Reject all remote frames */ |
AnnaBridge | 172:65be27845400 | 1234 | /** |
AnnaBridge | 172:65be27845400 | 1235 | * @} |
AnnaBridge | 172:65be27845400 | 1236 | */ |
AnnaBridge | 172:65be27845400 | 1237 | |
AnnaBridge | 172:65be27845400 | 1238 | /** @defgroup FDCAN_Interrupt_Line FDCAN interrupt line |
AnnaBridge | 172:65be27845400 | 1239 | * @{ |
AnnaBridge | 172:65be27845400 | 1240 | */ |
AnnaBridge | 172:65be27845400 | 1241 | #define FDCAN_INTERRUPT_LINE0 ((uint32_t)0x00000001U) /*!< Interrupt Line 0 */ |
AnnaBridge | 172:65be27845400 | 1242 | #define FDCAN_INTERRUPT_LINE1 ((uint32_t)0x00000002U) /*!< Interrupt Line 1 */ |
AnnaBridge | 172:65be27845400 | 1243 | /** |
AnnaBridge | 172:65be27845400 | 1244 | * @} |
AnnaBridge | 172:65be27845400 | 1245 | */ |
AnnaBridge | 172:65be27845400 | 1246 | |
AnnaBridge | 172:65be27845400 | 1247 | /** @defgroup FDCAN_Timestamp FDCAN timestamp |
AnnaBridge | 172:65be27845400 | 1248 | * @{ |
AnnaBridge | 172:65be27845400 | 1249 | */ |
AnnaBridge | 172:65be27845400 | 1250 | #define FDCAN_TIMESTAMP_INTERNAL ((uint32_t)0x00000001U) /*!< Timestamp counter value incremented according to TCP */ |
AnnaBridge | 172:65be27845400 | 1251 | #define FDCAN_TIMESTAMP_EXTERNAL ((uint32_t)0x00000002U) /*!< External timestamp counter value used */ |
AnnaBridge | 172:65be27845400 | 1252 | /** |
AnnaBridge | 172:65be27845400 | 1253 | * @} |
AnnaBridge | 172:65be27845400 | 1254 | */ |
AnnaBridge | 172:65be27845400 | 1255 | |
AnnaBridge | 172:65be27845400 | 1256 | /** @defgroup FDCAN_Timestamp_Prescaler FDCAN timestamp prescaler |
AnnaBridge | 172:65be27845400 | 1257 | * @{ |
AnnaBridge | 172:65be27845400 | 1258 | */ |
AnnaBridge | 172:65be27845400 | 1259 | #define FDCAN_TIMESTAMP_PRESC_1 ((uint32_t)0x00000000U) /*!< Timestamp counter time unit in equal to CAN bit time */ |
AnnaBridge | 172:65be27845400 | 1260 | #define FDCAN_TIMESTAMP_PRESC_2 ((uint32_t)0x00010000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 2 */ |
AnnaBridge | 172:65be27845400 | 1261 | #define FDCAN_TIMESTAMP_PRESC_3 ((uint32_t)0x00020000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 3 */ |
AnnaBridge | 172:65be27845400 | 1262 | #define FDCAN_TIMESTAMP_PRESC_4 ((uint32_t)0x00030000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 4 */ |
AnnaBridge | 172:65be27845400 | 1263 | #define FDCAN_TIMESTAMP_PRESC_5 ((uint32_t)0x00040000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 5 */ |
AnnaBridge | 172:65be27845400 | 1264 | #define FDCAN_TIMESTAMP_PRESC_6 ((uint32_t)0x00050000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 6 */ |
AnnaBridge | 172:65be27845400 | 1265 | #define FDCAN_TIMESTAMP_PRESC_7 ((uint32_t)0x00060000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 7 */ |
AnnaBridge | 172:65be27845400 | 1266 | #define FDCAN_TIMESTAMP_PRESC_8 ((uint32_t)0x00070000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 8 */ |
AnnaBridge | 172:65be27845400 | 1267 | #define FDCAN_TIMESTAMP_PRESC_9 ((uint32_t)0x00080000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 9 */ |
AnnaBridge | 172:65be27845400 | 1268 | #define FDCAN_TIMESTAMP_PRESC_10 ((uint32_t)0x00090000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 10 */ |
AnnaBridge | 172:65be27845400 | 1269 | #define FDCAN_TIMESTAMP_PRESC_11 ((uint32_t)0x000A0000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 11 */ |
AnnaBridge | 172:65be27845400 | 1270 | #define FDCAN_TIMESTAMP_PRESC_12 ((uint32_t)0x000B0000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 12 */ |
AnnaBridge | 172:65be27845400 | 1271 | #define FDCAN_TIMESTAMP_PRESC_13 ((uint32_t)0x000C0000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 13 */ |
AnnaBridge | 172:65be27845400 | 1272 | #define FDCAN_TIMESTAMP_PRESC_14 ((uint32_t)0x000D0000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 14 */ |
AnnaBridge | 172:65be27845400 | 1273 | #define FDCAN_TIMESTAMP_PRESC_15 ((uint32_t)0x000E0000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 15 */ |
AnnaBridge | 172:65be27845400 | 1274 | #define FDCAN_TIMESTAMP_PRESC_16 ((uint32_t)0x000F0000U) /*!< Timestamp counter time unit in equal to CAN bit time multipled by 16 */ |
AnnaBridge | 172:65be27845400 | 1275 | /** |
AnnaBridge | 172:65be27845400 | 1276 | * @} |
AnnaBridge | 172:65be27845400 | 1277 | */ |
AnnaBridge | 172:65be27845400 | 1278 | |
AnnaBridge | 172:65be27845400 | 1279 | /** @defgroup FDCAN_Timeout_Operation FDCAN timeout operation |
AnnaBridge | 172:65be27845400 | 1280 | * @{ |
AnnaBridge | 172:65be27845400 | 1281 | */ |
AnnaBridge | 172:65be27845400 | 1282 | #define FDCAN_TIMEOUT_CONTINUOUS ((uint32_t)0x00000000U) /*!< Timeout continuous operation */ |
AnnaBridge | 172:65be27845400 | 1283 | #define FDCAN_TIMEOUT_TX_EVENT_FIFO ((uint32_t)0x00000002U) /*!< Timeout controlled by Tx Event FIFO */ |
AnnaBridge | 172:65be27845400 | 1284 | #define FDCAN_TIMEOUT_RX_FIFO0 ((uint32_t)0x00000004U) /*!< Timeout controlled by Rx FIFO 0 */ |
AnnaBridge | 172:65be27845400 | 1285 | #define FDCAN_TIMEOUT_RX_FIFO1 ((uint32_t)0x00000006U) /*!< Timeout controlled by Rx FIFO 1 */ |
AnnaBridge | 172:65be27845400 | 1286 | /** |
AnnaBridge | 172:65be27845400 | 1287 | * @} |
AnnaBridge | 172:65be27845400 | 1288 | */ |
AnnaBridge | 172:65be27845400 | 1289 | |
AnnaBridge | 172:65be27845400 | 1290 | /** @defgroup FDCAN_TT_Reference_Message_Payload FDCAN TT reference message payload |
AnnaBridge | 172:65be27845400 | 1291 | * @{ |
AnnaBridge | 172:65be27845400 | 1292 | */ |
AnnaBridge | 172:65be27845400 | 1293 | #define FDCAN_TT_REF_MESSAGE_NO_PAYLOAD ((uint32_t)0x00000000U) /*!< Reference message has no additional payload */ |
AnnaBridge | 172:65be27845400 | 1294 | #define FDCAN_TT_REF_MESSAGE_ADD_PAYLOAD ((uint32_t)FDCAN_TTRMC_RMPS) /*!< Additional payload is taken from Tx Buffer 0 */ |
AnnaBridge | 172:65be27845400 | 1295 | /** |
AnnaBridge | 172:65be27845400 | 1296 | * @} |
AnnaBridge | 172:65be27845400 | 1297 | */ |
AnnaBridge | 172:65be27845400 | 1298 | |
AnnaBridge | 172:65be27845400 | 1299 | /** @defgroup FDCAN_TT_Repeat_Factor FDCAN TT repeat factor |
AnnaBridge | 172:65be27845400 | 1300 | * @{ |
AnnaBridge | 172:65be27845400 | 1301 | */ |
AnnaBridge | 172:65be27845400 | 1302 | #define FDCAN_TT_REPEAT_EVERY_CYCLE ((uint32_t)0x00000000U) /*!< Trigger valid for all cycles */ |
AnnaBridge | 172:65be27845400 | 1303 | #define FDCAN_TT_REPEAT_EVERY_2ND_CYCLE ((uint32_t)0x00000002U) /*!< Trigger valid every 2dn cycle */ |
AnnaBridge | 172:65be27845400 | 1304 | #define FDCAN_TT_REPEAT_EVERY_4TH_CYCLE ((uint32_t)0x00000004U) /*!< Trigger valid every 4th cycle */ |
AnnaBridge | 172:65be27845400 | 1305 | #define FDCAN_TT_REPEAT_EVERY_8TH_CYCLE ((uint32_t)0x00000008U) /*!< Trigger valid every 8th cycle */ |
AnnaBridge | 172:65be27845400 | 1306 | #define FDCAN_TT_REPEAT_EVERY_16TH_CYCLE ((uint32_t)0x00000010U) /*!< Trigger valid every 16th cycle */ |
AnnaBridge | 172:65be27845400 | 1307 | #define FDCAN_TT_REPEAT_EVERY_32ND_CYCLE ((uint32_t)0x00000020U) /*!< Trigger valid every 32nd cycle */ |
AnnaBridge | 172:65be27845400 | 1308 | #define FDCAN_TT_REPEAT_EVERY_64TH_CYCLE ((uint32_t)0x00000040U) /*!< Trigger valid every 64th cycle */ |
AnnaBridge | 172:65be27845400 | 1309 | /** |
AnnaBridge | 172:65be27845400 | 1310 | * @} |
AnnaBridge | 172:65be27845400 | 1311 | */ |
AnnaBridge | 172:65be27845400 | 1312 | |
AnnaBridge | 172:65be27845400 | 1313 | /** @defgroup FDCAN_TT_Trigger_Type FDCAN TT trigger type |
AnnaBridge | 172:65be27845400 | 1314 | * @{ |
AnnaBridge | 172:65be27845400 | 1315 | */ |
AnnaBridge | 172:65be27845400 | 1316 | #define FDCAN_TT_TX_REF_TRIGGER ((uint32_t)0x00000000U) /*!< Transmit reference message in strictly time-triggered operation */ |
AnnaBridge | 172:65be27845400 | 1317 | #define FDCAN_TT_TX_REF_TRIGGER_GAP ((uint32_t)0x00000001U) /*!< Transmit reference message in external event-synchronized time-triggered operation */ |
AnnaBridge | 172:65be27845400 | 1318 | #define FDCAN_TT_TX_TRIGGER_SINGLE ((uint32_t)0x00000002U) /*!< Start a single transmission in an exclusive time window */ |
AnnaBridge | 172:65be27845400 | 1319 | #define FDCAN_TT_TX_TRIGGER_CONTINUOUS ((uint32_t)0x00000003U) /*!< Start a continuous transmission in an exclusive time window */ |
AnnaBridge | 172:65be27845400 | 1320 | #define FDCAN_TT_TX_TRIGGER_ARBITRATION ((uint32_t)0x00000004U) /*!< Start a transmission in an arbitration time window */ |
AnnaBridge | 172:65be27845400 | 1321 | #define FDCAN_TT_TX_TRIGGER_MERGED ((uint32_t)0x00000005U) /*!< Start a merged arbitration window */ |
AnnaBridge | 172:65be27845400 | 1322 | #define FDCAN_TT_WATCH_TRIGGER ((uint32_t)0x00000006U) /*!< Check for missing reference messages in strictly time-triggered operation */ |
AnnaBridge | 172:65be27845400 | 1323 | #define FDCAN_TT_WATCH_TRIGGER_GAP ((uint32_t)0x00000007U) /*!< Check for missing reference messages in external event-synchronized time-triggered operation */ |
AnnaBridge | 172:65be27845400 | 1324 | #define FDCAN_TT_RX_TRIGGER ((uint32_t)0x00000008U) /*!< Check for the reception of periodic messages in exclusive time windows */ |
AnnaBridge | 172:65be27845400 | 1325 | #define FDCAN_TT_TIME_BASE_TRIGGER ((uint32_t)0x00000009U) /*!< Generate internal/external events depending on TmEventInt/TmEventExt configuration */ |
AnnaBridge | 172:65be27845400 | 1326 | #define FDCAN_TT_END_OF_LIST ((uint32_t)0x0000000AU) /*!< Illegal trigger, to be assigned to the unused triggers after a FDCAN_TT_WATCH_TRIGGER or FDCAN_TT_WATCH_TRIGGER_GAP */ |
AnnaBridge | 172:65be27845400 | 1327 | /** |
AnnaBridge | 172:65be27845400 | 1328 | * @} |
AnnaBridge | 172:65be27845400 | 1329 | */ |
AnnaBridge | 172:65be27845400 | 1330 | |
AnnaBridge | 172:65be27845400 | 1331 | /** @defgroup FDCAN_TT_Time_Mark_Event_Internal FDCAN TT time mark event internal |
AnnaBridge | 172:65be27845400 | 1332 | * @{ |
AnnaBridge | 172:65be27845400 | 1333 | */ |
AnnaBridge | 172:65be27845400 | 1334 | #define FDCAN_TT_TM_NO_INTERNAL_EVENT ((uint32_t)0x00000000U) /*!< No action */ |
AnnaBridge | 172:65be27845400 | 1335 | #define FDCAN_TT_TM_GEN_INTERNAL_EVENT ((uint32_t)0x00000020U) /*!< Internal event is generated when trigger becomes active */ |
AnnaBridge | 172:65be27845400 | 1336 | /** |
AnnaBridge | 172:65be27845400 | 1337 | * @} |
AnnaBridge | 172:65be27845400 | 1338 | */ |
AnnaBridge | 172:65be27845400 | 1339 | |
AnnaBridge | 172:65be27845400 | 1340 | /** @defgroup FDCAN_TT_Time_Mark_Event_External FDCAN TT time mark event external |
AnnaBridge | 172:65be27845400 | 1341 | * @{ |
AnnaBridge | 172:65be27845400 | 1342 | */ |
AnnaBridge | 172:65be27845400 | 1343 | #define FDCAN_TT_TM_NO_EXTERNAL_EVENT ((uint32_t)0x00000000U) /*!< No action */ |
AnnaBridge | 172:65be27845400 | 1344 | #define FDCAN_TT_TM_GEN_EXTERNAL_EVENT ((uint32_t)0x00000010U) /*!< External event (pulse) is generated when trigger becomes active */ |
AnnaBridge | 172:65be27845400 | 1345 | /** |
AnnaBridge | 172:65be27845400 | 1346 | * @} |
AnnaBridge | 172:65be27845400 | 1347 | */ |
AnnaBridge | 172:65be27845400 | 1348 | |
AnnaBridge | 172:65be27845400 | 1349 | /** @defgroup FDCAN_operation_mode FDCAN Operation Mode |
AnnaBridge | 172:65be27845400 | 1350 | * @{ |
AnnaBridge | 172:65be27845400 | 1351 | */ |
AnnaBridge | 172:65be27845400 | 1352 | #define FDCAN_TT_COMMUNICATION_LEVEL1 ((uint32_t)0x00000001U) /*!< Time triggered communication, level 1 */ |
AnnaBridge | 172:65be27845400 | 1353 | #define FDCAN_TT_COMMUNICATION_LEVEL2 ((uint32_t)0x00000002U) /*!< Time triggered communication, level 2 */ |
AnnaBridge | 172:65be27845400 | 1354 | #define FDCAN_TT_COMMUNICATION_LEVEL0 ((uint32_t)0x00000003U) /*!< Time triggered communication, level 0 */ |
AnnaBridge | 172:65be27845400 | 1355 | /** |
AnnaBridge | 172:65be27845400 | 1356 | * @} |
AnnaBridge | 172:65be27845400 | 1357 | */ |
AnnaBridge | 172:65be27845400 | 1358 | |
AnnaBridge | 172:65be27845400 | 1359 | /** @defgroup FDCAN_TT_operation FDCAN TT Operation |
AnnaBridge | 172:65be27845400 | 1360 | * @{ |
AnnaBridge | 172:65be27845400 | 1361 | */ |
AnnaBridge | 172:65be27845400 | 1362 | #define FDCAN_STRICTLY_TT_OPERATION ((uint32_t)0x00000000U) /*!< Strictly time-triggered operation */ |
AnnaBridge | 172:65be27845400 | 1363 | #define FDCAN_EXT_EVT_SYNC_TT_OPERATION ((uint32_t)FDCAN_TTOCF_GEN) /*!< External event-synchronized time-triggered operation */ |
AnnaBridge | 172:65be27845400 | 1364 | /** |
AnnaBridge | 172:65be27845400 | 1365 | * @} |
AnnaBridge | 172:65be27845400 | 1366 | */ |
AnnaBridge | 172:65be27845400 | 1367 | |
AnnaBridge | 172:65be27845400 | 1368 | /** @defgroup FDCAN_TT_time_master FDCAN TT Time Master |
AnnaBridge | 172:65be27845400 | 1369 | * @{ |
AnnaBridge | 172:65be27845400 | 1370 | */ |
AnnaBridge | 172:65be27845400 | 1371 | #define FDCAN_TT_SLAVE ((uint32_t)0x00000000U) /*!< Time slave */ |
AnnaBridge | 172:65be27845400 | 1372 | #define FDCAN_TT_POTENTIAL_MASTER ((uint32_t)FDCAN_TTOCF_TM) /*!< Potential time master */ |
AnnaBridge | 172:65be27845400 | 1373 | /** |
AnnaBridge | 172:65be27845400 | 1374 | * @} |
AnnaBridge | 172:65be27845400 | 1375 | */ |
AnnaBridge | 172:65be27845400 | 1376 | |
AnnaBridge | 172:65be27845400 | 1377 | /** @defgroup FDCAN_TT_external_clk_sync FDCAN TT External Clock Synchronization |
AnnaBridge | 172:65be27845400 | 1378 | * @{ |
AnnaBridge | 172:65be27845400 | 1379 | */ |
AnnaBridge | 172:65be27845400 | 1380 | #define FDCAN_TT_EXT_CLK_SYNC_DISABLE ((uint32_t)0x00000000U) /*!< External clock synchronization in Level 0,2 disabled */ |
AnnaBridge | 172:65be27845400 | 1381 | #define FDCAN_TT_EXT_CLK_SYNC_ENABLE ((uint32_t)FDCAN_TTOCF_EECS) /*!< External clock synchronization in Level 0,2 enabled */ |
AnnaBridge | 172:65be27845400 | 1382 | /** |
AnnaBridge | 172:65be27845400 | 1383 | * @} |
AnnaBridge | 172:65be27845400 | 1384 | */ |
AnnaBridge | 172:65be27845400 | 1385 | |
AnnaBridge | 172:65be27845400 | 1386 | /** @defgroup FDCAN_TT_global_time_filtering FDCAN TT Global Time Filtering |
AnnaBridge | 172:65be27845400 | 1387 | * @{ |
AnnaBridge | 172:65be27845400 | 1388 | */ |
AnnaBridge | 172:65be27845400 | 1389 | #define FDCAN_TT_GLOB_TIME_FILT_DISABLE ((uint32_t)0x00000000U) /*!< Global time filtering in Level 0,2 disabled */ |
AnnaBridge | 172:65be27845400 | 1390 | #define FDCAN_TT_GLOB_TIME_FILT_ENABLE ((uint32_t)FDCAN_TTOCF_EGTF) /*!< Global time filtering in Level 0,2 enabled */ |
AnnaBridge | 172:65be27845400 | 1391 | /** |
AnnaBridge | 172:65be27845400 | 1392 | * @} |
AnnaBridge | 172:65be27845400 | 1393 | */ |
AnnaBridge | 172:65be27845400 | 1394 | |
AnnaBridge | 172:65be27845400 | 1395 | /** @defgroup FDCAN_TT_auto_clk_calibration FDCAN TT Automatic Clock Calibration |
AnnaBridge | 172:65be27845400 | 1396 | * @{ |
AnnaBridge | 172:65be27845400 | 1397 | */ |
AnnaBridge | 172:65be27845400 | 1398 | #define FDCAN_TT_AUTO_CLK_CALIB_DISABLE ((uint32_t)0x00000000U) /*!< Automatic clock calibration in Level 0,2 disabled */ |
AnnaBridge | 172:65be27845400 | 1399 | #define FDCAN_TT_AUTO_CLK_CALIB_ENABLE ((uint32_t)FDCAN_TTOCF_ECC) /*!< Automatic clock calibration in Level 0,2 enabled */ |
AnnaBridge | 172:65be27845400 | 1400 | /** |
AnnaBridge | 172:65be27845400 | 1401 | * @} |
AnnaBridge | 172:65be27845400 | 1402 | */ |
AnnaBridge | 172:65be27845400 | 1403 | |
AnnaBridge | 172:65be27845400 | 1404 | /** @defgroup FDCAN_TT_event_trig_polarity FDCAN TT Event Trigger Polarity |
AnnaBridge | 172:65be27845400 | 1405 | * @{ |
AnnaBridge | 172:65be27845400 | 1406 | */ |
AnnaBridge | 172:65be27845400 | 1407 | #define FDCAN_TT_EVT_TRIG_POL_RISING ((uint32_t)0x00000000U) /*!< Rising edge trigger */ |
AnnaBridge | 172:65be27845400 | 1408 | #define FDCAN_TT_EVT_TRIG_POL_FALLING ((uint32_t)FDCAN_TTOCF_EVTP) /*!< Falling edge trigger */ |
AnnaBridge | 172:65be27845400 | 1409 | /** |
AnnaBridge | 172:65be27845400 | 1410 | * @} |
AnnaBridge | 172:65be27845400 | 1411 | */ |
AnnaBridge | 172:65be27845400 | 1412 | |
AnnaBridge | 172:65be27845400 | 1413 | /** @defgroup FDCAN_TT_basic_cycle_number FDCAN TT Basic Cycle Number |
AnnaBridge | 172:65be27845400 | 1414 | * @{ |
AnnaBridge | 172:65be27845400 | 1415 | */ |
AnnaBridge | 172:65be27845400 | 1416 | #define FDCAN_TT_CYCLES_PER_MATRIX_1 ((uint32_t)0x00000000U) /*!< 1 Basic Cycle per Matrix */ |
AnnaBridge | 172:65be27845400 | 1417 | #define FDCAN_TT_CYCLES_PER_MATRIX_2 ((uint32_t)0x00000001U) /*!< 2 Basic Cycles per Matrix */ |
AnnaBridge | 172:65be27845400 | 1418 | #define FDCAN_TT_CYCLES_PER_MATRIX_4 ((uint32_t)0x00000003U) /*!< 4 Basic Cycles per Matrix */ |
AnnaBridge | 172:65be27845400 | 1419 | #define FDCAN_TT_CYCLES_PER_MATRIX_8 ((uint32_t)0x00000007U) /*!< 8 Basic Cycles per Matrix */ |
AnnaBridge | 172:65be27845400 | 1420 | #define FDCAN_TT_CYCLES_PER_MATRIX_16 ((uint32_t)0x0000000FU) /*!< 16 Basic Cycles per Matrix */ |
AnnaBridge | 172:65be27845400 | 1421 | #define FDCAN_TT_CYCLES_PER_MATRIX_32 ((uint32_t)0x0000001FU) /*!< 32 Basic Cycles per Matrix */ |
AnnaBridge | 172:65be27845400 | 1422 | #define FDCAN_TT_CYCLES_PER_MATRIX_64 ((uint32_t)0x0000003FU) /*!< 64 Basic Cycles per Matrix */ |
AnnaBridge | 172:65be27845400 | 1423 | /** |
AnnaBridge | 172:65be27845400 | 1424 | * @} |
AnnaBridge | 172:65be27845400 | 1425 | */ |
AnnaBridge | 172:65be27845400 | 1426 | |
AnnaBridge | 172:65be27845400 | 1427 | /** @defgroup FDCAN_TT_cycle_start_sync FDCAN TT Cycle Start Sync |
AnnaBridge | 172:65be27845400 | 1428 | * @{ |
AnnaBridge | 172:65be27845400 | 1429 | */ |
AnnaBridge | 172:65be27845400 | 1430 | #define FDCAN_TT_NO_SYNC_PULSE ((uint32_t)0x00000000U) /*!< No sync pulse */ |
AnnaBridge | 172:65be27845400 | 1431 | #define FDCAN_TT_SYNC_BASIC_CYCLE_START ((uint32_t)0x00000040U) /*!< Sync pulse at start of basic cycle */ |
AnnaBridge | 172:65be27845400 | 1432 | #define FDCAN_TT_SYNC_MATRIX_START ((uint32_t)0x00000080U) /*!< Sync pulse at start of matrix */ |
AnnaBridge | 172:65be27845400 | 1433 | /** |
AnnaBridge | 172:65be27845400 | 1434 | * @} |
AnnaBridge | 172:65be27845400 | 1435 | */ |
AnnaBridge | 172:65be27845400 | 1436 | |
AnnaBridge | 172:65be27845400 | 1437 | /** @defgroup FDCAN_TT_stop_watch_trig_selection FDCAN TT Stop Watch Trigger Selection |
AnnaBridge | 172:65be27845400 | 1438 | * @{ |
AnnaBridge | 172:65be27845400 | 1439 | */ |
AnnaBridge | 172:65be27845400 | 1440 | #define FDCAN_TT_STOP_WATCH_TRIGGER_0 ((uint32_t)0x00000000U) /*!< TIM2 selected as stop watch trigger */ |
AnnaBridge | 172:65be27845400 | 1441 | #define FDCAN_TT_STOP_WATCH_TRIGGER_1 ((uint32_t)0x00000001U) /*!< TIM3 selected as stop watch trigger */ |
AnnaBridge | 172:65be27845400 | 1442 | #define FDCAN_TT_STOP_WATCH_TRIGGER_2 ((uint32_t)0x00000002U) /*!< ETH selected as stop watch trigger */ |
AnnaBridge | 172:65be27845400 | 1443 | #define FDCAN_TT_STOP_WATCH_TRIGGER_3 ((uint32_t)0x00000003U) /*!< HRTIM selected as stop watch trigger */ |
AnnaBridge | 172:65be27845400 | 1444 | /** |
AnnaBridge | 172:65be27845400 | 1445 | * @} |
AnnaBridge | 172:65be27845400 | 1446 | */ |
AnnaBridge | 172:65be27845400 | 1447 | |
AnnaBridge | 172:65be27845400 | 1448 | /** @defgroup FDCAN_TT_event_trig_selection FDCAN TT Event Trigger Selection |
AnnaBridge | 172:65be27845400 | 1449 | * @{ |
AnnaBridge | 172:65be27845400 | 1450 | */ |
AnnaBridge | 172:65be27845400 | 1451 | #define FDCAN_TT_EVENT_TRIGGER_0 ((uint32_t)0x00000000U) /*!< TIM2 selected as event trigger */ |
AnnaBridge | 172:65be27845400 | 1452 | #define FDCAN_TT_EVENT_TRIGGER_1 ((uint32_t)0x00000010U) /*!< TIM3 selected as event trigger */ |
AnnaBridge | 172:65be27845400 | 1453 | #define FDCAN_TT_EVENT_TRIGGER_2 ((uint32_t)0x00000020U) /*!< ETH selected as event trigger */ |
AnnaBridge | 172:65be27845400 | 1454 | #define FDCAN_TT_EVENT_TRIGGER_3 ((uint32_t)0x00000030U) /*!< HRTIM selected as event trigger */ |
AnnaBridge | 172:65be27845400 | 1455 | /** |
AnnaBridge | 172:65be27845400 | 1456 | * @} |
AnnaBridge | 172:65be27845400 | 1457 | */ |
AnnaBridge | 172:65be27845400 | 1458 | |
AnnaBridge | 172:65be27845400 | 1459 | /** @defgroup FDCAN_TT_stop_watch_source FDCAN TT Stop Watch Source |
AnnaBridge | 172:65be27845400 | 1460 | * @{ |
AnnaBridge | 172:65be27845400 | 1461 | */ |
AnnaBridge | 172:65be27845400 | 1462 | #define FDCAN_TT_STOP_WATCH_DISABLED ((uint32_t)0x00000000U) /*!< Stop Watch disabled */ |
AnnaBridge | 172:65be27845400 | 1463 | #define FDCAN_TT_STOP_WATCH_CYCLE_TIME ((uint32_t)0x00000008U) /*!< Actual value of cycle time is copied to Capture Time register (TTCPT.SWV) */ |
AnnaBridge | 172:65be27845400 | 1464 | #define FDCAN_TT_STOP_WATCH_LOCAL_TIME ((uint32_t)0x00000010U) /*!< Actual value of local time is copied to Capture Time register (TTCPT.SWV) */ |
AnnaBridge | 172:65be27845400 | 1465 | #define FDCAN_TT_STOP_WATCH_GLOBAL_TIME ((uint32_t)0x00000018U) /*!< Actual value of global time is copied to Capture Time register (TTCPT.SWV) */ |
AnnaBridge | 172:65be27845400 | 1466 | /** |
AnnaBridge | 172:65be27845400 | 1467 | * @} |
AnnaBridge | 172:65be27845400 | 1468 | */ |
AnnaBridge | 172:65be27845400 | 1469 | |
AnnaBridge | 172:65be27845400 | 1470 | /** @defgroup FDCAN_TT_stop_watch_polarity FDCAN TT Stop Watch Polarity |
AnnaBridge | 172:65be27845400 | 1471 | * @{ |
AnnaBridge | 172:65be27845400 | 1472 | */ |
AnnaBridge | 172:65be27845400 | 1473 | #define FDCAN_TT_STOP_WATCH_RISING ((uint32_t)0x00000000U) /*!< Selected stop watch source is captured at rising edge of fdcan1_swt */ |
AnnaBridge | 172:65be27845400 | 1474 | #define FDCAN_TT_STOP_WATCH_FALLING ((uint32_t)0x00000004U) /*!< Selected stop watch source is captured at falling edge of fdcan1_swt */ |
AnnaBridge | 172:65be27845400 | 1475 | /** |
AnnaBridge | 172:65be27845400 | 1476 | * @} |
AnnaBridge | 172:65be27845400 | 1477 | */ |
AnnaBridge | 172:65be27845400 | 1478 | |
AnnaBridge | 172:65be27845400 | 1479 | /** @defgroup FDCAN_TT_time_mark_source FDCAN TT Time Mark Source |
AnnaBridge | 172:65be27845400 | 1480 | * @{ |
AnnaBridge | 172:65be27845400 | 1481 | */ |
AnnaBridge | 172:65be27845400 | 1482 | #define FDCAN_TT_REG_TIMEMARK_DIABLED ((uint32_t)0x00000000U) /*!< No Register Time Mark Interrupt generated */ |
AnnaBridge | 172:65be27845400 | 1483 | #define FDCAN_TT_REG_TIMEMARK_CYC_TIME ((uint32_t)0x00000040U) /*!< Register Time Mark Interrupt if Time Mark = cycle time */ |
AnnaBridge | 172:65be27845400 | 1484 | #define FDCAN_TT_REG_TIMEMARK_LOC_TIME ((uint32_t)0x00000080U) /*!< Register Time Mark Interrupt if Time Mark = local time */ |
AnnaBridge | 172:65be27845400 | 1485 | #define FDCAN_TT_REG_TIMEMARK_GLO_TIME ((uint32_t)0x000000C0U) /*!< Register Time Mark Interrupt if Time Mark = global time */ |
AnnaBridge | 172:65be27845400 | 1486 | /** |
AnnaBridge | 172:65be27845400 | 1487 | * @} |
AnnaBridge | 172:65be27845400 | 1488 | */ |
AnnaBridge | 172:65be27845400 | 1489 | |
AnnaBridge | 172:65be27845400 | 1490 | /** @defgroup FDCAN_TT_error_level FDCAN TT Error Level |
AnnaBridge | 172:65be27845400 | 1491 | * @{ |
AnnaBridge | 172:65be27845400 | 1492 | */ |
AnnaBridge | 172:65be27845400 | 1493 | #define FDCAN_TT_NO_ERROR ((uint32_t)0x00000000U) /*!< Severity 0 - No Error */ |
AnnaBridge | 172:65be27845400 | 1494 | #define FDCAN_TT_WARNING ((uint32_t)0x00000001U) /*!< Severity 1 - Warning */ |
AnnaBridge | 172:65be27845400 | 1495 | #define FDCAN_TT_ERROR ((uint32_t)0x00000002U) /*!< Severity 2 - Error */ |
AnnaBridge | 172:65be27845400 | 1496 | #define FDCAN_TT_SEVERE_ERROR ((uint32_t)0x00000003U) /*!< Severity 3 - Severe Error */ |
AnnaBridge | 172:65be27845400 | 1497 | /** |
AnnaBridge | 172:65be27845400 | 1498 | * @} |
AnnaBridge | 172:65be27845400 | 1499 | */ |
AnnaBridge | 172:65be27845400 | 1500 | |
AnnaBridge | 172:65be27845400 | 1501 | /** @defgroup FDCAN_TT_master_state FDCAN TT Master State |
AnnaBridge | 172:65be27845400 | 1502 | * @{ |
AnnaBridge | 172:65be27845400 | 1503 | */ |
AnnaBridge | 172:65be27845400 | 1504 | #define FDCAN_TT_MASTER_OFF ((uint32_t)0x00000000U) /*!< Master_Off, no master properties relevant */ |
AnnaBridge | 172:65be27845400 | 1505 | #define FDCAN_TT_TIME_SLAVE ((uint32_t)0x00000004U) /*!< Operating as Time Slave */ |
AnnaBridge | 172:65be27845400 | 1506 | #define FDCAN_TT_BACKUP_TIME_MASTER ((uint32_t)0x00000008U) /*!< Operating as Backup Time Master */ |
AnnaBridge | 172:65be27845400 | 1507 | #define FDCAN_TT_CURRENT_TIME_MASTER ((uint32_t)0x0000000CU) /*!< Operating as current Time Master */ |
AnnaBridge | 172:65be27845400 | 1508 | /** |
AnnaBridge | 172:65be27845400 | 1509 | * @} |
AnnaBridge | 172:65be27845400 | 1510 | */ |
AnnaBridge | 172:65be27845400 | 1511 | |
AnnaBridge | 172:65be27845400 | 1512 | /** @defgroup FDCAN_TT_sync_state FDCAN TT Synchronization State |
AnnaBridge | 172:65be27845400 | 1513 | * @{ |
AnnaBridge | 172:65be27845400 | 1514 | */ |
AnnaBridge | 172:65be27845400 | 1515 | #define FDCAN_TT_OUT_OF_SYNC ((uint32_t)0x00000000U) /*!< Out of Synchronization */ |
AnnaBridge | 172:65be27845400 | 1516 | #define FDCAN_TT_SYNCHRONIZING ((uint32_t)0x00000010U) /*!< Synchronizing to communication */ |
AnnaBridge | 172:65be27845400 | 1517 | #define FDCAN_TT_IN_GAP ((uint32_t)0x00000020U) /*!< Schedule suspended by Gap */ |
AnnaBridge | 172:65be27845400 | 1518 | #define FDCAN_TT_IN_SCHEDULE ((uint32_t)0x00000030U) /*!< Synchronized to schedule */ |
AnnaBridge | 172:65be27845400 | 1519 | /** |
AnnaBridge | 172:65be27845400 | 1520 | * @} |
AnnaBridge | 172:65be27845400 | 1521 | */ |
AnnaBridge | 172:65be27845400 | 1522 | |
AnnaBridge | 172:65be27845400 | 1523 | /** @defgroup Interrupt_Masks Interrupt masks |
AnnaBridge | 172:65be27845400 | 1524 | * @{ |
AnnaBridge | 172:65be27845400 | 1525 | */ |
AnnaBridge | 172:65be27845400 | 1526 | #define FDCAN_IR_MASK ((uint32_t)0x3FCFFFFFU) /*!< FDCAN interrupts mask */ |
AnnaBridge | 172:65be27845400 | 1527 | #define CCU_IR_MASK ((uint32_t)0xC0000000U) /*!< CCU interrupts mask */ |
AnnaBridge | 172:65be27845400 | 1528 | /** |
AnnaBridge | 172:65be27845400 | 1529 | * @} |
AnnaBridge | 172:65be27845400 | 1530 | */ |
AnnaBridge | 172:65be27845400 | 1531 | |
AnnaBridge | 172:65be27845400 | 1532 | /** @defgroup FDCAN_flags FDCAN Flags |
AnnaBridge | 172:65be27845400 | 1533 | * @{ |
AnnaBridge | 172:65be27845400 | 1534 | */ |
AnnaBridge | 172:65be27845400 | 1535 | #define FDCAN_FLAG_TX_COMPLETE FDCAN_IR_TC /*!< Transmission Completed */ |
AnnaBridge | 172:65be27845400 | 1536 | #define FDCAN_FLAG_TX_ABORT_COMPLETE FDCAN_IR_TCF /*!< Transmission Cancellation Finished */ |
AnnaBridge | 172:65be27845400 | 1537 | #define FDCAN_FLAG_TX_FIFO_EMPTY FDCAN_IR_TFE /*!< Tx FIFO Empty */ |
AnnaBridge | 172:65be27845400 | 1538 | #define FDCAN_FLAG_RX_HIGH_PRIORITY_MSG FDCAN_IR_HPM /*!< High priority message received */ |
AnnaBridge | 172:65be27845400 | 1539 | #define FDCAN_FLAG_RX_BUFFER_NEW_MESSAGE FDCAN_IR_DRX /*!< At least one received message stored into a Rx Buffer */ |
AnnaBridge | 172:65be27845400 | 1540 | #define FDCAN_FLAG_TX_EVT_FIFO_ELT_LOST FDCAN_IR_TEFL /*!< Tx Event FIFO element lost */ |
AnnaBridge | 172:65be27845400 | 1541 | #define FDCAN_FLAG_TX_EVT_FIFO_FULL FDCAN_IR_TEFF /*!< Tx Event FIFO full */ |
AnnaBridge | 172:65be27845400 | 1542 | #define FDCAN_FLAG_TX_EVT_FIFO_WATERMARK FDCAN_IR_TEFW /*!< Tx Event FIFO fill level reached watermark */ |
AnnaBridge | 172:65be27845400 | 1543 | #define FDCAN_FLAG_TX_EVT_FIFO_NEW_DATA FDCAN_IR_TEFN /*!< Tx Handler wrote Tx Event FIFO element */ |
AnnaBridge | 172:65be27845400 | 1544 | #define FDCAN_FLAG_RX_FIFO0_MESSAGE_LOST FDCAN_IR_RF0L /*!< Rx FIFO 0 message lost */ |
AnnaBridge | 172:65be27845400 | 1545 | #define FDCAN_FLAG_RX_FIFO0_FULL FDCAN_IR_RF0F /*!< Rx FIFO 0 full */ |
AnnaBridge | 172:65be27845400 | 1546 | #define FDCAN_FLAG_RX_FIFO0_WATERMARK FDCAN_IR_RF0W /*!< Rx FIFO 0 fill level reached watermark */ |
AnnaBridge | 172:65be27845400 | 1547 | #define FDCAN_FLAG_RX_FIFO0_NEW_MESSAGE FDCAN_IR_RF0N /*!< New message written to Rx FIFO 0 */ |
AnnaBridge | 172:65be27845400 | 1548 | #define FDCAN_FLAG_RX_FIFO1_MESSAGE_LOST FDCAN_IR_RF1L /*!< Rx FIFO 1 message lost */ |
AnnaBridge | 172:65be27845400 | 1549 | #define FDCAN_FLAG_RX_FIFO1_FULL FDCAN_IR_RF1F /*!< Rx FIFO 1 full */ |
AnnaBridge | 172:65be27845400 | 1550 | #define FDCAN_FLAG_RX_FIFO1_WATERMARK FDCAN_IR_RF1W /*!< Rx FIFO 1 fill level reached watermark */ |
AnnaBridge | 172:65be27845400 | 1551 | #define FDCAN_FLAG_RX_FIFO1_NEW_MESSAGE FDCAN_IR_RF1N /*!< New message written to Rx FIFO 1 */ |
AnnaBridge | 172:65be27845400 | 1552 | #define FDCAN_FLAG_RAM_ACCESS_FAILURE FDCAN_IR_MRAF /*!< Message RAM access failure occurred */ |
AnnaBridge | 172:65be27845400 | 1553 | #define FDCAN_FLAG_ERROR_LOGGING_OVERFLOW FDCAN_IR_ELO /*!< Overflow of FDCAN Error Logging Counter occurred */ |
AnnaBridge | 172:65be27845400 | 1554 | #define FDCAN_FLAG_ERROR_PASSIVE FDCAN_IR_EP /*!< Error_Passive status changed */ |
AnnaBridge | 172:65be27845400 | 1555 | #define FDCAN_FLAG_ERROR_WARNING FDCAN_IR_EW /*!< Error_Warning status changed */ |
AnnaBridge | 172:65be27845400 | 1556 | #define FDCAN_FLAG_BUS_OFF FDCAN_IR_BO /*!< Bus_Off status changed */ |
AnnaBridge | 172:65be27845400 | 1557 | #define FDCAN_FLAG_RAM_WATCHDOG FDCAN_IR_WDI /*!< Message RAM Watchdog event due to missing READY */ |
AnnaBridge | 172:65be27845400 | 1558 | #define FDCAN_FLAG_ARB_PROTOCOL_ERROR FDCAN_IR_PEA /*!< Protocol error in arbitration phase detected */ |
AnnaBridge | 172:65be27845400 | 1559 | #define FDCAN_FLAG_DATA_PROTOCOL_ERROR FDCAN_IR_PED /*!< Protocol error in data phase detected */ |
AnnaBridge | 172:65be27845400 | 1560 | #define FDCAN_FLAG_RESERVED_ADDRESS_ACCESS FDCAN_IR_ARA /*!< Access to reserved address occurred */ |
AnnaBridge | 172:65be27845400 | 1561 | #define FDCAN_FLAG_TIMESTAMP_WRAPAROUND FDCAN_IR_TSW /*!< Timestamp counter wrapped around */ |
AnnaBridge | 172:65be27845400 | 1562 | #define FDCAN_FLAG_TIMEOUT_OCCURRED FDCAN_IR_TOO /*!< Timeout reached */ |
AnnaBridge | 172:65be27845400 | 1563 | #define FDCAN_FLAG_CALIB_STATE_CHANGED (FDCANCCU_IR_CSC << 30) /*!< Clock calibration state changed */ |
AnnaBridge | 172:65be27845400 | 1564 | #define FDCAN_FLAG_CALIB_WATCHDOG_EVENT (FDCANCCU_IR_CWE << 30) /*!< Clock calibration watchdog event occurred */ |
AnnaBridge | 172:65be27845400 | 1565 | /** |
AnnaBridge | 172:65be27845400 | 1566 | * @} |
AnnaBridge | 172:65be27845400 | 1567 | */ |
AnnaBridge | 172:65be27845400 | 1568 | |
AnnaBridge | 172:65be27845400 | 1569 | /** @defgroup FDCAN_Interrupts FDCAN Interrupts |
AnnaBridge | 172:65be27845400 | 1570 | * @{ |
AnnaBridge | 172:65be27845400 | 1571 | */ |
AnnaBridge | 172:65be27845400 | 1572 | |
AnnaBridge | 172:65be27845400 | 1573 | /** @defgroup FDCAN_Tx_Interrupts FDCAN Tx Interrupts |
AnnaBridge | 172:65be27845400 | 1574 | * @{ |
AnnaBridge | 172:65be27845400 | 1575 | */ |
AnnaBridge | 172:65be27845400 | 1576 | #define FDCAN_IT_TX_COMPLETE FDCAN_IE_TCE /*!< Transmission Completed */ |
AnnaBridge | 172:65be27845400 | 1577 | #define FDCAN_IT_TX_ABORT_COMPLETE FDCAN_IE_TCFE /*!< Transmission Cancellation Finished */ |
AnnaBridge | 172:65be27845400 | 1578 | #define FDCAN_IT_TX_FIFO_EMPTY FDCAN_IE_TFEE /*!< Tx FIFO Empty */ |
AnnaBridge | 172:65be27845400 | 1579 | /** |
AnnaBridge | 172:65be27845400 | 1580 | * @} |
AnnaBridge | 172:65be27845400 | 1581 | */ |
AnnaBridge | 172:65be27845400 | 1582 | |
AnnaBridge | 172:65be27845400 | 1583 | /** @defgroup FDCAN_Rx_Interrupts FDCAN Rx Interrupts |
AnnaBridge | 172:65be27845400 | 1584 | * @{ |
AnnaBridge | 172:65be27845400 | 1585 | */ |
AnnaBridge | 172:65be27845400 | 1586 | #define FDCAN_IT_RX_HIGH_PRIORITY_MSG FDCAN_IE_HPME /*!< High priority message received */ |
AnnaBridge | 172:65be27845400 | 1587 | #define FDCAN_IT_RX_BUFFER_NEW_MESSAGE FDCAN_IE_DRXE /*!< At least one received message stored into a Rx Buffer */ |
AnnaBridge | 172:65be27845400 | 1588 | /** |
AnnaBridge | 172:65be27845400 | 1589 | * @} |
AnnaBridge | 172:65be27845400 | 1590 | */ |
AnnaBridge | 172:65be27845400 | 1591 | |
AnnaBridge | 172:65be27845400 | 1592 | /** @defgroup FDCAN_Counter_Interrupts FDCAN Counter Interrupts |
AnnaBridge | 172:65be27845400 | 1593 | * @{ |
AnnaBridge | 172:65be27845400 | 1594 | */ |
AnnaBridge | 172:65be27845400 | 1595 | #define FDCAN_IT_TIMESTAMP_WRAPAROUND FDCAN_IE_TSWE /*!< Timestamp counter wrapped around */ |
AnnaBridge | 172:65be27845400 | 1596 | #define FDCAN_IT_TIMEOUT_OCCURRED FDCAN_IE_TOOE /*!< Timeout reached */ |
AnnaBridge | 172:65be27845400 | 1597 | /** |
AnnaBridge | 172:65be27845400 | 1598 | * @} |
AnnaBridge | 172:65be27845400 | 1599 | */ |
AnnaBridge | 172:65be27845400 | 1600 | |
AnnaBridge | 172:65be27845400 | 1601 | /** @defgroup FDCAN_Clock_Calibration_Interrupts Clock Calibration Interrupts |
AnnaBridge | 172:65be27845400 | 1602 | * @{ |
AnnaBridge | 172:65be27845400 | 1603 | */ |
AnnaBridge | 172:65be27845400 | 1604 | #define FDCAN_IT_CALIB_STATE_CHANGED (FDCANCCU_IE_CSCE << 30) /*!< Clock calibration state changed */ |
AnnaBridge | 172:65be27845400 | 1605 | #define FDCAN_IT_CALIB_WATCHDOG_EVENT (FDCANCCU_IE_CWEE << 30) /*!< Clock calibration watchdog event occurred */ |
AnnaBridge | 172:65be27845400 | 1606 | /** |
AnnaBridge | 172:65be27845400 | 1607 | * @} |
AnnaBridge | 172:65be27845400 | 1608 | */ |
AnnaBridge | 172:65be27845400 | 1609 | |
AnnaBridge | 172:65be27845400 | 1610 | /** @defgroup FDCAN_Tx_Event_Fifo_Interrupts FDCAN Tx Event FIFO Interrupts |
AnnaBridge | 172:65be27845400 | 1611 | * @{ |
AnnaBridge | 172:65be27845400 | 1612 | */ |
AnnaBridge | 172:65be27845400 | 1613 | #define FDCAN_IT_TX_EVT_FIFO_ELT_LOST FDCAN_IE_TEFLE /*!< Tx Event FIFO element lost */ |
AnnaBridge | 172:65be27845400 | 1614 | #define FDCAN_IT_TX_EVT_FIFO_FULL FDCAN_IE_TEFFE /*!< Tx Event FIFO full */ |
AnnaBridge | 172:65be27845400 | 1615 | #define FDCAN_IT_TX_EVT_FIFO_WATERMARK FDCAN_IE_TEFWE /*!< Tx Event FIFO fill level reached watermark */ |
AnnaBridge | 172:65be27845400 | 1616 | #define FDCAN_IT_TX_EVT_FIFO_NEW_DATA FDCAN_IE_TEFNE /*!< Tx Handler wrote Tx Event FIFO element */ |
AnnaBridge | 172:65be27845400 | 1617 | /** |
AnnaBridge | 172:65be27845400 | 1618 | * @} |
AnnaBridge | 172:65be27845400 | 1619 | */ |
AnnaBridge | 172:65be27845400 | 1620 | |
AnnaBridge | 172:65be27845400 | 1621 | /** @defgroup FDCAN_Rx_Fifo0_Interrupts FDCAN Rx FIFO 0 Interrupts |
AnnaBridge | 172:65be27845400 | 1622 | * @{ |
AnnaBridge | 172:65be27845400 | 1623 | */ |
AnnaBridge | 172:65be27845400 | 1624 | #define FDCAN_IT_RX_FIFO0_MESSAGE_LOST FDCAN_IE_RF0LE /*!< Rx FIFO 0 message lost */ |
AnnaBridge | 172:65be27845400 | 1625 | #define FDCAN_IT_RX_FIFO0_FULL FDCAN_IE_RF0FE /*!< Rx FIFO 0 full */ |
AnnaBridge | 172:65be27845400 | 1626 | #define FDCAN_IT_RX_FIFO0_WATERMARK FDCAN_IE_RF0WE /*!< Rx FIFO 0 fill level reached watermark */ |
AnnaBridge | 172:65be27845400 | 1627 | #define FDCAN_IT_RX_FIFO0_NEW_MESSAGE FDCAN_IE_RF0NE /*!< New message written to Rx FIFO 0 */ |
AnnaBridge | 172:65be27845400 | 1628 | /** |
AnnaBridge | 172:65be27845400 | 1629 | * @} |
AnnaBridge | 172:65be27845400 | 1630 | */ |
AnnaBridge | 172:65be27845400 | 1631 | |
AnnaBridge | 172:65be27845400 | 1632 | /** @defgroup FDCAN_Rx_Fifo1_Interrupts FDCAN Rx FIFO 1 Interrupts |
AnnaBridge | 172:65be27845400 | 1633 | * @{ |
AnnaBridge | 172:65be27845400 | 1634 | */ |
AnnaBridge | 172:65be27845400 | 1635 | #define FDCAN_IT_RX_FIFO1_MESSAGE_LOST FDCAN_IE_RF1LE /*!< Rx FIFO 1 message lost */ |
AnnaBridge | 172:65be27845400 | 1636 | #define FDCAN_IT_RX_FIFO1_FULL FDCAN_IE_RF1FE /*!< Rx FIFO 1 full */ |
AnnaBridge | 172:65be27845400 | 1637 | #define FDCAN_IT_RX_FIFO1_WATERMARK FDCAN_IE_RF1WE /*!< Rx FIFO 1 fill level reached watermark */ |
AnnaBridge | 172:65be27845400 | 1638 | #define FDCAN_IT_RX_FIFO1_NEW_MESSAGE FDCAN_IE_RF1NE /*!< New message written to Rx FIFO 1 */ |
AnnaBridge | 172:65be27845400 | 1639 | /** |
AnnaBridge | 172:65be27845400 | 1640 | * @} |
AnnaBridge | 172:65be27845400 | 1641 | */ |
AnnaBridge | 172:65be27845400 | 1642 | |
AnnaBridge | 172:65be27845400 | 1643 | /** @defgroup FDCAN_Error_Interrupts FDCAN Error Interrupts |
AnnaBridge | 172:65be27845400 | 1644 | * @{ |
AnnaBridge | 172:65be27845400 | 1645 | */ |
AnnaBridge | 172:65be27845400 | 1646 | #define FDCAN_IT_RAM_ACCESS_FAILURE FDCAN_IE_MRAFE /*!< Message RAM access failure occurred */ |
AnnaBridge | 172:65be27845400 | 1647 | #define FDCAN_IT_ERROR_LOGGING_OVERFLOW FDCAN_IE_ELOE /*!< Overflow of FDCAN Error Logging Counter occurred */ |
AnnaBridge | 172:65be27845400 | 1648 | #define FDCAN_IT_RAM_WATCHDOG FDCAN_IE_WDIE /*!< Message RAM Watchdog event due to missing READY */ |
AnnaBridge | 172:65be27845400 | 1649 | #define FDCAN_IT_ARB_PROTOCOL_ERROR FDCAN_IE_PEAE /*!< Protocol error in arbitration phase detected */ |
AnnaBridge | 172:65be27845400 | 1650 | #define FDCAN_IT_DATA_PROTOCOL_ERROR FDCAN_IE_PEDE /*!< Protocol error in data phase detected */ |
AnnaBridge | 172:65be27845400 | 1651 | #define FDCAN_IT_RESERVED_ADDRESS_ACCESS FDCAN_IE_ARAE /*!< Access to reserved address occurred */ |
AnnaBridge | 172:65be27845400 | 1652 | /** |
AnnaBridge | 172:65be27845400 | 1653 | * @} |
AnnaBridge | 172:65be27845400 | 1654 | */ |
AnnaBridge | 172:65be27845400 | 1655 | |
AnnaBridge | 172:65be27845400 | 1656 | /** @defgroup FDCAN_Error_Status_Interrupts FDCAN Error Status Interrupts |
AnnaBridge | 172:65be27845400 | 1657 | * @{ |
AnnaBridge | 172:65be27845400 | 1658 | */ |
AnnaBridge | 172:65be27845400 | 1659 | #define FDCAN_IT_ERROR_PASSIVE FDCAN_IE_EPE /*!< Error_Passive status changed */ |
AnnaBridge | 172:65be27845400 | 1660 | #define FDCAN_IT_ERROR_WARNING FDCAN_IE_EWE /*!< Error_Warning status changed */ |
AnnaBridge | 172:65be27845400 | 1661 | #define FDCAN_IT_BUS_OFF FDCAN_IE_BOE /*!< Bus_Off status changed */ |
AnnaBridge | 172:65be27845400 | 1662 | /** |
AnnaBridge | 172:65be27845400 | 1663 | * @} |
AnnaBridge | 172:65be27845400 | 1664 | */ |
AnnaBridge | 172:65be27845400 | 1665 | |
AnnaBridge | 172:65be27845400 | 1666 | /** |
AnnaBridge | 172:65be27845400 | 1667 | * @} |
AnnaBridge | 172:65be27845400 | 1668 | */ |
AnnaBridge | 172:65be27845400 | 1669 | |
AnnaBridge | 172:65be27845400 | 1670 | /** @defgroup FDCAN_TTflags FDCAN TT Flags |
AnnaBridge | 172:65be27845400 | 1671 | * @{ |
AnnaBridge | 172:65be27845400 | 1672 | */ |
AnnaBridge | 172:65be27845400 | 1673 | #define FDCAN_TT_FLAG_BASIC_CYCLE_START FDCAN_TTIR_SBC /*!< Start of Basic Cycle */ |
AnnaBridge | 172:65be27845400 | 1674 | #define FDCAN_TT_FLAG_MATRIX_CYCLE_START FDCAN_TTIR_SMC /*!< Start of Matrix Cycle */ |
AnnaBridge | 172:65be27845400 | 1675 | #define FDCAN_TT_FLAG_SYNC_MODE_CHANGE FDCAN_TTIR_CSM /*!< Change of Synchronization Mode */ |
AnnaBridge | 172:65be27845400 | 1676 | #define FDCAN_TT_FLAG_START_OF_GAP FDCAN_TTIR_SOG /*!< Start of Gap */ |
AnnaBridge | 172:65be27845400 | 1677 | #define FDCAN_TT_FLAG_REG_TIME_MARK FDCAN_TTIR_RTMI /*!< Register Time Mark Interrupt */ |
AnnaBridge | 172:65be27845400 | 1678 | #define FDCAN_TT_FLAG_TRIG_TIME_MARK FDCAN_TTIR_TTMI /*!< Trigger Time Mark Event Internal */ |
AnnaBridge | 172:65be27845400 | 1679 | #define FDCAN_TT_FLAG_STOP_WATCH FDCAN_TTIR_SWE /*!< Stop Watch Event */ |
AnnaBridge | 172:65be27845400 | 1680 | #define FDCAN_TT_FLAG_GLOBAL_TIME_WRAP FDCAN_TTIR_GTW /*!< Global Time Wrap */ |
AnnaBridge | 172:65be27845400 | 1681 | #define FDCAN_TT_FLAG_GLOBAL_TIME_DISC FDCAN_TTIR_GTD /*!< Global Time Discontinuity */ |
AnnaBridge | 172:65be27845400 | 1682 | #define FDCAN_TT_FLAG_GLOBAL_TIME_ERROR FDCAN_TTIR_GTE /*!< Global Time Error */ |
AnnaBridge | 172:65be27845400 | 1683 | #define FDCAN_TT_FLAG_TX_COUNT_UNDERFLOW FDCAN_TTIR_TXU /*!< Tx Count Underflow */ |
AnnaBridge | 172:65be27845400 | 1684 | #define FDCAN_TT_FLAG_TX_COUNT_OVERFLOW FDCAN_TTIR_TXO /*!< Tx Count Overflow */ |
AnnaBridge | 172:65be27845400 | 1685 | #define FDCAN_TT_FLAG_SCHEDULING_ERROR_1 FDCAN_TTIR_SE1 /*!< Scheduling Error 1 */ |
AnnaBridge | 172:65be27845400 | 1686 | #define FDCAN_TT_FLAG_SCHEDULING_ERROR_2 FDCAN_TTIR_SE2 /*!< Scheduling Error 2 */ |
AnnaBridge | 172:65be27845400 | 1687 | #define FDCAN_TT_FLAG_ERROR_LEVEL_CHANGE FDCAN_TTIR_ELC /*!< Error Level Changed */ |
AnnaBridge | 172:65be27845400 | 1688 | #define FDCAN_TT_FLAG_INIT_WATCH_TRIGGER FDCAN_TTIR_IWT /*!< Initialization Watch Trigger */ |
AnnaBridge | 172:65be27845400 | 1689 | #define FDCAN_TT_FLAG_WATCH_TRIGGER FDCAN_TTIR_WT /*!< Watch Trigger */ |
AnnaBridge | 172:65be27845400 | 1690 | #define FDCAN_TT_FLAG_APPLICATION_WATCHDOG FDCAN_TTIR_AW /*!< Application Watchdog */ |
AnnaBridge | 172:65be27845400 | 1691 | #define FDCAN_TT_FLAG_CONFIG_ERROR FDCAN_TTIR_CER /*!< Configuration Error */ |
AnnaBridge | 172:65be27845400 | 1692 | /** |
AnnaBridge | 172:65be27845400 | 1693 | * @} |
AnnaBridge | 172:65be27845400 | 1694 | */ |
AnnaBridge | 172:65be27845400 | 1695 | |
AnnaBridge | 172:65be27845400 | 1696 | /** @defgroup FDCAN_TTInterrupts FDCAN TT Interrupts |
AnnaBridge | 172:65be27845400 | 1697 | * @{ |
AnnaBridge | 172:65be27845400 | 1698 | */ |
AnnaBridge | 172:65be27845400 | 1699 | |
AnnaBridge | 172:65be27845400 | 1700 | /** @defgroup FDCAN_TTScheduleSynchronization_Interrupts FDCAN TT Schedule Synchronization Interrupts |
AnnaBridge | 172:65be27845400 | 1701 | * @{ |
AnnaBridge | 172:65be27845400 | 1702 | */ |
AnnaBridge | 172:65be27845400 | 1703 | #define FDCAN_TT_IT_BASIC_CYCLE_START FDCAN_TTIE_SBCE /*!< Start of Basic Cycle */ |
AnnaBridge | 172:65be27845400 | 1704 | #define FDCAN_TT_IT_MATRIX_CYCLE_START FDCAN_TTIE_SMCE /*!< Start of Matrix Cycle */ |
AnnaBridge | 172:65be27845400 | 1705 | #define FDCAN_TT_IT_SYNC_MODE_CHANGE FDCAN_TTIE_CSME /*!< Change of Synchronization Mode */ |
AnnaBridge | 172:65be27845400 | 1706 | #define FDCAN_TT_IT_START_OF_GAP FDCAN_TTIE_SOGE /*!< Start of Gap */ |
AnnaBridge | 172:65be27845400 | 1707 | /** |
AnnaBridge | 172:65be27845400 | 1708 | * @} |
AnnaBridge | 172:65be27845400 | 1709 | */ |
AnnaBridge | 172:65be27845400 | 1710 | |
AnnaBridge | 172:65be27845400 | 1711 | /** @defgroup FDCAN_TTTimeMark_Interrupts FDCAN TT Time Mark Interrupts |
AnnaBridge | 172:65be27845400 | 1712 | * @{ |
AnnaBridge | 172:65be27845400 | 1713 | */ |
AnnaBridge | 172:65be27845400 | 1714 | #define FDCAN_TT_IT_REG_TIME_MARK FDCAN_TTIE_RTMIE /*!< Register Time Mark Interrupt */ |
AnnaBridge | 172:65be27845400 | 1715 | #define FDCAN_TT_IT_TRIG_TIME_MARK FDCAN_TTIE_TTMIE /*!< Trigger Time Mark Event Internal */ |
AnnaBridge | 172:65be27845400 | 1716 | /** |
AnnaBridge | 172:65be27845400 | 1717 | * @} |
AnnaBridge | 172:65be27845400 | 1718 | */ |
AnnaBridge | 172:65be27845400 | 1719 | |
AnnaBridge | 172:65be27845400 | 1720 | /** @defgroup FDCAN_TTStopWatch_Interrupt FDCAN TT Stop Watch Interrupt |
AnnaBridge | 172:65be27845400 | 1721 | * @{ |
AnnaBridge | 172:65be27845400 | 1722 | */ |
AnnaBridge | 172:65be27845400 | 1723 | #define FDCAN_TT_IT_STOP_WATCH FDCAN_TTIE_SWEE /*!< Stop Watch Event */ |
AnnaBridge | 172:65be27845400 | 1724 | /** |
AnnaBridge | 172:65be27845400 | 1725 | * @} |
AnnaBridge | 172:65be27845400 | 1726 | */ |
AnnaBridge | 172:65be27845400 | 1727 | |
AnnaBridge | 172:65be27845400 | 1728 | /** @defgroup FDCAN_TTGlobalTime_Interrupts FDCAN TT Global Time Interrupts |
AnnaBridge | 172:65be27845400 | 1729 | * @{ |
AnnaBridge | 172:65be27845400 | 1730 | */ |
AnnaBridge | 172:65be27845400 | 1731 | #define FDCAN_TT_IT_GLOBAL_TIME_WRAP FDCAN_TTIE_GTWE /*!< Global Time Wrap */ |
AnnaBridge | 172:65be27845400 | 1732 | #define FDCAN_TT_IT_GLOBAL_TIME_DISC FDCAN_TTIE_GTDE /*!< Global Time Discontinuity */ |
AnnaBridge | 172:65be27845400 | 1733 | /** |
AnnaBridge | 172:65be27845400 | 1734 | * @} |
AnnaBridge | 172:65be27845400 | 1735 | */ |
AnnaBridge | 172:65be27845400 | 1736 | |
AnnaBridge | 172:65be27845400 | 1737 | /** @defgroup FDCAN_TTDisturbingError_Interrupts FDCAN TT Disturbing Error Interrupts |
AnnaBridge | 172:65be27845400 | 1738 | * @{ |
AnnaBridge | 172:65be27845400 | 1739 | */ |
AnnaBridge | 172:65be27845400 | 1740 | #define FDCAN_TT_IT_GLOBAL_TIME_ERROR FDCAN_TTIE_GTEE /*!< Global Time Error */ |
AnnaBridge | 172:65be27845400 | 1741 | #define FDCAN_TT_IT_TX_COUNT_UNDERFLOW FDCAN_TTIE_TXUE /*!< Tx Count Underflow */ |
AnnaBridge | 172:65be27845400 | 1742 | #define FDCAN_TT_IT_TX_COUNT_OVERFLOW FDCAN_TTIE_TXOE /*!< Tx Count Overflow */ |
AnnaBridge | 172:65be27845400 | 1743 | #define FDCAN_TT_IT_SCHEDULING_ERROR_1 FDCAN_TTIE_SE1E /*!< Scheduling Error 1 */ |
AnnaBridge | 172:65be27845400 | 1744 | #define FDCAN_TT_IT_SCHEDULING_ERROR_2 FDCAN_TTIE_SE2E /*!< Scheduling Error 2 */ |
AnnaBridge | 172:65be27845400 | 1745 | #define FDCAN_TT_IT_ERROR_LEVEL_CHANGE FDCAN_TTIE_ELCE /*!< Error Level Changed */ |
AnnaBridge | 172:65be27845400 | 1746 | /** |
AnnaBridge | 172:65be27845400 | 1747 | * @} |
AnnaBridge | 172:65be27845400 | 1748 | */ |
AnnaBridge | 172:65be27845400 | 1749 | |
AnnaBridge | 172:65be27845400 | 1750 | /** @defgroup FDCAN_TTFatalError_Interrupts FDCAN TT Fatal Error Interrupts |
AnnaBridge | 172:65be27845400 | 1751 | * @{ |
AnnaBridge | 172:65be27845400 | 1752 | */ |
AnnaBridge | 172:65be27845400 | 1753 | #define FDCAN_TT_IT_INIT_WATCH_TRIGGER FDCAN_TTIE_IWTE /*!< Initialization Watch Trigger */ |
AnnaBridge | 172:65be27845400 | 1754 | #define FDCAN_TT_IT_WATCH_TRIGGER FDCAN_TTIE_WTE /*!< Watch Trigger */ |
AnnaBridge | 172:65be27845400 | 1755 | #define FDCAN_TT_IT_APPLICATION_WATCHDOG FDCAN_TTIE_AWE /*!< Application Watchdog */ |
AnnaBridge | 172:65be27845400 | 1756 | #define FDCAN_TT_IT_CONFIG_ERROR FDCAN_TTIE_CERE /*!< Configuration Error */ |
AnnaBridge | 172:65be27845400 | 1757 | /** |
AnnaBridge | 172:65be27845400 | 1758 | * @} |
AnnaBridge | 172:65be27845400 | 1759 | */ |
AnnaBridge | 172:65be27845400 | 1760 | |
AnnaBridge | 172:65be27845400 | 1761 | /** |
AnnaBridge | 172:65be27845400 | 1762 | * @} |
AnnaBridge | 172:65be27845400 | 1763 | */ |
AnnaBridge | 172:65be27845400 | 1764 | |
AnnaBridge | 172:65be27845400 | 1765 | /** |
AnnaBridge | 172:65be27845400 | 1766 | * @} |
AnnaBridge | 172:65be27845400 | 1767 | */ |
AnnaBridge | 172:65be27845400 | 1768 | |
AnnaBridge | 172:65be27845400 | 1769 | /* Exported macro ------------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 1770 | /** @defgroup FDCAN_Exported_Macros FDCAN Exported Macros |
AnnaBridge | 172:65be27845400 | 1771 | * @{ |
AnnaBridge | 172:65be27845400 | 1772 | */ |
AnnaBridge | 172:65be27845400 | 1773 | |
AnnaBridge | 172:65be27845400 | 1774 | /** @brief Reset FDCAN handle state. |
AnnaBridge | 172:65be27845400 | 1775 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1776 | * @retval None |
AnnaBridge | 172:65be27845400 | 1777 | */ |
AnnaBridge | 172:65be27845400 | 1778 | #if USE_HAL_FDCAN_REGISTER_CALLBACKS == 1 |
AnnaBridge | 172:65be27845400 | 1779 | #define __HAL_FDCAN_RESET_HANDLE_STATE(__HANDLE__) do{ \ |
AnnaBridge | 172:65be27845400 | 1780 | (__HANDLE__)->State = HAL_FDCAN_STATE_RESET; \ |
AnnaBridge | 172:65be27845400 | 1781 | (__HANDLE__)->MspInitCallback = NULL; \ |
AnnaBridge | 172:65be27845400 | 1782 | (__HANDLE__)->MspDeInitCallback = NULL; \ |
AnnaBridge | 172:65be27845400 | 1783 | } while(0) |
AnnaBridge | 172:65be27845400 | 1784 | #else |
AnnaBridge | 172:65be27845400 | 1785 | #define __HAL_FDCAN_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_FDCAN_STATE_RESET) |
AnnaBridge | 172:65be27845400 | 1786 | #endif /* USE_HAL_FDCAN_REGISTER_CALLBACKS */ |
AnnaBridge | 172:65be27845400 | 1787 | |
AnnaBridge | 172:65be27845400 | 1788 | /** |
AnnaBridge | 172:65be27845400 | 1789 | * @brief Enable the specified FDCAN interrupts. |
AnnaBridge | 172:65be27845400 | 1790 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1791 | * @param __INTERRUPT__ FDCAN interrupt. |
AnnaBridge | 172:65be27845400 | 1792 | * This parameter can be any combination of @arg FDCAN_Interrupts |
AnnaBridge | 172:65be27845400 | 1793 | * @retval None |
AnnaBridge | 172:65be27845400 | 1794 | */ |
AnnaBridge | 172:65be27845400 | 1795 | #define __HAL_FDCAN_ENABLE_IT(__HANDLE__, __INTERRUPT__) \ |
AnnaBridge | 172:65be27845400 | 1796 | do{ \ |
AnnaBridge | 172:65be27845400 | 1797 | (__HANDLE__)->Instance->IE |= ((__INTERRUPT__) & FDCAN_IR_MASK); \ |
AnnaBridge | 172:65be27845400 | 1798 | FDCAN_CCU->IE |= (((__INTERRUPT__) & CCU_IR_MASK) >> 30); \ |
AnnaBridge | 172:65be27845400 | 1799 | }while(0) |
AnnaBridge | 172:65be27845400 | 1800 | |
AnnaBridge | 172:65be27845400 | 1801 | |
AnnaBridge | 172:65be27845400 | 1802 | /** |
AnnaBridge | 172:65be27845400 | 1803 | * @brief Disable the specified FDCAN interrupts. |
AnnaBridge | 172:65be27845400 | 1804 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1805 | * @param __INTERRUPT__ FDCAN interrupt. |
AnnaBridge | 172:65be27845400 | 1806 | * This parameter can be any combination of @arg FDCAN_Interrupts |
AnnaBridge | 172:65be27845400 | 1807 | * @retval None |
AnnaBridge | 172:65be27845400 | 1808 | */ |
AnnaBridge | 172:65be27845400 | 1809 | #define __HAL_FDCAN_DISABLE_IT(__HANDLE__, __INTERRUPT__) \ |
AnnaBridge | 172:65be27845400 | 1810 | do{ \ |
AnnaBridge | 172:65be27845400 | 1811 | ((__HANDLE__)->Instance->IE) &= ~((__INTERRUPT__) & FDCAN_IR_MASK); \ |
AnnaBridge | 172:65be27845400 | 1812 | FDCAN_CCU->IE &= ~(((__INTERRUPT__) & CCU_IR_MASK) >> 30); \ |
AnnaBridge | 172:65be27845400 | 1813 | }while(0) |
AnnaBridge | 172:65be27845400 | 1814 | |
AnnaBridge | 172:65be27845400 | 1815 | /** |
AnnaBridge | 172:65be27845400 | 1816 | * @brief Check whether the specified FDCAN interrupt is set or not. |
AnnaBridge | 172:65be27845400 | 1817 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1818 | * @param __INTERRUPT__ FDCAN interrupt. |
AnnaBridge | 172:65be27845400 | 1819 | * This parameter can be one of @arg FDCAN_Interrupts |
AnnaBridge | 172:65be27845400 | 1820 | * @retval ITStatus |
AnnaBridge | 172:65be27845400 | 1821 | */ |
AnnaBridge | 172:65be27845400 | 1822 | #define __HAL_FDCAN_GET_IT(__HANDLE__, __INTERRUPT__) (((__INTERRUPT__) < FDCAN_IT_CALIB_WATCHDOG_EVENT) ? ((__HANDLE__)->Instance->IR & (__INTERRUPT__)) : ((FDCAN_CCU->IR << 30) & (__INTERRUPT__))) |
AnnaBridge | 172:65be27845400 | 1823 | |
AnnaBridge | 172:65be27845400 | 1824 | /** |
AnnaBridge | 172:65be27845400 | 1825 | * @brief Clear the specified FDCAN interrupts. |
AnnaBridge | 172:65be27845400 | 1826 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1827 | * @param __INTERRUPT__ specifies the interrupts to clear. |
AnnaBridge | 172:65be27845400 | 1828 | * This parameter can be any combination of @arg FDCAN_Interrupts |
AnnaBridge | 172:65be27845400 | 1829 | * @retval None |
AnnaBridge | 172:65be27845400 | 1830 | */ |
AnnaBridge | 172:65be27845400 | 1831 | #define __HAL_FDCAN_CLEAR_IT(__HANDLE__, __INTERRUPT__) \ |
AnnaBridge | 172:65be27845400 | 1832 | do{ \ |
AnnaBridge | 172:65be27845400 | 1833 | ((__HANDLE__)->Instance->IR) = ((__INTERRUPT__) & FDCAN_IR_MASK); \ |
AnnaBridge | 172:65be27845400 | 1834 | FDCAN_CCU->IR = (((__INTERRUPT__) & CCU_IR_MASK) >> 30); \ |
AnnaBridge | 172:65be27845400 | 1835 | }while(0) |
AnnaBridge | 172:65be27845400 | 1836 | |
AnnaBridge | 172:65be27845400 | 1837 | /** |
AnnaBridge | 172:65be27845400 | 1838 | * @brief Check whether the specified FDCAN flag is set or not. |
AnnaBridge | 172:65be27845400 | 1839 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1840 | * @param __FLAG__ FDCAN flag. |
AnnaBridge | 172:65be27845400 | 1841 | * This parameter can be one of @arg FDCAN_flags |
AnnaBridge | 172:65be27845400 | 1842 | * @retval FlagStatus |
AnnaBridge | 172:65be27845400 | 1843 | */ |
AnnaBridge | 172:65be27845400 | 1844 | #define __HAL_FDCAN_GET_FLAG(__HANDLE__, __FLAG__) (((__FLAG__) < FDCAN_FLAG_CALIB_WATCHDOG_EVENT) ? ((__HANDLE__)->Instance->IR & (__FLAG__)) : ((FDCAN_CCU->IR << 30) & (__FLAG__))) |
AnnaBridge | 172:65be27845400 | 1845 | |
AnnaBridge | 172:65be27845400 | 1846 | /** |
AnnaBridge | 172:65be27845400 | 1847 | * @brief Clear the specified FDCAN flags. |
AnnaBridge | 172:65be27845400 | 1848 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1849 | * @param __FLAG__ specifies the flags to clear. |
AnnaBridge | 172:65be27845400 | 1850 | * This parameter can be any combination of @arg FDCAN_flags |
AnnaBridge | 172:65be27845400 | 1851 | * @retval None |
AnnaBridge | 172:65be27845400 | 1852 | */ |
AnnaBridge | 172:65be27845400 | 1853 | #define __HAL_FDCAN_CLEAR_FLAG(__HANDLE__, __FLAG__) \ |
AnnaBridge | 172:65be27845400 | 1854 | do{ \ |
AnnaBridge | 172:65be27845400 | 1855 | ((__HANDLE__)->Instance->IR) = ((__FLAG__) & FDCAN_IR_MASK); \ |
AnnaBridge | 172:65be27845400 | 1856 | FDCAN_CCU->IR = (((__FLAG__) & CCU_IR_MASK) >> 30); \ |
AnnaBridge | 172:65be27845400 | 1857 | }while(0) |
AnnaBridge | 172:65be27845400 | 1858 | |
AnnaBridge | 172:65be27845400 | 1859 | /** @brief Check if the specified FDCAN interrupt source is enabled or disabled. |
AnnaBridge | 172:65be27845400 | 1860 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1861 | * @param __INTERRUPT__ specifies the FDCAN interrupt source to check. |
AnnaBridge | 172:65be27845400 | 1862 | * This parameter can be a value of @arg FDCAN_Interrupts |
AnnaBridge | 172:65be27845400 | 1863 | * @retval ITStatus |
AnnaBridge | 172:65be27845400 | 1864 | */ |
AnnaBridge | 172:65be27845400 | 1865 | #define __HAL_FDCAN_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) (((__INTERRUPT__) < FDCAN_IT_CALIB_WATCHDOG_EVENT) ? ((__HANDLE__)->Instance->IE & (__INTERRUPT__)) : ((FDCAN_CCU->IE << 30) & (__INTERRUPT__))) |
AnnaBridge | 172:65be27845400 | 1866 | |
AnnaBridge | 172:65be27845400 | 1867 | /** |
AnnaBridge | 172:65be27845400 | 1868 | * @brief Enable the specified FDCAN TT interrupts. |
AnnaBridge | 172:65be27845400 | 1869 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1870 | * @param __INTERRUPT__ FDCAN TT interrupt. |
AnnaBridge | 172:65be27845400 | 1871 | * This parameter can be any combination of @arg FDCAN_TTInterrupts |
AnnaBridge | 172:65be27845400 | 1872 | * @retval None |
AnnaBridge | 172:65be27845400 | 1873 | */ |
AnnaBridge | 172:65be27845400 | 1874 | #define __HAL_FDCAN_TT_ENABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->ttcan->TTIE) |= (__INTERRUPT__)) |
AnnaBridge | 172:65be27845400 | 1875 | |
AnnaBridge | 172:65be27845400 | 1876 | /** |
AnnaBridge | 172:65be27845400 | 1877 | * @brief Disable the specified FDCAN TT interrupts. |
AnnaBridge | 172:65be27845400 | 1878 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1879 | * @param __INTERRUPT__ FDCAN TT interrupt. |
AnnaBridge | 172:65be27845400 | 1880 | * This parameter can be any combination of @arg FDCAN_TTInterrupts |
AnnaBridge | 172:65be27845400 | 1881 | * @retval None |
AnnaBridge | 172:65be27845400 | 1882 | */ |
AnnaBridge | 172:65be27845400 | 1883 | #define __HAL_FDCAN_TT_DISABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->ttcan->TTIE) &= ~(__INTERRUPT__)) |
AnnaBridge | 172:65be27845400 | 1884 | |
AnnaBridge | 172:65be27845400 | 1885 | /** |
AnnaBridge | 172:65be27845400 | 1886 | * @brief Check whether the specified FDCAN TT interrupt is set or not. |
AnnaBridge | 172:65be27845400 | 1887 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1888 | * @param __INTERRUPT__ FDCAN TT interrupt. |
AnnaBridge | 172:65be27845400 | 1889 | * This parameter can be one of @arg FDCAN_TTInterrupts |
AnnaBridge | 172:65be27845400 | 1890 | * @retval ITStatus |
AnnaBridge | 172:65be27845400 | 1891 | */ |
AnnaBridge | 172:65be27845400 | 1892 | #define __HAL_FDCAN_TT_GET_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->ttcan->TTIR) & (__INTERRUPT__)) |
AnnaBridge | 172:65be27845400 | 1893 | |
AnnaBridge | 172:65be27845400 | 1894 | /** |
AnnaBridge | 172:65be27845400 | 1895 | * @brief Clear the specified FDCAN TT interrupts. |
AnnaBridge | 172:65be27845400 | 1896 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1897 | * @param __INTERRUPT__ specifies the TT interrupts to clear. |
AnnaBridge | 172:65be27845400 | 1898 | * This parameter can be any combination of @arg FDCAN_TTInterrupts |
AnnaBridge | 172:65be27845400 | 1899 | * @retval None |
AnnaBridge | 172:65be27845400 | 1900 | */ |
AnnaBridge | 172:65be27845400 | 1901 | #define __HAL_FDCAN_TT_CLEAR_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->ttcan->TTIR) = (__INTERRUPT__)) |
AnnaBridge | 172:65be27845400 | 1902 | |
AnnaBridge | 172:65be27845400 | 1903 | /** |
AnnaBridge | 172:65be27845400 | 1904 | * @brief Check whether the specified FDCAN TT flag is set or not. |
AnnaBridge | 172:65be27845400 | 1905 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1906 | * @param __FLAG__ FDCAN TT flag. |
AnnaBridge | 172:65be27845400 | 1907 | * This parameter can be one of @arg FDCAN_TTflags |
AnnaBridge | 172:65be27845400 | 1908 | * @retval FlagStatus |
AnnaBridge | 172:65be27845400 | 1909 | */ |
AnnaBridge | 172:65be27845400 | 1910 | #define __HAL_FDCAN_TT_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->ttcan->TTIR) & (__FLAG__)) |
AnnaBridge | 172:65be27845400 | 1911 | |
AnnaBridge | 172:65be27845400 | 1912 | /** |
AnnaBridge | 172:65be27845400 | 1913 | * @brief Clear the specified FDCAN TT flags. |
AnnaBridge | 172:65be27845400 | 1914 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1915 | * @param __FLAG__ specifies the TT flags to clear. |
AnnaBridge | 172:65be27845400 | 1916 | * This parameter can be any combination of @arg FDCAN_TTflags |
AnnaBridge | 172:65be27845400 | 1917 | * @retval None |
AnnaBridge | 172:65be27845400 | 1918 | */ |
AnnaBridge | 172:65be27845400 | 1919 | #define __HAL_FDCAN_TT_CLEAR_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->ttcan->TTIR) = (__FLAG__)) |
AnnaBridge | 172:65be27845400 | 1920 | |
AnnaBridge | 172:65be27845400 | 1921 | /** @brief Check if the specified FDCAN TT interrupt source is enabled or disabled. |
AnnaBridge | 172:65be27845400 | 1922 | * @param __HANDLE__ FDCAN handle. |
AnnaBridge | 172:65be27845400 | 1923 | * @param __INTERRUPT__ specifies the FDCAN TT interrupt source to check. |
AnnaBridge | 172:65be27845400 | 1924 | * This parameter can be a value of @arg FDCAN_TTInterrupts |
AnnaBridge | 172:65be27845400 | 1925 | * @retval ITStatus |
AnnaBridge | 172:65be27845400 | 1926 | */ |
AnnaBridge | 172:65be27845400 | 1927 | #define __HAL_FDCAN_TT_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->ttcan->TTIE) & (__INTERRUPT__)) |
AnnaBridge | 172:65be27845400 | 1928 | |
AnnaBridge | 172:65be27845400 | 1929 | /** |
AnnaBridge | 172:65be27845400 | 1930 | * @} |
AnnaBridge | 172:65be27845400 | 1931 | */ |
AnnaBridge | 172:65be27845400 | 1932 | |
AnnaBridge | 172:65be27845400 | 1933 | /* Exported functions --------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 1934 | /** @addtogroup FDCAN_Exported_Functions |
AnnaBridge | 172:65be27845400 | 1935 | * @{ |
AnnaBridge | 172:65be27845400 | 1936 | */ |
AnnaBridge | 172:65be27845400 | 1937 | |
AnnaBridge | 172:65be27845400 | 1938 | /** @addtogroup FDCAN_Exported_Functions_Group1 |
AnnaBridge | 172:65be27845400 | 1939 | * @{ |
AnnaBridge | 172:65be27845400 | 1940 | */ |
AnnaBridge | 172:65be27845400 | 1941 | /* Initialization and de-initialization functions *****************************/ |
AnnaBridge | 172:65be27845400 | 1942 | HAL_StatusTypeDef HAL_FDCAN_Init(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1943 | HAL_StatusTypeDef HAL_FDCAN_DeInit(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1944 | void HAL_FDCAN_MspInit(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1945 | void HAL_FDCAN_MspDeInit(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1946 | HAL_StatusTypeDef HAL_FDCAN_EnterPowerDownMode(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1947 | HAL_StatusTypeDef HAL_FDCAN_ExitPowerDownMode(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1948 | |
AnnaBridge | 172:65be27845400 | 1949 | #if USE_HAL_FDCAN_REGISTER_CALLBACKS == 1 |
AnnaBridge | 172:65be27845400 | 1950 | /* Callbacks Register/UnRegister functions ***********************************/ |
AnnaBridge | 172:65be27845400 | 1951 | HAL_StatusTypeDef HAL_FDCAN_RegisterCallback(FDCAN_HandleTypeDef *hfdcan, HAL_FDCAN_CallbackIDTypeDef CallbackID, pFDCAN_CallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1952 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterCallback(FDCAN_HandleTypeDef *hfdcan, HAL_FDCAN_CallbackIDTypeDef CallbackID); |
AnnaBridge | 172:65be27845400 | 1953 | HAL_StatusTypeDef HAL_FDCAN_RegisterClockCalibrationCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_ClockCalibrationCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1954 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterClockCalibrationCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1955 | HAL_StatusTypeDef HAL_FDCAN_RegisterTxEventFifoCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TxEventFifoCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1956 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTxEventFifoCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1957 | HAL_StatusTypeDef HAL_FDCAN_RegisterRxFifo0Callback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_RxFifo0CallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1958 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterRxFifo0Callback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1959 | HAL_StatusTypeDef HAL_FDCAN_RegisterRxFifo1Callback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_RxFifo1CallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1960 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterRxFifo1Callback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1961 | HAL_StatusTypeDef HAL_FDCAN_RegisterTxBufferCompleteCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TxBufferCompleteCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1962 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTxBufferCompleteCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1963 | HAL_StatusTypeDef HAL_FDCAN_RegisterTxBufferAbortCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TxBufferAbortCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1964 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTxBufferAbortCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1965 | HAL_StatusTypeDef HAL_FDCAN_RegisterErrorStatusCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_ErrorStatusCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1966 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterErrorStatusCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1967 | HAL_StatusTypeDef HAL_FDCAN_RegisterTTScheduleSyncCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TT_ScheduleSyncCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1968 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTTScheduleSyncCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1969 | HAL_StatusTypeDef HAL_FDCAN_RegisterTTTimeMarkCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TT_TimeMarkCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1970 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTTTimeMarkCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1971 | HAL_StatusTypeDef HAL_FDCAN_RegisterTTStopWatchCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TT_StopWatchCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1972 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTTStopWatchCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1973 | HAL_StatusTypeDef HAL_FDCAN_RegisterTTGlobalTimeCallback(FDCAN_HandleTypeDef *hfdcan, pFDCAN_TT_GlobalTimeCallbackTypeDef pCallback); |
AnnaBridge | 172:65be27845400 | 1974 | HAL_StatusTypeDef HAL_FDCAN_UnRegisterTTGlobalTimeCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1975 | #endif /* USE_HAL_FDCAN_REGISTER_CALLBACKS */ |
AnnaBridge | 172:65be27845400 | 1976 | /** |
AnnaBridge | 172:65be27845400 | 1977 | * @} |
AnnaBridge | 172:65be27845400 | 1978 | */ |
AnnaBridge | 172:65be27845400 | 1979 | |
AnnaBridge | 172:65be27845400 | 1980 | /** @addtogroup FDCAN_Exported_Functions_Group2 |
AnnaBridge | 172:65be27845400 | 1981 | * @{ |
AnnaBridge | 172:65be27845400 | 1982 | */ |
AnnaBridge | 172:65be27845400 | 1983 | /* Configuration functions ****************************************************/ |
AnnaBridge | 172:65be27845400 | 1984 | HAL_StatusTypeDef HAL_FDCAN_ConfigClockCalibration(FDCAN_HandleTypeDef *hfdcan, FDCAN_ClkCalUnitTypeDef *sCcuConfig); |
AnnaBridge | 172:65be27845400 | 1985 | uint32_t HAL_FDCAN_GetClockCalibrationState(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1986 | HAL_StatusTypeDef HAL_FDCAN_ResetClockCalibrationState(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1987 | uint32_t HAL_FDCAN_GetClockCalibrationCounter(FDCAN_HandleTypeDef *hfdcan, uint32_t Counter); |
AnnaBridge | 172:65be27845400 | 1988 | HAL_StatusTypeDef HAL_FDCAN_ConfigFilter(FDCAN_HandleTypeDef *hfdcan, FDCAN_FilterTypeDef *sFilterConfig); |
AnnaBridge | 172:65be27845400 | 1989 | HAL_StatusTypeDef HAL_FDCAN_ConfigGlobalFilter(FDCAN_HandleTypeDef *hfdcan, uint32_t NonMatchingStd, uint32_t NonMatchingExt, uint32_t RejectRemoteStd, uint32_t RejectRemoteExt); |
AnnaBridge | 172:65be27845400 | 1990 | HAL_StatusTypeDef HAL_FDCAN_ConfigExtendedIdMask(FDCAN_HandleTypeDef *hfdcan, uint32_t Mask); |
AnnaBridge | 172:65be27845400 | 1991 | HAL_StatusTypeDef HAL_FDCAN_ConfigRxFifoOverwrite(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo, uint32_t OperationMode); |
AnnaBridge | 172:65be27845400 | 1992 | HAL_StatusTypeDef HAL_FDCAN_ConfigFifoWatermark(FDCAN_HandleTypeDef *hfdcan, uint32_t FIFO, uint32_t Watermark); |
AnnaBridge | 172:65be27845400 | 1993 | HAL_StatusTypeDef HAL_FDCAN_ConfigRamWatchdog(FDCAN_HandleTypeDef *hfdcan, uint32_t CounterStartValue); |
AnnaBridge | 172:65be27845400 | 1994 | HAL_StatusTypeDef HAL_FDCAN_ConfigTimestampCounter(FDCAN_HandleTypeDef *hfdcan, uint32_t TimestampPrescaler); |
AnnaBridge | 172:65be27845400 | 1995 | HAL_StatusTypeDef HAL_FDCAN_EnableTimestampCounter(FDCAN_HandleTypeDef *hfdcan, uint32_t TimestampOperation); |
AnnaBridge | 172:65be27845400 | 1996 | HAL_StatusTypeDef HAL_FDCAN_DisableTimestampCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1997 | uint16_t HAL_FDCAN_GetTimestampCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1998 | HAL_StatusTypeDef HAL_FDCAN_ResetTimestampCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 1999 | HAL_StatusTypeDef HAL_FDCAN_ConfigTimeoutCounter(FDCAN_HandleTypeDef *hfdcan, uint32_t TimeoutOperation, uint32_t TimeoutPeriod); |
AnnaBridge | 172:65be27845400 | 2000 | HAL_StatusTypeDef HAL_FDCAN_EnableTimeoutCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2001 | HAL_StatusTypeDef HAL_FDCAN_DisableTimeoutCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2002 | uint16_t HAL_FDCAN_GetTimeoutCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2003 | HAL_StatusTypeDef HAL_FDCAN_ResetTimeoutCounter(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2004 | HAL_StatusTypeDef HAL_FDCAN_ConfigTxDelayCompensation(FDCAN_HandleTypeDef *hfdcan, uint32_t TdcOffset, uint32_t TdcFilter); |
AnnaBridge | 172:65be27845400 | 2005 | HAL_StatusTypeDef HAL_FDCAN_EnableTxDelayCompensation(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2006 | HAL_StatusTypeDef HAL_FDCAN_DisableTxDelayCompensation(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2007 | HAL_StatusTypeDef HAL_FDCAN_EnableISOMode(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2008 | HAL_StatusTypeDef HAL_FDCAN_DisableISOMode(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2009 | HAL_StatusTypeDef HAL_FDCAN_EnableEdgeFiltering(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2010 | HAL_StatusTypeDef HAL_FDCAN_DisableEdgeFiltering(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2011 | /** |
AnnaBridge | 172:65be27845400 | 2012 | * @} |
AnnaBridge | 172:65be27845400 | 2013 | */ |
AnnaBridge | 172:65be27845400 | 2014 | |
AnnaBridge | 172:65be27845400 | 2015 | /** @addtogroup FDCAN_Exported_Functions_Group3 |
AnnaBridge | 172:65be27845400 | 2016 | * @{ |
AnnaBridge | 172:65be27845400 | 2017 | */ |
AnnaBridge | 172:65be27845400 | 2018 | /* Control functions **********************************************************/ |
AnnaBridge | 172:65be27845400 | 2019 | HAL_StatusTypeDef HAL_FDCAN_Start(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2020 | HAL_StatusTypeDef HAL_FDCAN_Stop(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2021 | HAL_StatusTypeDef HAL_FDCAN_AddMessageToTxFifoQ(FDCAN_HandleTypeDef *hfdcan, FDCAN_TxHeaderTypeDef *pTxHeader, uint8_t *pTxData); |
AnnaBridge | 172:65be27845400 | 2022 | HAL_StatusTypeDef HAL_FDCAN_AddMessageToTxBuffer(FDCAN_HandleTypeDef *hfdcan, FDCAN_TxHeaderTypeDef *pTxHeader, uint8_t *pTxData, uint32_t BufferIndex); |
AnnaBridge | 172:65be27845400 | 2023 | HAL_StatusTypeDef HAL_FDCAN_EnableTxBufferRequest(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndex); |
AnnaBridge | 172:65be27845400 | 2024 | uint32_t HAL_FDCAN_GetLatestTxFifoQRequestBuffer(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2025 | HAL_StatusTypeDef HAL_FDCAN_AbortTxRequest(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndex); |
AnnaBridge | 172:65be27845400 | 2026 | HAL_StatusTypeDef HAL_FDCAN_GetRxMessage(FDCAN_HandleTypeDef *hfdcan, uint32_t RxLocation, FDCAN_RxHeaderTypeDef *pRxHeader, uint8_t *pRxData); |
AnnaBridge | 172:65be27845400 | 2027 | HAL_StatusTypeDef HAL_FDCAN_GetTxEvent(FDCAN_HandleTypeDef *hfdcan, FDCAN_TxEventFifoTypeDef *pTxEvent); |
AnnaBridge | 172:65be27845400 | 2028 | HAL_StatusTypeDef HAL_FDCAN_GetHighPriorityMessageStatus(FDCAN_HandleTypeDef *hfdcan, FDCAN_HpMsgStatusTypeDef *HpMsgStatus); |
AnnaBridge | 172:65be27845400 | 2029 | HAL_StatusTypeDef HAL_FDCAN_GetProtocolStatus(FDCAN_HandleTypeDef *hfdcan, FDCAN_ProtocolStatusTypeDef *ProtocolStatus); |
AnnaBridge | 172:65be27845400 | 2030 | HAL_StatusTypeDef HAL_FDCAN_GetErrorCounters(FDCAN_HandleTypeDef *hfdcan, FDCAN_ErrorCountersTypeDef *ErrorCounters); |
AnnaBridge | 172:65be27845400 | 2031 | uint32_t HAL_FDCAN_IsRxBufferMessageAvailable(FDCAN_HandleTypeDef *hfdcan, uint32_t RxBufferIndex); |
AnnaBridge | 172:65be27845400 | 2032 | uint32_t HAL_FDCAN_IsTxBufferMessagePending(FDCAN_HandleTypeDef *hfdcan, uint32_t TxBufferIndex); |
AnnaBridge | 172:65be27845400 | 2033 | uint32_t HAL_FDCAN_GetRxFifoFillLevel(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo); |
AnnaBridge | 172:65be27845400 | 2034 | uint32_t HAL_FDCAN_GetTxFifoFreeLevel(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2035 | uint32_t HAL_FDCAN_IsRestrictedOperationMode(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2036 | HAL_StatusTypeDef HAL_FDCAN_ExitRestrictedOperationMode(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2037 | /** |
AnnaBridge | 172:65be27845400 | 2038 | * @} |
AnnaBridge | 172:65be27845400 | 2039 | */ |
AnnaBridge | 172:65be27845400 | 2040 | |
AnnaBridge | 172:65be27845400 | 2041 | /** @addtogroup FDCAN_Exported_Functions_Group4 |
AnnaBridge | 172:65be27845400 | 2042 | * @{ |
AnnaBridge | 172:65be27845400 | 2043 | */ |
AnnaBridge | 172:65be27845400 | 2044 | /* TT Configuration and control functions**************************************/ |
AnnaBridge | 172:65be27845400 | 2045 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigOperation(FDCAN_HandleTypeDef *hfdcan, FDCAN_TT_ConfigTypeDef *pTTParams); |
AnnaBridge | 172:65be27845400 | 2046 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigReferenceMessage(FDCAN_HandleTypeDef *hfdcan, uint32_t IdType, uint32_t Identifier, uint32_t Payload); |
AnnaBridge | 172:65be27845400 | 2047 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigTrigger(FDCAN_HandleTypeDef *hfdcan, FDCAN_TriggerTypeDef *sTriggerConfig); |
AnnaBridge | 172:65be27845400 | 2048 | HAL_StatusTypeDef HAL_FDCAN_TT_SetGlobalTime(FDCAN_HandleTypeDef *hfdcan, uint32_t TimePreset); |
AnnaBridge | 172:65be27845400 | 2049 | HAL_StatusTypeDef HAL_FDCAN_TT_SetClockSynchronization(FDCAN_HandleTypeDef *hfdcan, uint32_t NewTURNumerator); |
AnnaBridge | 172:65be27845400 | 2050 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigStopWatch(FDCAN_HandleTypeDef *hfdcan, uint32_t Source, uint32_t Polarity); |
AnnaBridge | 172:65be27845400 | 2051 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigRegisterTimeMark(FDCAN_HandleTypeDef *hfdcan, uint32_t TimeMarkSource, uint32_t TimeMarkValue, uint32_t RepeatFactor, uint32_t StartCycle); |
AnnaBridge | 172:65be27845400 | 2052 | HAL_StatusTypeDef HAL_FDCAN_TT_EnableRegisterTimeMarkPulse(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2053 | HAL_StatusTypeDef HAL_FDCAN_TT_DisableRegisterTimeMarkPulse(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2054 | HAL_StatusTypeDef HAL_FDCAN_TT_EnableTriggerTimeMarkPulse(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2055 | HAL_StatusTypeDef HAL_FDCAN_TT_DisableTriggerTimeMarkPulse(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2056 | HAL_StatusTypeDef HAL_FDCAN_TT_EnableHardwareGapControl(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2057 | HAL_StatusTypeDef HAL_FDCAN_TT_DisableHardwareGapControl(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2058 | HAL_StatusTypeDef HAL_FDCAN_TT_EnableTimeMarkGapControl(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2059 | HAL_StatusTypeDef HAL_FDCAN_TT_DisableTimeMarkGapControl(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2060 | HAL_StatusTypeDef HAL_FDCAN_TT_SetNextIsGap(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2061 | HAL_StatusTypeDef HAL_FDCAN_TT_SetEndOfGap(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2062 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigExternalSyncPhase(FDCAN_HandleTypeDef *hfdcan, uint32_t TargetPhase); |
AnnaBridge | 172:65be27845400 | 2063 | HAL_StatusTypeDef HAL_FDCAN_TT_EnableExternalSynchronization(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2064 | HAL_StatusTypeDef HAL_FDCAN_TT_DisableExternalSynchronization(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2065 | HAL_StatusTypeDef HAL_FDCAN_TT_GetOperationStatus(FDCAN_HandleTypeDef *hfdcan, FDCAN_TTOperationStatusTypeDef *TTOpStatus); |
AnnaBridge | 172:65be27845400 | 2066 | /** |
AnnaBridge | 172:65be27845400 | 2067 | * @} |
AnnaBridge | 172:65be27845400 | 2068 | */ |
AnnaBridge | 172:65be27845400 | 2069 | |
AnnaBridge | 172:65be27845400 | 2070 | /** @addtogroup FDCAN_Exported_Functions_Group5 |
AnnaBridge | 172:65be27845400 | 2071 | * @{ |
AnnaBridge | 172:65be27845400 | 2072 | */ |
AnnaBridge | 172:65be27845400 | 2073 | /* Interrupts management ******************************************************/ |
AnnaBridge | 172:65be27845400 | 2074 | HAL_StatusTypeDef HAL_FDCAN_ConfigInterruptLines(FDCAN_HandleTypeDef *hfdcan, uint32_t ITList, uint32_t InterruptLine); |
AnnaBridge | 172:65be27845400 | 2075 | HAL_StatusTypeDef HAL_FDCAN_TT_ConfigInterruptLines(FDCAN_HandleTypeDef *hfdcan, uint32_t TTITList, uint32_t InterruptLine); |
AnnaBridge | 172:65be27845400 | 2076 | HAL_StatusTypeDef HAL_FDCAN_ActivateNotification(FDCAN_HandleTypeDef *hfdcan, uint32_t ActiveITs, uint32_t BufferIndexes); |
AnnaBridge | 172:65be27845400 | 2077 | HAL_StatusTypeDef HAL_FDCAN_DeactivateNotification(FDCAN_HandleTypeDef *hfdcan, uint32_t InactiveITs); |
AnnaBridge | 172:65be27845400 | 2078 | HAL_StatusTypeDef HAL_FDCAN_TT_ActivateNotification(FDCAN_HandleTypeDef *hfdcan, uint32_t ActiveTTITs); |
AnnaBridge | 172:65be27845400 | 2079 | HAL_StatusTypeDef HAL_FDCAN_TT_DeactivateNotification(FDCAN_HandleTypeDef *hfdcan, uint32_t InactiveTTITs); |
AnnaBridge | 172:65be27845400 | 2080 | void HAL_FDCAN_IRQHandler(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2081 | /** |
AnnaBridge | 172:65be27845400 | 2082 | * @} |
AnnaBridge | 172:65be27845400 | 2083 | */ |
AnnaBridge | 172:65be27845400 | 2084 | |
AnnaBridge | 172:65be27845400 | 2085 | /** @addtogroup FDCAN_Exported_Functions_Group6 |
AnnaBridge | 172:65be27845400 | 2086 | * @{ |
AnnaBridge | 172:65be27845400 | 2087 | */ |
AnnaBridge | 172:65be27845400 | 2088 | /* Callback functions *********************************************************/ |
AnnaBridge | 172:65be27845400 | 2089 | void HAL_FDCAN_ClockCalibrationCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t ClkCalibrationITs); |
AnnaBridge | 172:65be27845400 | 2090 | void HAL_FDCAN_TxEventFifoCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t TxEventFifoITs); |
AnnaBridge | 172:65be27845400 | 2091 | void HAL_FDCAN_RxFifo0Callback(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo0ITs); |
AnnaBridge | 172:65be27845400 | 2092 | void HAL_FDCAN_RxFifo1Callback(FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo1ITs); |
AnnaBridge | 172:65be27845400 | 2093 | void HAL_FDCAN_TxFifoEmptyCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2094 | void HAL_FDCAN_TxBufferCompleteCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes); |
AnnaBridge | 172:65be27845400 | 2095 | void HAL_FDCAN_TxBufferAbortCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t BufferIndexes); |
AnnaBridge | 172:65be27845400 | 2096 | void HAL_FDCAN_RxBufferNewMessageCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2097 | void HAL_FDCAN_HighPriorityMessageCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2098 | void HAL_FDCAN_TimestampWraparoundCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2099 | void HAL_FDCAN_TimeoutOccurredCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2100 | void HAL_FDCAN_ErrorCallback(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2101 | void HAL_FDCAN_ErrorStatusCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t ErrorStatusITs); |
AnnaBridge | 172:65be27845400 | 2102 | void HAL_FDCAN_TT_ScheduleSyncCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t TTSchedSyncITs); |
AnnaBridge | 172:65be27845400 | 2103 | void HAL_FDCAN_TT_TimeMarkCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t TTTimeMarkITs); |
AnnaBridge | 172:65be27845400 | 2104 | void HAL_FDCAN_TT_StopWatchCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t SWTime, uint32_t SWCycleCount); |
AnnaBridge | 172:65be27845400 | 2105 | void HAL_FDCAN_TT_GlobalTimeCallback(FDCAN_HandleTypeDef *hfdcan, uint32_t TTGlobTimeITs); |
AnnaBridge | 172:65be27845400 | 2106 | /** |
AnnaBridge | 172:65be27845400 | 2107 | * @} |
AnnaBridge | 172:65be27845400 | 2108 | */ |
AnnaBridge | 172:65be27845400 | 2109 | |
AnnaBridge | 172:65be27845400 | 2110 | /** @addtogroup FDCAN_Exported_Functions_Group7 |
AnnaBridge | 172:65be27845400 | 2111 | * @{ |
AnnaBridge | 172:65be27845400 | 2112 | */ |
AnnaBridge | 172:65be27845400 | 2113 | /* Peripheral State functions *************************************************/ |
AnnaBridge | 172:65be27845400 | 2114 | uint32_t HAL_FDCAN_GetError(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2115 | HAL_FDCAN_StateTypeDef HAL_FDCAN_GetState(FDCAN_HandleTypeDef *hfdcan); |
AnnaBridge | 172:65be27845400 | 2116 | /** |
AnnaBridge | 172:65be27845400 | 2117 | * @} |
AnnaBridge | 172:65be27845400 | 2118 | */ |
AnnaBridge | 172:65be27845400 | 2119 | |
AnnaBridge | 172:65be27845400 | 2120 | /** |
AnnaBridge | 172:65be27845400 | 2121 | * @} |
AnnaBridge | 172:65be27845400 | 2122 | */ |
AnnaBridge | 172:65be27845400 | 2123 | |
AnnaBridge | 172:65be27845400 | 2124 | /* Private types -------------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 2125 | /** @defgroup FDCAN_Private_Types FDCAN Private Types |
AnnaBridge | 172:65be27845400 | 2126 | * @{ |
AnnaBridge | 172:65be27845400 | 2127 | */ |
AnnaBridge | 172:65be27845400 | 2128 | |
AnnaBridge | 172:65be27845400 | 2129 | /** |
AnnaBridge | 172:65be27845400 | 2130 | * @} |
AnnaBridge | 172:65be27845400 | 2131 | */ |
AnnaBridge | 172:65be27845400 | 2132 | |
AnnaBridge | 172:65be27845400 | 2133 | /* Private variables ---------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 2134 | /** @defgroup FDCAN_Private_Variables FDCAN Private Variables |
AnnaBridge | 172:65be27845400 | 2135 | * @{ |
AnnaBridge | 172:65be27845400 | 2136 | */ |
AnnaBridge | 172:65be27845400 | 2137 | |
AnnaBridge | 172:65be27845400 | 2138 | /** |
AnnaBridge | 172:65be27845400 | 2139 | * @} |
AnnaBridge | 172:65be27845400 | 2140 | */ |
AnnaBridge | 172:65be27845400 | 2141 | |
AnnaBridge | 172:65be27845400 | 2142 | /* Private constants ---------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 2143 | /** @defgroup FDCAN_Private_Constants FDCAN Private Constants |
AnnaBridge | 172:65be27845400 | 2144 | * @{ |
AnnaBridge | 172:65be27845400 | 2145 | */ |
AnnaBridge | 172:65be27845400 | 2146 | |
AnnaBridge | 172:65be27845400 | 2147 | /** |
AnnaBridge | 172:65be27845400 | 2148 | * @} |
AnnaBridge | 172:65be27845400 | 2149 | */ |
AnnaBridge | 172:65be27845400 | 2150 | |
AnnaBridge | 172:65be27845400 | 2151 | /* Private macros ------------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 2152 | /** @defgroup FDCAN_Private_Macros FDCAN Private Macros |
AnnaBridge | 172:65be27845400 | 2153 | * @{ |
AnnaBridge | 172:65be27845400 | 2154 | */ |
AnnaBridge | 172:65be27845400 | 2155 | #define IS_FDCAN_FRAME_FORMAT(FORMAT) (((FORMAT) == FDCAN_FRAME_CLASSIC ) || \ |
AnnaBridge | 172:65be27845400 | 2156 | ((FORMAT) == FDCAN_FRAME_FD_NO_BRS) || \ |
AnnaBridge | 172:65be27845400 | 2157 | ((FORMAT) == FDCAN_FRAME_FD_BRS )) |
AnnaBridge | 172:65be27845400 | 2158 | #define IS_FDCAN_MODE(MODE) (((MODE) == FDCAN_MODE_NORMAL ) || \ |
AnnaBridge | 172:65be27845400 | 2159 | ((MODE) == FDCAN_MODE_RESTRICTED_OPERATION) || \ |
AnnaBridge | 172:65be27845400 | 2160 | ((MODE) == FDCAN_MODE_BUS_MONITORING ) || \ |
AnnaBridge | 172:65be27845400 | 2161 | ((MODE) == FDCAN_MODE_INTERNAL_LOOPBACK ) || \ |
AnnaBridge | 172:65be27845400 | 2162 | ((MODE) == FDCAN_MODE_EXTERNAL_LOOPBACK )) |
AnnaBridge | 172:65be27845400 | 2163 | |
AnnaBridge | 172:65be27845400 | 2164 | #define IS_FDCAN_CLOCK_CALIBRATION(CALIBRATION) (((CALIBRATION) == FDCAN_CLOCK_CALIBRATION_DISABLE) || \ |
AnnaBridge | 172:65be27845400 | 2165 | ((CALIBRATION) == FDCAN_CLOCK_CALIBRATION_ENABLE )) |
AnnaBridge | 172:65be27845400 | 2166 | |
AnnaBridge | 172:65be27845400 | 2167 | #define IS_FDCAN_CKDIV(CKDIV) (((CKDIV) == FDCAN_CLOCK_DIV1 ) || \ |
AnnaBridge | 172:65be27845400 | 2168 | ((CKDIV) == FDCAN_CLOCK_DIV2 ) || \ |
AnnaBridge | 172:65be27845400 | 2169 | ((CKDIV) == FDCAN_CLOCK_DIV4 ) || \ |
AnnaBridge | 172:65be27845400 | 2170 | ((CKDIV) == FDCAN_CLOCK_DIV6 ) || \ |
AnnaBridge | 172:65be27845400 | 2171 | ((CKDIV) == FDCAN_CLOCK_DIV8 ) || \ |
AnnaBridge | 172:65be27845400 | 2172 | ((CKDIV) == FDCAN_CLOCK_DIV10) || \ |
AnnaBridge | 172:65be27845400 | 2173 | ((CKDIV) == FDCAN_CLOCK_DIV12) || \ |
AnnaBridge | 172:65be27845400 | 2174 | ((CKDIV) == FDCAN_CLOCK_DIV14) || \ |
AnnaBridge | 172:65be27845400 | 2175 | ((CKDIV) == FDCAN_CLOCK_DIV16) || \ |
AnnaBridge | 172:65be27845400 | 2176 | ((CKDIV) == FDCAN_CLOCK_DIV18) || \ |
AnnaBridge | 172:65be27845400 | 2177 | ((CKDIV) == FDCAN_CLOCK_DIV20) || \ |
AnnaBridge | 172:65be27845400 | 2178 | ((CKDIV) == FDCAN_CLOCK_DIV22) || \ |
AnnaBridge | 172:65be27845400 | 2179 | ((CKDIV) == FDCAN_CLOCK_DIV24) || \ |
AnnaBridge | 172:65be27845400 | 2180 | ((CKDIV) == FDCAN_CLOCK_DIV26) || \ |
AnnaBridge | 172:65be27845400 | 2181 | ((CKDIV) == FDCAN_CLOCK_DIV28) || \ |
AnnaBridge | 172:65be27845400 | 2182 | ((CKDIV) == FDCAN_CLOCK_DIV30)) |
AnnaBridge | 172:65be27845400 | 2183 | #define IS_FDCAN_NOMINAL_PRESCALER(PRESCALER) (((PRESCALER) >= 1U) && ((PRESCALER) <= 512U)) |
AnnaBridge | 172:65be27845400 | 2184 | #define IS_FDCAN_NOMINAL_SJW(SJW) (((SJW) >= 1U) && ((SJW) <= 128U)) |
AnnaBridge | 172:65be27845400 | 2185 | #define IS_FDCAN_NOMINAL_TSEG1(TSEG1) (((TSEG1) >= 1U) && ((TSEG1) <= 256U)) |
AnnaBridge | 172:65be27845400 | 2186 | #define IS_FDCAN_NOMINAL_TSEG2(TSEG2) (((TSEG2) >= 1U) && ((TSEG2) <= 128U)) |
AnnaBridge | 172:65be27845400 | 2187 | #define IS_FDCAN_DATA_PRESCALER(PRESCALER) (((PRESCALER) >= 1U) && ((PRESCALER) <= 32U)) |
AnnaBridge | 172:65be27845400 | 2188 | #define IS_FDCAN_DATA_SJW(SJW) (((SJW) >= 1U) && ((SJW) <= 16U)) |
AnnaBridge | 172:65be27845400 | 2189 | #define IS_FDCAN_DATA_TSEG1(TSEG1) (((TSEG1) >= 1U) && ((TSEG1) <= 32U)) |
AnnaBridge | 172:65be27845400 | 2190 | #define IS_FDCAN_DATA_TSEG2(TSEG2) (((TSEG2) >= 1U) && ((TSEG2) <= 16U)) |
AnnaBridge | 172:65be27845400 | 2191 | #define IS_FDCAN_MAX_VALUE(VALUE, MAX) ((VALUE) <= (MAX)) |
AnnaBridge | 172:65be27845400 | 2192 | #define IS_FDCAN_MIN_VALUE(VALUE, MIN) ((VALUE) >= (MIN)) |
AnnaBridge | 172:65be27845400 | 2193 | #define IS_FDCAN_DATA_SIZE(SIZE) (((SIZE) == FDCAN_DATA_BYTES_8 ) || \ |
AnnaBridge | 172:65be27845400 | 2194 | ((SIZE) == FDCAN_DATA_BYTES_12) || \ |
AnnaBridge | 172:65be27845400 | 2195 | ((SIZE) == FDCAN_DATA_BYTES_16) || \ |
AnnaBridge | 172:65be27845400 | 2196 | ((SIZE) == FDCAN_DATA_BYTES_20) || \ |
AnnaBridge | 172:65be27845400 | 2197 | ((SIZE) == FDCAN_DATA_BYTES_24) || \ |
AnnaBridge | 172:65be27845400 | 2198 | ((SIZE) == FDCAN_DATA_BYTES_32) || \ |
AnnaBridge | 172:65be27845400 | 2199 | ((SIZE) == FDCAN_DATA_BYTES_48) || \ |
AnnaBridge | 172:65be27845400 | 2200 | ((SIZE) == FDCAN_DATA_BYTES_64)) |
AnnaBridge | 172:65be27845400 | 2201 | #define IS_FDCAN_TX_FIFO_QUEUE_MODE(MODE) (((MODE) == FDCAN_TX_FIFO_OPERATION ) || \ |
AnnaBridge | 172:65be27845400 | 2202 | ((MODE) == FDCAN_TX_QUEUE_OPERATION)) |
AnnaBridge | 172:65be27845400 | 2203 | #define IS_FDCAN_ID_TYPE(ID_TYPE) (((ID_TYPE) == FDCAN_STANDARD_ID) || \ |
AnnaBridge | 172:65be27845400 | 2204 | ((ID_TYPE) == FDCAN_EXTENDED_ID)) |
AnnaBridge | 172:65be27845400 | 2205 | #define IS_FDCAN_FILTER_CFG(CONFIG) (((CONFIG) == FDCAN_FILTER_DISABLE ) || \ |
AnnaBridge | 172:65be27845400 | 2206 | ((CONFIG) == FDCAN_FILTER_TO_RXFIFO0 ) || \ |
AnnaBridge | 172:65be27845400 | 2207 | ((CONFIG) == FDCAN_FILTER_TO_RXFIFO1 ) || \ |
AnnaBridge | 172:65be27845400 | 2208 | ((CONFIG) == FDCAN_FILTER_REJECT ) || \ |
AnnaBridge | 172:65be27845400 | 2209 | ((CONFIG) == FDCAN_FILTER_HP ) || \ |
AnnaBridge | 172:65be27845400 | 2210 | ((CONFIG) == FDCAN_FILTER_TO_RXFIFO0_HP) || \ |
AnnaBridge | 172:65be27845400 | 2211 | ((CONFIG) == FDCAN_FILTER_TO_RXFIFO1_HP) || \ |
AnnaBridge | 172:65be27845400 | 2212 | ((CONFIG) == FDCAN_FILTER_TO_RXBUFFER )) |
AnnaBridge | 172:65be27845400 | 2213 | #define IS_FDCAN_TX_LOCATION(LOCATION) (((LOCATION) == FDCAN_TX_BUFFER0 ) || ((LOCATION) == FDCAN_TX_BUFFER1 ) || \ |
AnnaBridge | 172:65be27845400 | 2214 | ((LOCATION) == FDCAN_TX_BUFFER2 ) || ((LOCATION) == FDCAN_TX_BUFFER3 ) || \ |
AnnaBridge | 172:65be27845400 | 2215 | ((LOCATION) == FDCAN_TX_BUFFER4 ) || ((LOCATION) == FDCAN_TX_BUFFER5 ) || \ |
AnnaBridge | 172:65be27845400 | 2216 | ((LOCATION) == FDCAN_TX_BUFFER6 ) || ((LOCATION) == FDCAN_TX_BUFFER7 ) || \ |
AnnaBridge | 172:65be27845400 | 2217 | ((LOCATION) == FDCAN_TX_BUFFER8 ) || ((LOCATION) == FDCAN_TX_BUFFER9 ) || \ |
AnnaBridge | 172:65be27845400 | 2218 | ((LOCATION) == FDCAN_TX_BUFFER10) || ((LOCATION) == FDCAN_TX_BUFFER11) || \ |
AnnaBridge | 172:65be27845400 | 2219 | ((LOCATION) == FDCAN_TX_BUFFER12) || ((LOCATION) == FDCAN_TX_BUFFER13) || \ |
AnnaBridge | 172:65be27845400 | 2220 | ((LOCATION) == FDCAN_TX_BUFFER14) || ((LOCATION) == FDCAN_TX_BUFFER15) || \ |
AnnaBridge | 172:65be27845400 | 2221 | ((LOCATION) == FDCAN_TX_BUFFER16) || ((LOCATION) == FDCAN_TX_BUFFER17) || \ |
AnnaBridge | 172:65be27845400 | 2222 | ((LOCATION) == FDCAN_TX_BUFFER18) || ((LOCATION) == FDCAN_TX_BUFFER19) || \ |
AnnaBridge | 172:65be27845400 | 2223 | ((LOCATION) == FDCAN_TX_BUFFER20) || ((LOCATION) == FDCAN_TX_BUFFER21) || \ |
AnnaBridge | 172:65be27845400 | 2224 | ((LOCATION) == FDCAN_TX_BUFFER22) || ((LOCATION) == FDCAN_TX_BUFFER23) || \ |
AnnaBridge | 172:65be27845400 | 2225 | ((LOCATION) == FDCAN_TX_BUFFER24) || ((LOCATION) == FDCAN_TX_BUFFER25) || \ |
AnnaBridge | 172:65be27845400 | 2226 | ((LOCATION) == FDCAN_TX_BUFFER26) || ((LOCATION) == FDCAN_TX_BUFFER27) || \ |
AnnaBridge | 172:65be27845400 | 2227 | ((LOCATION) == FDCAN_TX_BUFFER28) || ((LOCATION) == FDCAN_TX_BUFFER29) || \ |
AnnaBridge | 172:65be27845400 | 2228 | ((LOCATION) == FDCAN_TX_BUFFER30) || ((LOCATION) == FDCAN_TX_BUFFER31)) |
AnnaBridge | 172:65be27845400 | 2229 | #define IS_FDCAN_RX_FIFO(FIFO) (((FIFO) == FDCAN_RX_FIFO0) || \ |
AnnaBridge | 172:65be27845400 | 2230 | ((FIFO) == FDCAN_RX_FIFO1)) |
AnnaBridge | 172:65be27845400 | 2231 | #define IS_FDCAN_RX_FIFO_MODE(MODE) (((MODE) == FDCAN_RX_FIFO_BLOCKING ) || \ |
AnnaBridge | 172:65be27845400 | 2232 | ((MODE) == FDCAN_RX_FIFO_OVERWRITE)) |
AnnaBridge | 172:65be27845400 | 2233 | #define IS_FDCAN_STD_FILTER_TYPE(TYPE) (((TYPE) == FDCAN_FILTER_RANGE) || \ |
AnnaBridge | 172:65be27845400 | 2234 | ((TYPE) == FDCAN_FILTER_DUAL ) || \ |
AnnaBridge | 172:65be27845400 | 2235 | ((TYPE) == FDCAN_FILTER_MASK )) |
AnnaBridge | 172:65be27845400 | 2236 | #define IS_FDCAN_EXT_FILTER_TYPE(TYPE) (((TYPE) == FDCAN_FILTER_RANGE ) || \ |
AnnaBridge | 172:65be27845400 | 2237 | ((TYPE) == FDCAN_FILTER_DUAL ) || \ |
AnnaBridge | 172:65be27845400 | 2238 | ((TYPE) == FDCAN_FILTER_MASK ) || \ |
AnnaBridge | 172:65be27845400 | 2239 | ((TYPE) == FDCAN_FILTER_RANGE_NO_EIDM)) |
AnnaBridge | 172:65be27845400 | 2240 | #define IS_FDCAN_FRAME_TYPE(TYPE) (((TYPE) == FDCAN_DATA_FRAME ) || \ |
AnnaBridge | 172:65be27845400 | 2241 | ((TYPE) == FDCAN_REMOTE_FRAME)) |
AnnaBridge | 172:65be27845400 | 2242 | #define IS_FDCAN_DLC(DLC) (((DLC) == FDCAN_DLC_BYTES_0 ) || \ |
AnnaBridge | 172:65be27845400 | 2243 | ((DLC) == FDCAN_DLC_BYTES_1 ) || \ |
AnnaBridge | 172:65be27845400 | 2244 | ((DLC) == FDCAN_DLC_BYTES_2 ) || \ |
AnnaBridge | 172:65be27845400 | 2245 | ((DLC) == FDCAN_DLC_BYTES_3 ) || \ |
AnnaBridge | 172:65be27845400 | 2246 | ((DLC) == FDCAN_DLC_BYTES_4 ) || \ |
AnnaBridge | 172:65be27845400 | 2247 | ((DLC) == FDCAN_DLC_BYTES_5 ) || \ |
AnnaBridge | 172:65be27845400 | 2248 | ((DLC) == FDCAN_DLC_BYTES_6 ) || \ |
AnnaBridge | 172:65be27845400 | 2249 | ((DLC) == FDCAN_DLC_BYTES_7 ) || \ |
AnnaBridge | 172:65be27845400 | 2250 | ((DLC) == FDCAN_DLC_BYTES_8 ) || \ |
AnnaBridge | 172:65be27845400 | 2251 | ((DLC) == FDCAN_DLC_BYTES_12) || \ |
AnnaBridge | 172:65be27845400 | 2252 | ((DLC) == FDCAN_DLC_BYTES_16) || \ |
AnnaBridge | 172:65be27845400 | 2253 | ((DLC) == FDCAN_DLC_BYTES_20) || \ |
AnnaBridge | 172:65be27845400 | 2254 | ((DLC) == FDCAN_DLC_BYTES_24) || \ |
AnnaBridge | 172:65be27845400 | 2255 | ((DLC) == FDCAN_DLC_BYTES_32) || \ |
AnnaBridge | 172:65be27845400 | 2256 | ((DLC) == FDCAN_DLC_BYTES_48) || \ |
AnnaBridge | 172:65be27845400 | 2257 | ((DLC) == FDCAN_DLC_BYTES_64)) |
AnnaBridge | 172:65be27845400 | 2258 | #define IS_FDCAN_ESI(ESI) (((ESI) == FDCAN_ESI_ACTIVE ) || \ |
AnnaBridge | 172:65be27845400 | 2259 | ((ESI) == FDCAN_ESI_PASSIVE)) |
AnnaBridge | 172:65be27845400 | 2260 | #define IS_FDCAN_BRS(BRS) (((BRS) == FDCAN_BRS_OFF) || \ |
AnnaBridge | 172:65be27845400 | 2261 | ((BRS) == FDCAN_BRS_ON )) |
AnnaBridge | 172:65be27845400 | 2262 | #define IS_FDCAN_FDF(FDF) (((FDF) == FDCAN_CLASSIC_CAN) || \ |
AnnaBridge | 172:65be27845400 | 2263 | ((FDF) == FDCAN_FD_CAN )) |
AnnaBridge | 172:65be27845400 | 2264 | #define IS_FDCAN_EFC(EFC) (((EFC) == FDCAN_NO_TX_EVENTS ) || \ |
AnnaBridge | 172:65be27845400 | 2265 | ((EFC) == FDCAN_STORE_TX_EVENTS)) |
AnnaBridge | 172:65be27845400 | 2266 | #define IS_FDCAN_IT(IT) (((IT) & ~(FDCAN_IR_MASK | CCU_IR_MASK)) == 0U) |
AnnaBridge | 172:65be27845400 | 2267 | #define IS_FDCAN_TT_IT(IT) (((IT) & 0xFFF80000U) == 0U) |
AnnaBridge | 172:65be27845400 | 2268 | #define IS_FDCAN_FIFO_WATERMARK(FIFO) (((FIFO) == FDCAN_CFG_TX_EVENT_FIFO) || \ |
AnnaBridge | 172:65be27845400 | 2269 | ((FIFO) == FDCAN_CFG_RX_FIFO0 ) || \ |
AnnaBridge | 172:65be27845400 | 2270 | ((FIFO) == FDCAN_CFG_RX_FIFO1 )) |
AnnaBridge | 172:65be27845400 | 2271 | #define IS_FDCAN_NON_MATCHING(DESTINATION) (((DESTINATION) == FDCAN_ACCEPT_IN_RX_FIFO0) || \ |
AnnaBridge | 172:65be27845400 | 2272 | ((DESTINATION) == FDCAN_ACCEPT_IN_RX_FIFO1) || \ |
AnnaBridge | 172:65be27845400 | 2273 | ((DESTINATION) == FDCAN_REJECT )) |
AnnaBridge | 172:65be27845400 | 2274 | #define IS_FDCAN_REJECT_REMOTE(DESTINATION) (((DESTINATION) == FDCAN_FILTER_REMOTE) || \ |
AnnaBridge | 172:65be27845400 | 2275 | ((DESTINATION) == FDCAN_REJECT_REMOTE)) |
AnnaBridge | 172:65be27845400 | 2276 | #define IS_FDCAN_IT_LINE(IT_LINE) (((IT_LINE) == FDCAN_INTERRUPT_LINE0) || \ |
AnnaBridge | 172:65be27845400 | 2277 | ((IT_LINE) == FDCAN_INTERRUPT_LINE1)) |
AnnaBridge | 172:65be27845400 | 2278 | #define IS_FDCAN_TIMESTAMP(OPERATION) (((OPERATION) == FDCAN_TIMESTAMP_INTERNAL) || \ |
AnnaBridge | 172:65be27845400 | 2279 | ((OPERATION) == FDCAN_TIMESTAMP_EXTERNAL)) |
AnnaBridge | 172:65be27845400 | 2280 | #define IS_FDCAN_TIMESTAMP_PRESCALER(PRESCALER) (((PRESCALER) == FDCAN_TIMESTAMP_PRESC_1 ) || \ |
AnnaBridge | 172:65be27845400 | 2281 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_2 ) || \ |
AnnaBridge | 172:65be27845400 | 2282 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_3 ) || \ |
AnnaBridge | 172:65be27845400 | 2283 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_4 ) || \ |
AnnaBridge | 172:65be27845400 | 2284 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_5 ) || \ |
AnnaBridge | 172:65be27845400 | 2285 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_6 ) || \ |
AnnaBridge | 172:65be27845400 | 2286 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_7 ) || \ |
AnnaBridge | 172:65be27845400 | 2287 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_8 ) || \ |
AnnaBridge | 172:65be27845400 | 2288 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_9 ) || \ |
AnnaBridge | 172:65be27845400 | 2289 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_10) || \ |
AnnaBridge | 172:65be27845400 | 2290 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_11) || \ |
AnnaBridge | 172:65be27845400 | 2291 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_12) || \ |
AnnaBridge | 172:65be27845400 | 2292 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_13) || \ |
AnnaBridge | 172:65be27845400 | 2293 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_14) || \ |
AnnaBridge | 172:65be27845400 | 2294 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_15) || \ |
AnnaBridge | 172:65be27845400 | 2295 | ((PRESCALER) == FDCAN_TIMESTAMP_PRESC_16)) |
AnnaBridge | 172:65be27845400 | 2296 | #define IS_FDCAN_TIMEOUT(OPERATION) (((OPERATION) == FDCAN_TIMEOUT_CONTINUOUS ) || \ |
AnnaBridge | 172:65be27845400 | 2297 | ((OPERATION) == FDCAN_TIMEOUT_TX_EVENT_FIFO) || \ |
AnnaBridge | 172:65be27845400 | 2298 | ((OPERATION) == FDCAN_TIMEOUT_RX_FIFO0 ) || \ |
AnnaBridge | 172:65be27845400 | 2299 | ((OPERATION) == FDCAN_TIMEOUT_RX_FIFO1 )) |
AnnaBridge | 172:65be27845400 | 2300 | #define IS_FDCAN_CALIBRATION_FIELD_LENGTH(LENGTH) (((LENGTH) == FDCAN_CALIB_FIELD_LENGTH_32) || \ |
AnnaBridge | 172:65be27845400 | 2301 | ((LENGTH) == FDCAN_CALIB_FIELD_LENGTH_64)) |
AnnaBridge | 172:65be27845400 | 2302 | #define IS_FDCAN_CALIBRATION_COUNTER(COUNTER) (((COUNTER) == FDCAN_CALIB_TIME_QUANTA_COUNTER ) || \ |
AnnaBridge | 172:65be27845400 | 2303 | ((COUNTER) == FDCAN_CALIB_CLOCK_PERIOD_COUNTER) || \ |
AnnaBridge | 172:65be27845400 | 2304 | ((COUNTER) == FDCAN_CALIB_WATCHDOG_COUNTER )) |
AnnaBridge | 172:65be27845400 | 2305 | #define IS_FDCAN_TT_REFERENCE_MESSAGE_PAYLOAD(PAYLOAD) (((PAYLOAD) == FDCAN_TT_REF_MESSAGE_NO_PAYLOAD ) || \ |
AnnaBridge | 172:65be27845400 | 2306 | ((PAYLOAD) == FDCAN_TT_REF_MESSAGE_ADD_PAYLOAD)) |
AnnaBridge | 172:65be27845400 | 2307 | #define IS_FDCAN_TT_REPEAT_FACTOR(FACTOR) (((FACTOR) == FDCAN_TT_REPEAT_EVERY_CYCLE ) || \ |
AnnaBridge | 172:65be27845400 | 2308 | ((FACTOR) == FDCAN_TT_REPEAT_EVERY_2ND_CYCLE ) || \ |
AnnaBridge | 172:65be27845400 | 2309 | ((FACTOR) == FDCAN_TT_REPEAT_EVERY_4TH_CYCLE ) || \ |
AnnaBridge | 172:65be27845400 | 2310 | ((FACTOR) == FDCAN_TT_REPEAT_EVERY_8TH_CYCLE ) || \ |
AnnaBridge | 172:65be27845400 | 2311 | ((FACTOR) == FDCAN_TT_REPEAT_EVERY_16TH_CYCLE) || \ |
AnnaBridge | 172:65be27845400 | 2312 | ((FACTOR) == FDCAN_TT_REPEAT_EVERY_32ND_CYCLE) || \ |
AnnaBridge | 172:65be27845400 | 2313 | ((FACTOR) == FDCAN_TT_REPEAT_EVERY_64TH_CYCLE)) |
AnnaBridge | 172:65be27845400 | 2314 | #define IS_FDCAN_TT_TRIGGER_TYPE(TYPE) (((TYPE) == FDCAN_TT_TX_REF_TRIGGER ) || \ |
AnnaBridge | 172:65be27845400 | 2315 | ((TYPE) == FDCAN_TT_TX_REF_TRIGGER_GAP ) || \ |
AnnaBridge | 172:65be27845400 | 2316 | ((TYPE) == FDCAN_TT_TX_TRIGGER_SINGLE ) || \ |
AnnaBridge | 172:65be27845400 | 2317 | ((TYPE) == FDCAN_TT_TX_TRIGGER_CONTINUOUS ) || \ |
AnnaBridge | 172:65be27845400 | 2318 | ((TYPE) == FDCAN_TT_TX_TRIGGER_ARBITRATION) || \ |
AnnaBridge | 172:65be27845400 | 2319 | ((TYPE) == FDCAN_TT_TX_TRIGGER_MERGED ) || \ |
AnnaBridge | 172:65be27845400 | 2320 | ((TYPE) == FDCAN_TT_WATCH_TRIGGER ) || \ |
AnnaBridge | 172:65be27845400 | 2321 | ((TYPE) == FDCAN_TT_WATCH_TRIGGER_GAP ) || \ |
AnnaBridge | 172:65be27845400 | 2322 | ((TYPE) == FDCAN_TT_RX_TRIGGER ) || \ |
AnnaBridge | 172:65be27845400 | 2323 | ((TYPE) == FDCAN_TT_TIME_BASE_TRIGGER ) || \ |
AnnaBridge | 172:65be27845400 | 2324 | ((TYPE) == FDCAN_TT_END_OF_LIST )) |
AnnaBridge | 172:65be27845400 | 2325 | #define IS_FDCAN_TT_TM_EVENT_INTERNAL(EVENT) (((EVENT) == FDCAN_TT_TM_NO_INTERNAL_EVENT ) || \ |
AnnaBridge | 172:65be27845400 | 2326 | ((EVENT) == FDCAN_TT_TM_GEN_INTERNAL_EVENT)) |
AnnaBridge | 172:65be27845400 | 2327 | #define IS_FDCAN_TT_TM_EVENT_EXTERNAL(EVENT) (((EVENT) == FDCAN_TT_TM_NO_EXTERNAL_EVENT ) || \ |
AnnaBridge | 172:65be27845400 | 2328 | ((EVENT) == FDCAN_TT_TM_GEN_EXTERNAL_EVENT)) |
AnnaBridge | 172:65be27845400 | 2329 | #define IS_FDCAN_OPERATION_MODE(MODE) (((MODE) == FDCAN_TT_COMMUNICATION_LEVEL1 ) || \ |
AnnaBridge | 172:65be27845400 | 2330 | ((MODE) == FDCAN_TT_COMMUNICATION_LEVEL2 ) || \ |
AnnaBridge | 172:65be27845400 | 2331 | ((MODE) == FDCAN_TT_COMMUNICATION_LEVEL0 )) |
AnnaBridge | 172:65be27845400 | 2332 | #define IS_FDCAN_TT_OPERATION(OPERATION) (((OPERATION) == FDCAN_STRICTLY_TT_OPERATION ) || \ |
AnnaBridge | 172:65be27845400 | 2333 | ((OPERATION) == FDCAN_EXT_EVT_SYNC_TT_OPERATION)) |
AnnaBridge | 172:65be27845400 | 2334 | #define IS_FDCAN_TT_TIME_MASTER(FUNCTION) (((FUNCTION) == FDCAN_TT_SLAVE ) || \ |
AnnaBridge | 172:65be27845400 | 2335 | ((FUNCTION) == FDCAN_TT_POTENTIAL_MASTER)) |
AnnaBridge | 172:65be27845400 | 2336 | #define IS_FDCAN_TT_EXTERNAL_CLK_SYNC(SYNC) (((SYNC) == FDCAN_TT_EXT_CLK_SYNC_DISABLE) || \ |
AnnaBridge | 172:65be27845400 | 2337 | ((SYNC) == FDCAN_TT_EXT_CLK_SYNC_ENABLE )) |
AnnaBridge | 172:65be27845400 | 2338 | #define IS_FDCAN_TT_GLOBAL_TIME_FILTERING(FILTERING) (((FILTERING) == FDCAN_TT_GLOB_TIME_FILT_DISABLE) || \ |
AnnaBridge | 172:65be27845400 | 2339 | ((FILTERING) == FDCAN_TT_GLOB_TIME_FILT_ENABLE )) |
AnnaBridge | 172:65be27845400 | 2340 | #define IS_FDCAN_TT_AUTO_CLK_CALIBRATION(CALIBRATION) (((CALIBRATION) == FDCAN_TT_AUTO_CLK_CALIB_DISABLE) || \ |
AnnaBridge | 172:65be27845400 | 2341 | ((CALIBRATION) == FDCAN_TT_AUTO_CLK_CALIB_ENABLE )) |
AnnaBridge | 172:65be27845400 | 2342 | #define IS_FDCAN_TT_EVENT_TRIGGER_POLARITY(POLARITY) (((POLARITY) == FDCAN_TT_EVT_TRIG_POL_RISING ) || \ |
AnnaBridge | 172:65be27845400 | 2343 | ((POLARITY) == FDCAN_TT_EVT_TRIG_POL_FALLING)) |
AnnaBridge | 172:65be27845400 | 2344 | #define IS_FDCAN_TT_BASIC_CYCLES_NUMBER(NUMBER) (((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_1 ) || \ |
AnnaBridge | 172:65be27845400 | 2345 | ((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_2 ) || \ |
AnnaBridge | 172:65be27845400 | 2346 | ((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_4 ) || \ |
AnnaBridge | 172:65be27845400 | 2347 | ((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_8 ) || \ |
AnnaBridge | 172:65be27845400 | 2348 | ((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_16) || \ |
AnnaBridge | 172:65be27845400 | 2349 | ((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_32) || \ |
AnnaBridge | 172:65be27845400 | 2350 | ((NUMBER) == FDCAN_TT_CYCLES_PER_MATRIX_64)) |
AnnaBridge | 172:65be27845400 | 2351 | #define IS_FDCAN_TT_CYCLE_START_SYNC(SYNC) (((SYNC) == FDCAN_TT_NO_SYNC_PULSE ) || \ |
AnnaBridge | 172:65be27845400 | 2352 | ((SYNC) == FDCAN_TT_SYNC_BASIC_CYCLE_START) || \ |
AnnaBridge | 172:65be27845400 | 2353 | ((SYNC) == FDCAN_TT_SYNC_MATRIX_START )) |
AnnaBridge | 172:65be27845400 | 2354 | #define IS_FDCAN_TT_TX_ENABLE_WINDOW(NTU) (((NTU) >= 1U) && ((NTU) <= 16U)) |
AnnaBridge | 172:65be27845400 | 2355 | #define IS_FDCAN_TT_TUR_NUMERATOR(NUMERATOR) (((NUMERATOR) >= 0x10000U) && ((NUMERATOR) <= 0x1FFFFU)) |
AnnaBridge | 172:65be27845400 | 2356 | #define IS_FDCAN_TT_TUR_DENOMINATOR(DENOMINATOR) (((DENOMINATOR) >= 0x0001U) && ((DENOMINATOR) <= 0x3FFFU)) |
AnnaBridge | 172:65be27845400 | 2357 | #define IS_FDCAN_TT_TUR_LEVEL_1(NC,DC) ((NC) >= (4U * (DC))) |
AnnaBridge | 172:65be27845400 | 2358 | #define IS_FDCAN_TT_TUR_LEVEL_0_2(NC,DC) ((NC) >= (8U * (DC))) |
AnnaBridge | 172:65be27845400 | 2359 | #define IS_FDCAN_TT_STOP_WATCH_TRIGGER(TRIGGER) (((TRIGGER) == FDCAN_TT_STOP_WATCH_TRIGGER_0) || \ |
AnnaBridge | 172:65be27845400 | 2360 | ((TRIGGER) == FDCAN_TT_STOP_WATCH_TRIGGER_1) || \ |
AnnaBridge | 172:65be27845400 | 2361 | ((TRIGGER) == FDCAN_TT_STOP_WATCH_TRIGGER_2) || \ |
AnnaBridge | 172:65be27845400 | 2362 | ((TRIGGER) == FDCAN_TT_STOP_WATCH_TRIGGER_3)) |
AnnaBridge | 172:65be27845400 | 2363 | #define IS_FDCAN_TT_EVENT_TRIGGER(TRIGGER) (((TRIGGER) == FDCAN_TT_EVENT_TRIGGER_0) || \ |
AnnaBridge | 172:65be27845400 | 2364 | ((TRIGGER) == FDCAN_TT_EVENT_TRIGGER_1) || \ |
AnnaBridge | 172:65be27845400 | 2365 | ((TRIGGER) == FDCAN_TT_EVENT_TRIGGER_2) || \ |
AnnaBridge | 172:65be27845400 | 2366 | ((TRIGGER) == FDCAN_TT_EVENT_TRIGGER_3)) |
AnnaBridge | 172:65be27845400 | 2367 | #define IS_FDCAN_TT_TIME_PRESET(TIME) (((TIME) <= 0xFFFFU) && ((TIME) != 0x8000U)) |
AnnaBridge | 172:65be27845400 | 2368 | #define IS_FDCAN_TT_STOP_WATCH_SOURCE(SOURCE) (((SOURCE) == FDCAN_TT_STOP_WATCH_DISABLED ) || \ |
AnnaBridge | 172:65be27845400 | 2369 | ((SOURCE) == FDCAN_TT_STOP_WATCH_CYCLE_TIME ) || \ |
AnnaBridge | 172:65be27845400 | 2370 | ((SOURCE) == FDCAN_TT_STOP_WATCH_LOCAL_TIME ) || \ |
AnnaBridge | 172:65be27845400 | 2371 | ((SOURCE) == FDCAN_TT_STOP_WATCH_GLOBAL_TIME)) |
AnnaBridge | 172:65be27845400 | 2372 | #define IS_FDCAN_TT_STOP_WATCH_POLARITY(POLARITY) (((POLARITY) == FDCAN_TT_STOP_WATCH_RISING ) || \ |
AnnaBridge | 172:65be27845400 | 2373 | ((POLARITY) == FDCAN_TT_STOP_WATCH_FALLING)) |
AnnaBridge | 172:65be27845400 | 2374 | #define IS_FDCAN_TT_REGISTER_TIME_MARK_SOURCE(SOURCE) (((SOURCE) == FDCAN_TT_REG_TIMEMARK_DIABLED ) || \ |
AnnaBridge | 172:65be27845400 | 2375 | ((SOURCE) == FDCAN_TT_REG_TIMEMARK_CYC_TIME) || \ |
AnnaBridge | 172:65be27845400 | 2376 | ((SOURCE) == FDCAN_TT_REG_TIMEMARK_LOC_TIME) || \ |
AnnaBridge | 172:65be27845400 | 2377 | ((SOURCE) == FDCAN_TT_REG_TIMEMARK_GLO_TIME)) |
AnnaBridge | 172:65be27845400 | 2378 | /** |
AnnaBridge | 172:65be27845400 | 2379 | * @} |
AnnaBridge | 172:65be27845400 | 2380 | */ |
AnnaBridge | 172:65be27845400 | 2381 | |
AnnaBridge | 172:65be27845400 | 2382 | /* Private functions prototypes ----------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 2383 | /** @defgroup FDCAN_Private_Functions_Prototypes FDCAN Private Functions Prototypes |
AnnaBridge | 172:65be27845400 | 2384 | * @{ |
AnnaBridge | 172:65be27845400 | 2385 | */ |
AnnaBridge | 172:65be27845400 | 2386 | |
AnnaBridge | 172:65be27845400 | 2387 | /** |
AnnaBridge | 172:65be27845400 | 2388 | * @} |
AnnaBridge | 172:65be27845400 | 2389 | */ |
AnnaBridge | 172:65be27845400 | 2390 | |
AnnaBridge | 172:65be27845400 | 2391 | /* Private functions ---------------------------------------------------------*/ |
AnnaBridge | 172:65be27845400 | 2392 | /** @defgroup FDCAN_Private_Functions FDCAN Private Functions |
AnnaBridge | 172:65be27845400 | 2393 | * @{ |
AnnaBridge | 172:65be27845400 | 2394 | */ |
AnnaBridge | 172:65be27845400 | 2395 | |
AnnaBridge | 172:65be27845400 | 2396 | /** |
AnnaBridge | 172:65be27845400 | 2397 | * @} |
AnnaBridge | 172:65be27845400 | 2398 | */ |
AnnaBridge | 172:65be27845400 | 2399 | /** |
AnnaBridge | 172:65be27845400 | 2400 | * @} |
AnnaBridge | 172:65be27845400 | 2401 | */ |
AnnaBridge | 172:65be27845400 | 2402 | |
AnnaBridge | 172:65be27845400 | 2403 | /** |
AnnaBridge | 172:65be27845400 | 2404 | * @} |
AnnaBridge | 172:65be27845400 | 2405 | */ |
AnnaBridge | 172:65be27845400 | 2406 | |
AnnaBridge | 172:65be27845400 | 2407 | #ifdef __cplusplus |
AnnaBridge | 172:65be27845400 | 2408 | } |
AnnaBridge | 172:65be27845400 | 2409 | #endif |
AnnaBridge | 172:65be27845400 | 2410 | |
AnnaBridge | 172:65be27845400 | 2411 | #endif /* STM32H7xx_HAL_FDCAN_H */ |
AnnaBridge | 172:65be27845400 | 2412 | |
AnnaBridge | 172:65be27845400 | 2413 | |
AnnaBridge | 172:65be27845400 | 2414 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |