pro vyuku PSS v Jecne

Committer:
vladvana
Date:
Sun Sep 24 12:31:52 2017 +0000
Revision:
0:23d1f73bf130
podklady pro cviceni z PSS

Who changed what in which revision?

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