The official mbed C/C SDK provides the software platform and libraries to build your applications.

Fork of mbed by mbed official

Committer:
Mikchel
Date:
Sun May 03 16:04:42 2015 +0000
Revision:
99:7f6c6de930c0
Parent:
96:487b796308b0
12

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 96:487b796308b0 1 /**
Kojto 96:487b796308b0 2 ******************************************************************************
Kojto 96:487b796308b0 3 * @file stm32f1xx_hal_can_ex.h
Kojto 96:487b796308b0 4 * @author MCD Application Team
Kojto 96:487b796308b0 5 * @version V1.0.0
Kojto 96:487b796308b0 6 * @date 15-December-2014
Kojto 96:487b796308b0 7 * @brief Header file of CAN HAL Extension module.
Kojto 96:487b796308b0 8 ******************************************************************************
Kojto 96:487b796308b0 9 * @attention
Kojto 96:487b796308b0 10 *
Kojto 96:487b796308b0 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
Kojto 96:487b796308b0 12 *
Kojto 96:487b796308b0 13 * Redistribution and use in source and binary forms, with or without modification,
Kojto 96:487b796308b0 14 * are permitted provided that the following conditions are met:
Kojto 96:487b796308b0 15 * 1. Redistributions of source code must retain the above copyright notice,
Kojto 96:487b796308b0 16 * this list of conditions and the following disclaimer.
Kojto 96:487b796308b0 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
Kojto 96:487b796308b0 18 * this list of conditions and the following disclaimer in the documentation
Kojto 96:487b796308b0 19 * and/or other materials provided with the distribution.
Kojto 96:487b796308b0 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Kojto 96:487b796308b0 21 * may be used to endorse or promote products derived from this software
Kojto 96:487b796308b0 22 * without specific prior written permission.
Kojto 96:487b796308b0 23 *
Kojto 96:487b796308b0 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Kojto 96:487b796308b0 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Kojto 96:487b796308b0 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Kojto 96:487b796308b0 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Kojto 96:487b796308b0 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Kojto 96:487b796308b0 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Kojto 96:487b796308b0 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Kojto 96:487b796308b0 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Kojto 96:487b796308b0 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Kojto 96:487b796308b0 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Kojto 96:487b796308b0 34 *
Kojto 96:487b796308b0 35 ******************************************************************************
Kojto 96:487b796308b0 36 */
Kojto 96:487b796308b0 37
Kojto 96:487b796308b0 38 /* Define to prevent recursive inclusion -------------------------------------*/
Kojto 96:487b796308b0 39 #ifndef __STM32F1xx_HAL_CAN_EX_H
Kojto 96:487b796308b0 40 #define __STM32F1xx_HAL_CAN_EX_H
Kojto 96:487b796308b0 41
Kojto 96:487b796308b0 42 #ifdef __cplusplus
Kojto 96:487b796308b0 43 extern "C" {
Kojto 96:487b796308b0 44 #endif
Kojto 96:487b796308b0 45
Kojto 96:487b796308b0 46 #if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE) || \
Kojto 96:487b796308b0 47 defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC)
Kojto 96:487b796308b0 48
Kojto 96:487b796308b0 49 /* Includes ------------------------------------------------------------------*/
Kojto 96:487b796308b0 50 #include "stm32f1xx_hal_def.h"
Kojto 96:487b796308b0 51
Kojto 96:487b796308b0 52 /** @addtogroup STM32F1xx_HAL_Driver
Kojto 96:487b796308b0 53 * @{
Kojto 96:487b796308b0 54 */
Kojto 96:487b796308b0 55
Kojto 96:487b796308b0 56 /** @defgroup CANEx CANEx
Kojto 96:487b796308b0 57 * @{
Kojto 96:487b796308b0 58 */
Kojto 96:487b796308b0 59
Kojto 96:487b796308b0 60 /* Exported types ------------------------------------------------------------*/
Kojto 96:487b796308b0 61
Kojto 96:487b796308b0 62 /**
Kojto 96:487b796308b0 63 * @brief CAN filter configuration structure definition
Kojto 96:487b796308b0 64 */
Kojto 96:487b796308b0 65 /* CAN filter banks differences over STM32F1 devices: */
Kojto 96:487b796308b0 66 /* - STM32F1 Connectivity line: 28 filter banks shared between CAN1 and CAN2 */
Kojto 96:487b796308b0 67 /* - Other STM32F10x devices: 14 filter banks */
Kojto 96:487b796308b0 68
Kojto 96:487b796308b0 69 typedef struct
Kojto 96:487b796308b0 70 {
Kojto 96:487b796308b0 71 uint32_t FilterIdHigh; /*!< Specifies the filter identification number (MSBs for a 32-bit
Kojto 96:487b796308b0 72 configuration, first one for a 16-bit configuration).
Kojto 96:487b796308b0 73 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
Kojto 96:487b796308b0 74
Kojto 96:487b796308b0 75 uint32_t FilterIdLow; /*!< Specifies the filter identification number (LSBs for a 32-bit
Kojto 96:487b796308b0 76 configuration, second one for a 16-bit configuration).
Kojto 96:487b796308b0 77 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
Kojto 96:487b796308b0 78
Kojto 96:487b796308b0 79 uint32_t FilterMaskIdHigh; /*!< Specifies the filter mask number or identification number,
Kojto 96:487b796308b0 80 according to the mode (MSBs for a 32-bit configuration,
Kojto 96:487b796308b0 81 first one for a 16-bit configuration).
Kojto 96:487b796308b0 82 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
Kojto 96:487b796308b0 83
Kojto 96:487b796308b0 84 uint32_t FilterMaskIdLow; /*!< Specifies the filter mask number or identification number,
Kojto 96:487b796308b0 85 according to the mode (LSBs for a 32-bit configuration,
Kojto 96:487b796308b0 86 second one for a 16-bit configuration).
Kojto 96:487b796308b0 87 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
Kojto 96:487b796308b0 88
Kojto 96:487b796308b0 89 uint32_t FilterFIFOAssignment; /*!< Specifies the FIFO (0 or 1) which will be assigned to the filter.
Kojto 96:487b796308b0 90 This parameter can be a value of @ref CAN_filter_FIFO */
Kojto 96:487b796308b0 91 #if defined(STM32F105xC) || defined(STM32F107xC)
Kojto 96:487b796308b0 92 uint32_t FilterNumber; /*!< Specifies the filter which will be initialized.
Kojto 96:487b796308b0 93 This parameter must be a number between Min_Data = 0 and Max_Data = 27. */
Kojto 96:487b796308b0 94 #else
Kojto 96:487b796308b0 95 uint32_t FilterNumber; /*!< Specifies the filter which will be initialized.
Kojto 96:487b796308b0 96 This parameter must be a number between Min_Data = 0 and Max_Data = 13. */
Kojto 96:487b796308b0 97 #endif /* STM32F105xC || STM32F107xC */
Kojto 96:487b796308b0 98 uint32_t FilterMode; /*!< Specifies the filter mode to be initialized.
Kojto 96:487b796308b0 99 This parameter can be a value of @ref CAN_filter_mode */
Kojto 96:487b796308b0 100
Kojto 96:487b796308b0 101 uint32_t FilterScale; /*!< Specifies the filter scale.
Kojto 96:487b796308b0 102 This parameter can be a value of @ref CAN_filter_scale */
Kojto 96:487b796308b0 103
Kojto 96:487b796308b0 104 uint32_t FilterActivation; /*!< Enable or disable the filter.
Kojto 96:487b796308b0 105 This parameter can be set to ENABLE or DISABLE. */
Kojto 96:487b796308b0 106
Kojto 96:487b796308b0 107 uint32_t BankNumber; /*!< Select the start slave bank filter
Kojto 96:487b796308b0 108 This parameter must be a number between Min_Data = 0 and Max_Data = 28. */
Kojto 96:487b796308b0 109
Kojto 96:487b796308b0 110 }CAN_FilterConfTypeDef;
Kojto 96:487b796308b0 111
Kojto 96:487b796308b0 112 /* Exported constants --------------------------------------------------------*/
Kojto 96:487b796308b0 113 /* Exported macro ------------------------------------------------------------*/
Kojto 96:487b796308b0 114 /* Private macro -------------------------------------------------------------*/
Kojto 96:487b796308b0 115
Kojto 96:487b796308b0 116 /** @defgroup CANEx_Private_Macros CAN Extended Private Macros
Kojto 96:487b796308b0 117 * @{
Kojto 96:487b796308b0 118 */
Kojto 96:487b796308b0 119 #if defined(STM32F105xC) || defined(STM32F107xC)
Kojto 96:487b796308b0 120 #define IS_CAN_FILTER_NUMBER(NUMBER) ((NUMBER) <= 27)
Kojto 96:487b796308b0 121 #else
Kojto 96:487b796308b0 122 #define IS_CAN_FILTER_NUMBER(NUMBER) ((NUMBER) <= 13)
Kojto 96:487b796308b0 123 #endif /* STM32F105xC || STM32F107xC */
Kojto 96:487b796308b0 124
Kojto 96:487b796308b0 125 /**
Kojto 96:487b796308b0 126 * @}
Kojto 96:487b796308b0 127 */
Kojto 96:487b796308b0 128
Kojto 96:487b796308b0 129
Kojto 96:487b796308b0 130 /**
Kojto 96:487b796308b0 131 * @}
Kojto 96:487b796308b0 132 */
Kojto 96:487b796308b0 133
Kojto 96:487b796308b0 134 /**
Kojto 96:487b796308b0 135 * @}
Kojto 96:487b796308b0 136 */
Kojto 96:487b796308b0 137
Kojto 96:487b796308b0 138 #endif /* STM32F103x6) || STM32F103xB || STM32F103xE || */
Kojto 96:487b796308b0 139 /* STM32F103xG) || STM32F105xC || STM32F107xC */
Kojto 96:487b796308b0 140
Kojto 96:487b796308b0 141 #ifdef __cplusplus
Kojto 96:487b796308b0 142 }
Kojto 96:487b796308b0 143 #endif
Kojto 96:487b796308b0 144
Kojto 96:487b796308b0 145 #endif /* __STM32F1xx_HAL_CAN_EX_H */
Kojto 96:487b796308b0 146
Kojto 96:487b796308b0 147 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/