mbed SDK library sources

Fork of mbed-src by mbed official

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

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

Committer:
mbed_official
Date:
Thu Jan 30 12:15:05 2014 +0000
Revision:
80:66393a7b209d
Parent:
76:aeb1df146756
Synchronized with git revision dba523f83fe09b7fce11fc1299dd1216e9776359

Full URL: https://github.com/mbedmicro/mbed/commit/dba523f83fe09b7fce11fc1299dd1216e9776359/

Update of I2C, SPI, SLEEP for NUCLEO_F103RB and L152RE

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 76:aeb1df146756 1 /**
mbed_official 76:aeb1df146756 2 ******************************************************************************
mbed_official 76:aeb1df146756 3 * @file stm32l1xx_comp.h
mbed_official 76:aeb1df146756 4 * @author MCD Application Team
mbed_official 80:66393a7b209d 5 * @version V1.3.0
mbed_official 80:66393a7b209d 6 * @date 31-January-2014
mbed_official 76:aeb1df146756 7 * @brief This file contains all the functions prototypes for the COMP firmware
mbed_official 76:aeb1df146756 8 * library.
mbed_official 76:aeb1df146756 9 ******************************************************************************
mbed_official 76:aeb1df146756 10 * @attention
mbed_official 76:aeb1df146756 11 *
mbed_official 80:66393a7b209d 12 * <h2><center>&copy; COPYRIGHT 2014 STMicroelectronics</center></h2>
mbed_official 76:aeb1df146756 13 *
mbed_official 76:aeb1df146756 14 * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
mbed_official 76:aeb1df146756 15 * You may not use this file except in compliance with the License.
mbed_official 76:aeb1df146756 16 * You may obtain a copy of the License at:
mbed_official 76:aeb1df146756 17 *
mbed_official 76:aeb1df146756 18 * http://www.st.com/software_license_agreement_liberty_v2
mbed_official 76:aeb1df146756 19 *
mbed_official 76:aeb1df146756 20 * Unless required by applicable law or agreed to in writing, software
mbed_official 76:aeb1df146756 21 * distributed under the License is distributed on an "AS IS" BASIS,
mbed_official 76:aeb1df146756 22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mbed_official 76:aeb1df146756 23 * See the License for the specific language governing permissions and
mbed_official 76:aeb1df146756 24 * limitations under the License.
mbed_official 76:aeb1df146756 25 *
mbed_official 76:aeb1df146756 26 ******************************************************************************
mbed_official 76:aeb1df146756 27 */
mbed_official 76:aeb1df146756 28
mbed_official 76:aeb1df146756 29 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 76:aeb1df146756 30 #ifndef __STM32L1xx_COMP_H
mbed_official 76:aeb1df146756 31 #define __STM32L1xx_COMP_H
mbed_official 76:aeb1df146756 32
mbed_official 76:aeb1df146756 33 #ifdef __cplusplus
mbed_official 76:aeb1df146756 34 extern "C" {
mbed_official 76:aeb1df146756 35 #endif
mbed_official 76:aeb1df146756 36
mbed_official 76:aeb1df146756 37 /* Includes ------------------------------------------------------------------*/
mbed_official 76:aeb1df146756 38 #include "stm32l1xx.h"
mbed_official 76:aeb1df146756 39
mbed_official 76:aeb1df146756 40 /** @addtogroup STM32L1xx_StdPeriph_Driver
mbed_official 76:aeb1df146756 41 * @{
mbed_official 76:aeb1df146756 42 */
mbed_official 76:aeb1df146756 43
mbed_official 76:aeb1df146756 44 /** @addtogroup COMP
mbed_official 76:aeb1df146756 45 * @{
mbed_official 76:aeb1df146756 46 */
mbed_official 76:aeb1df146756 47
mbed_official 76:aeb1df146756 48 /* Exported types ------------------------------------------------------------*/
mbed_official 76:aeb1df146756 49
mbed_official 76:aeb1df146756 50 /**
mbed_official 76:aeb1df146756 51 * @brief COMP Init structure definition
mbed_official 76:aeb1df146756 52 */
mbed_official 76:aeb1df146756 53
mbed_official 76:aeb1df146756 54 typedef struct
mbed_official 76:aeb1df146756 55 {
mbed_official 76:aeb1df146756 56 uint32_t COMP_Speed; /*!< Defines the speed of comparator 2.
mbed_official 76:aeb1df146756 57 This parameter can be a value of @ref COMP_Speed */
mbed_official 76:aeb1df146756 58 uint32_t COMP_InvertingInput; /*!< Selects the inverting input of the comparator 2.
mbed_official 76:aeb1df146756 59 This parameter can be a value of @ref COMP_InvertingInput */
mbed_official 76:aeb1df146756 60 uint32_t COMP_OutputSelect; /*!< Selects the output redirection of the comparator 2.
mbed_official 76:aeb1df146756 61 This parameter can be a value of @ref COMP_OutputSelect */
mbed_official 76:aeb1df146756 62
mbed_official 76:aeb1df146756 63 }COMP_InitTypeDef;
mbed_official 76:aeb1df146756 64
mbed_official 76:aeb1df146756 65 /* Exported constants --------------------------------------------------------*/
mbed_official 76:aeb1df146756 66
mbed_official 76:aeb1df146756 67 /** @defgroup COMP_Exported_Constants
mbed_official 76:aeb1df146756 68 * @{
mbed_official 76:aeb1df146756 69 */
mbed_official 76:aeb1df146756 70
mbed_official 76:aeb1df146756 71 #define COMP_OutputLevel_High ((uint32_t)0x00000001)
mbed_official 76:aeb1df146756 72 #define COMP_OutputLevel_Low ((uint32_t)0x00000000)
mbed_official 76:aeb1df146756 73
mbed_official 76:aeb1df146756 74 /** @defgroup COMP_Selection
mbed_official 76:aeb1df146756 75 * @{
mbed_official 76:aeb1df146756 76 */
mbed_official 76:aeb1df146756 77
mbed_official 76:aeb1df146756 78 #define COMP_Selection_COMP1 ((uint32_t)0x00000001)
mbed_official 76:aeb1df146756 79 #define COMP_Selection_COMP2 ((uint32_t)0x00000002)
mbed_official 76:aeb1df146756 80
mbed_official 76:aeb1df146756 81 #define IS_COMP_ALL_PERIPH(PERIPH) (((PERIPH) == COMP_Selection_COMP1) || \
mbed_official 76:aeb1df146756 82 ((PERIPH) == COMP_Selection_COMP2))
mbed_official 76:aeb1df146756 83
mbed_official 76:aeb1df146756 84 /**
mbed_official 76:aeb1df146756 85 * @}
mbed_official 76:aeb1df146756 86 */
mbed_official 76:aeb1df146756 87
mbed_official 76:aeb1df146756 88 /** @defgroup COMP_InvertingInput
mbed_official 76:aeb1df146756 89 * @{
mbed_official 76:aeb1df146756 90 */
mbed_official 76:aeb1df146756 91
mbed_official 76:aeb1df146756 92 #define COMP_InvertingInput_None ((uint32_t)0x00000000) /* COMP2 is disabled when this parameter is selected */
mbed_official 76:aeb1df146756 93 #define COMP_InvertingInput_IO ((uint32_t)0x00040000)
mbed_official 76:aeb1df146756 94 #define COMP_InvertingInput_VREFINT ((uint32_t)0x00080000)
mbed_official 76:aeb1df146756 95 #define COMP_InvertingInput_3_4VREFINT ((uint32_t)0x000C0000)
mbed_official 76:aeb1df146756 96 #define COMP_InvertingInput_1_2VREFINT ((uint32_t)0x00100000)
mbed_official 76:aeb1df146756 97 #define COMP_InvertingInput_1_4VREFINT ((uint32_t)0x00140000)
mbed_official 76:aeb1df146756 98 #define COMP_InvertingInput_DAC1 ((uint32_t)0x00180000)
mbed_official 76:aeb1df146756 99 #define COMP_InvertingInput_DAC2 ((uint32_t)0x001C0000)
mbed_official 76:aeb1df146756 100
mbed_official 76:aeb1df146756 101 #define IS_COMP_INVERTING_INPUT(INPUT) (((INPUT) == COMP_InvertingInput_None) || \
mbed_official 76:aeb1df146756 102 ((INPUT) == COMP_InvertingInput_IO) || \
mbed_official 76:aeb1df146756 103 ((INPUT) == COMP_InvertingInput_VREFINT) || \
mbed_official 76:aeb1df146756 104 ((INPUT) == COMP_InvertingInput_3_4VREFINT) || \
mbed_official 76:aeb1df146756 105 ((INPUT) == COMP_InvertingInput_1_2VREFINT) || \
mbed_official 76:aeb1df146756 106 ((INPUT) == COMP_InvertingInput_1_4VREFINT) || \
mbed_official 76:aeb1df146756 107 ((INPUT) == COMP_InvertingInput_DAC1) || \
mbed_official 76:aeb1df146756 108 ((INPUT) == COMP_InvertingInput_DAC2))
mbed_official 76:aeb1df146756 109 /**
mbed_official 76:aeb1df146756 110 * @}
mbed_official 76:aeb1df146756 111 */
mbed_official 76:aeb1df146756 112
mbed_official 76:aeb1df146756 113 /** @defgroup COMP_OutputSelect
mbed_official 76:aeb1df146756 114 * @{
mbed_official 76:aeb1df146756 115 */
mbed_official 76:aeb1df146756 116
mbed_official 76:aeb1df146756 117 #define COMP_OutputSelect_TIM2IC4 ((uint32_t)0x00000000)
mbed_official 76:aeb1df146756 118 #define COMP_OutputSelect_TIM2OCREFCLR ((uint32_t)0x00200000)
mbed_official 76:aeb1df146756 119 #define COMP_OutputSelect_TIM3IC4 ((uint32_t)0x00400000)
mbed_official 76:aeb1df146756 120 #define COMP_OutputSelect_TIM3OCREFCLR ((uint32_t)0x00600000)
mbed_official 76:aeb1df146756 121 #define COMP_OutputSelect_TIM4IC4 ((uint32_t)0x00800000)
mbed_official 76:aeb1df146756 122 #define COMP_OutputSelect_TIM4OCREFCLR ((uint32_t)0x00A00000)
mbed_official 76:aeb1df146756 123 #define COMP_OutputSelect_TIM10IC1 ((uint32_t)0x00C00000)
mbed_official 76:aeb1df146756 124 #define COMP_OutputSelect_None ((uint32_t)0x00E00000)
mbed_official 76:aeb1df146756 125
mbed_official 76:aeb1df146756 126 #define IS_COMP_OUTPUT(OUTPUT) (((OUTPUT) == COMP_OutputSelect_TIM2IC4) || \
mbed_official 76:aeb1df146756 127 ((OUTPUT) == COMP_OutputSelect_TIM2OCREFCLR) || \
mbed_official 76:aeb1df146756 128 ((OUTPUT) == COMP_OutputSelect_TIM3IC4) || \
mbed_official 76:aeb1df146756 129 ((OUTPUT) == COMP_OutputSelect_TIM3OCREFCLR) || \
mbed_official 76:aeb1df146756 130 ((OUTPUT) == COMP_OutputSelect_TIM4IC4) || \
mbed_official 76:aeb1df146756 131 ((OUTPUT) == COMP_OutputSelect_TIM4OCREFCLR) || \
mbed_official 76:aeb1df146756 132 ((OUTPUT) == COMP_OutputSelect_TIM10IC1) || \
mbed_official 76:aeb1df146756 133 ((OUTPUT) == COMP_OutputSelect_None))
mbed_official 76:aeb1df146756 134 /**
mbed_official 76:aeb1df146756 135 * @}
mbed_official 76:aeb1df146756 136 */
mbed_official 76:aeb1df146756 137
mbed_official 76:aeb1df146756 138 /** @defgroup COMP_Speed
mbed_official 76:aeb1df146756 139 * @{
mbed_official 76:aeb1df146756 140 */
mbed_official 76:aeb1df146756 141
mbed_official 76:aeb1df146756 142 #define COMP_Speed_Slow ((uint32_t)0x00000000)
mbed_official 76:aeb1df146756 143 #define COMP_Speed_Fast ((uint32_t)0x00001000)
mbed_official 76:aeb1df146756 144
mbed_official 76:aeb1df146756 145 #define IS_COMP_SPEED(SPEED) (((SPEED) == COMP_Speed_Slow) || \
mbed_official 76:aeb1df146756 146 ((SPEED) == COMP_Speed_Fast))
mbed_official 76:aeb1df146756 147 /**
mbed_official 76:aeb1df146756 148 * @}
mbed_official 76:aeb1df146756 149 */
mbed_official 76:aeb1df146756 150
mbed_official 76:aeb1df146756 151 /**
mbed_official 76:aeb1df146756 152 * @}
mbed_official 76:aeb1df146756 153 */
mbed_official 76:aeb1df146756 154
mbed_official 76:aeb1df146756 155 /* Exported macro ------------------------------------------------------------*/
mbed_official 76:aeb1df146756 156 /* Exported functions ------------------------------------------------------- */
mbed_official 76:aeb1df146756 157
mbed_official 76:aeb1df146756 158 /* Function used to set the COMP configuration to the default reset state ****/
mbed_official 76:aeb1df146756 159 void COMP_DeInit(void);
mbed_official 76:aeb1df146756 160
mbed_official 76:aeb1df146756 161 /* Initialization and Configuration functions *********************************/
mbed_official 76:aeb1df146756 162 void COMP_Init(COMP_InitTypeDef* COMP_InitStruct);
mbed_official 76:aeb1df146756 163 void COMP_Cmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 164 uint8_t COMP_GetOutputLevel(uint32_t COMP_Selection);
mbed_official 76:aeb1df146756 165 void COMP_SW1SwitchConfig(FunctionalState NewState);
mbed_official 76:aeb1df146756 166
mbed_official 76:aeb1df146756 167 /* Window mode control function ***********************************************/
mbed_official 76:aeb1df146756 168 void COMP_WindowCmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 169
mbed_official 76:aeb1df146756 170 /* Internal Reference Voltage (VREFINT) output function ***********************/
mbed_official 76:aeb1df146756 171 void COMP_VrefintOutputCmd(FunctionalState NewState);
mbed_official 76:aeb1df146756 172
mbed_official 76:aeb1df146756 173 #ifdef __cplusplus
mbed_official 76:aeb1df146756 174 }
mbed_official 76:aeb1df146756 175 #endif
mbed_official 76:aeb1df146756 176
mbed_official 76:aeb1df146756 177 #endif /*__STM32L1xx_COMP_H */
mbed_official 76:aeb1df146756 178
mbed_official 76:aeb1df146756 179 /**
mbed_official 76:aeb1df146756 180 * @}
mbed_official 76:aeb1df146756 181 */
mbed_official 76:aeb1df146756 182
mbed_official 76:aeb1df146756 183 /**
mbed_official 76:aeb1df146756 184 * @}
mbed_official 76:aeb1df146756 185 */
mbed_official 76:aeb1df146756 186
mbed_official 76:aeb1df146756 187 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/