mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

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:
Tue Jun 16 07:45:08 2015 +0100
Revision:
569:18c5cf67e74d
Child:
609:f2ee788e32e7
Synchronized with git revision 1ac6ed51713a39016247449a86708eec8ef431cd

Full URL: https://github.com/mbedmicro/mbed/commit/1ac6ed51713a39016247449a86708eec8ef431cd/

Moved target folder, renamed target to NZ32SC151

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 569:18c5cf67e74d 1 /**
mbed_official 569:18c5cf67e74d 2 ******************************************************************************
mbed_official 569:18c5cf67e74d 3 * @file stm32l1xx.h
mbed_official 569:18c5cf67e74d 4 * @author MCD Application Team
mbed_official 569:18c5cf67e74d 5 * @version V2.0.0
mbed_official 569:18c5cf67e74d 6 * @date 5-September-2014
mbed_official 569:18c5cf67e74d 7 * @brief CMSIS STM32L1xx Device Peripheral Access Layer Header File.
mbed_official 569:18c5cf67e74d 8 *
mbed_official 569:18c5cf67e74d 9 * The file is the unique include file that the application programmer
mbed_official 569:18c5cf67e74d 10 * is using in the C source code, usually in main.c. This file contains:
mbed_official 569:18c5cf67e74d 11 * - Configuration section that allows to select:
mbed_official 569:18c5cf67e74d 12 * - The STM32L1xx device used in the target application
mbed_official 569:18c5cf67e74d 13 * - To use or not the peripheral’s drivers in application code(i.e.
mbed_official 569:18c5cf67e74d 14 * code will be based on direct access to peripheral’s registers
mbed_official 569:18c5cf67e74d 15 * rather than drivers API), this option is controlled by
mbed_official 569:18c5cf67e74d 16 * "#define USE_HAL_DRIVER"
mbed_official 569:18c5cf67e74d 17 *
mbed_official 569:18c5cf67e74d 18 ******************************************************************************
mbed_official 569:18c5cf67e74d 19 * @attention
mbed_official 569:18c5cf67e74d 20 *
mbed_official 569:18c5cf67e74d 21 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
mbed_official 569:18c5cf67e74d 22 *
mbed_official 569:18c5cf67e74d 23 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 569:18c5cf67e74d 24 * are permitted provided that the following conditions are met:
mbed_official 569:18c5cf67e74d 25 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 569:18c5cf67e74d 26 * this list of conditions and the following disclaimer.
mbed_official 569:18c5cf67e74d 27 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 569:18c5cf67e74d 28 * this list of conditions and the following disclaimer in the documentation
mbed_official 569:18c5cf67e74d 29 * and/or other materials provided with the distribution.
mbed_official 569:18c5cf67e74d 30 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 569:18c5cf67e74d 31 * may be used to endorse or promote products derived from this software
mbed_official 569:18c5cf67e74d 32 * without specific prior written permission.
mbed_official 569:18c5cf67e74d 33 *
mbed_official 569:18c5cf67e74d 34 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 569:18c5cf67e74d 35 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 569:18c5cf67e74d 36 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 569:18c5cf67e74d 37 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 569:18c5cf67e74d 38 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 569:18c5cf67e74d 39 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 569:18c5cf67e74d 40 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 569:18c5cf67e74d 41 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 569:18c5cf67e74d 42 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 569:18c5cf67e74d 43 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 569:18c5cf67e74d 44 *
mbed_official 569:18c5cf67e74d 45 ******************************************************************************
mbed_official 569:18c5cf67e74d 46 */
mbed_official 569:18c5cf67e74d 47
mbed_official 569:18c5cf67e74d 48 /** @addtogroup CMSIS
mbed_official 569:18c5cf67e74d 49 * @{
mbed_official 569:18c5cf67e74d 50 */
mbed_official 569:18c5cf67e74d 51
mbed_official 569:18c5cf67e74d 52 /** @addtogroup stm32l1xx
mbed_official 569:18c5cf67e74d 53 * @{
mbed_official 569:18c5cf67e74d 54 */
mbed_official 569:18c5cf67e74d 55
mbed_official 569:18c5cf67e74d 56 #ifndef __STM32L1XX_H
mbed_official 569:18c5cf67e74d 57 #define __STM32L1XX_H
mbed_official 569:18c5cf67e74d 58
mbed_official 569:18c5cf67e74d 59 #ifdef __cplusplus
mbed_official 569:18c5cf67e74d 60 extern "C" {
mbed_official 569:18c5cf67e74d 61 #endif /* __cplusplus */
mbed_official 569:18c5cf67e74d 62
mbed_official 569:18c5cf67e74d 63 /** @addtogroup Library_configuration_section
mbed_official 569:18c5cf67e74d 64 * @{
mbed_official 569:18c5cf67e74d 65 */
mbed_official 569:18c5cf67e74d 66
mbed_official 569:18c5cf67e74d 67 //MODTRONIX specific, provide place for adding global define. Alternative to adding them in IDE project properties.
mbed_official 569:18c5cf67e74d 68 //Add project defines here, or add them to your toolchain compiler preprocessor
mbed_official 569:18c5cf67e74d 69 #if !defined (HSE_VALUE)
mbed_official 569:18c5cf67e74d 70 #define HSE_VALUE ((uint32_t)16000000) /*!< Value of the External oscillator in Hz */
mbed_official 569:18c5cf67e74d 71 #endif
mbed_official 569:18c5cf67e74d 72
mbed_official 569:18c5cf67e74d 73 //Defines what ports to use for default serial port.
mbed_official 569:18c5cf67e74d 74 //0 = B10/B11
mbed_official 569:18c5cf67e74d 75 //1 = A2/A3
mbed_official 569:18c5cf67e74d 76 #if !defined (MX_DEFAULT_SERIAL_PINS)
mbed_official 569:18c5cf67e74d 77 #define MX_DEFAULT_SERIAL_PINS 0 /*!< Use B10/B11 for default serial port, in stead of A2/A3 */
mbed_official 569:18c5cf67e74d 78 #endif
mbed_official 569:18c5cf67e74d 79
mbed_official 569:18c5cf67e74d 80
mbed_official 569:18c5cf67e74d 81 /* Uncomment the line below according to the target STM32L device used in your
mbed_official 569:18c5cf67e74d 82 application
mbed_official 569:18c5cf67e74d 83 */
mbed_official 569:18c5cf67e74d 84
mbed_official 569:18c5cf67e74d 85 #if !defined (STM32L100xB) && !defined (STM32L100xBA) && !defined (STM32L100xC) && \
mbed_official 569:18c5cf67e74d 86 !defined (STM32L151xB) && !defined (STM32L151xBA) && !defined (STM32L151xC) && !defined (STM32L151xCA) && !defined (STM32L151xD) && !defined (STM32L151xE) && \
mbed_official 569:18c5cf67e74d 87 !defined (STM32L152xB) && !defined (STM32L152xBA) && !defined (STM32L152xC) && !defined (STM32L152xCA) && !defined (STM32L152xD) && !defined (STM32L152xE) && \
mbed_official 569:18c5cf67e74d 88 !defined (STM32L162xC) && !defined (STM32L162xCA) && !defined (STM32L162xD) && !defined (STM32L162xE)
mbed_official 569:18c5cf67e74d 89 /* #define STM32L100xB */ /*!< STM32L100C6, STM32L100R and STM32L100RB Devices */
mbed_official 569:18c5cf67e74d 90 /* #define STM32L100xBA */ /*!< STM32L100C6-A, STM32L100R8-A and STM32L100RB-A Devices */
mbed_official 569:18c5cf67e74d 91 /* #define STM32L100xC */ /*!< STM32L100RC Devices */
mbed_official 569:18c5cf67e74d 92 /* #define STM32L151xB */ /*!< STM32L151C6, STM32L151R6, STM32L151C8, STM32L151R8, STM32L151V8, STM32L151CB, STM32L151RB and STM32L151VB */
mbed_official 569:18c5cf67e74d 93 /* #define STM32L151xBA */ /*!< STM32L151C6-A, STM32L151R6-A, STM32L151C8-A, STM32L151R8-A, STM32L151V8-A, STM32L151CB-A, STM32L151RB-A and STM32L151VB-A */
mbed_official 569:18c5cf67e74d 94 #define STM32L151xC /*!< STM32L151CC, STM32L151UC, STM32L151RC and STM32L151VC */
mbed_official 569:18c5cf67e74d 95 /* #define STM32L151xCA */ /*!< STM32L151RC-A, STM32L151VC-A, STM32L151QC and STM32L151ZC */
mbed_official 569:18c5cf67e74d 96 /* #define STM32L151xD */ /*!< STM32L151QD, STM32L151RD, STM32L151VD & STM32L151ZD */
mbed_official 569:18c5cf67e74d 97 /* #define STM32L151xE */ /*!< STM32L151QE, STM32L151RE, STM32L151VE and STM32L151ZE */
mbed_official 569:18c5cf67e74d 98 /* #define STM32L152xB */ /*!< STM32L152C6, STM32L152R6, STM32L152C8, STM32L152R8, STM32L152V8, STM32L152CB, STM32L152RB and STM32L152VB */
mbed_official 569:18c5cf67e74d 99 /* #define STM32L152xBA */ /*!< STM32L152C6-A, STM32L152R6-A, STM32L152C8-A, STM32L152R8-A, STM32L152V8-A, STM32L152CB-A, STM32L152RB-A and STM32L152VB-A */
mbed_official 569:18c5cf67e74d 100 /* #define STM32L152xC */ /*!< STM32L152CC, STM32L152UC, STM32L152RC and STM32L152VC */
mbed_official 569:18c5cf67e74d 101 /* #define STM32L152xCA */ /*!< STM32L152RC-A, STM32L152VC-A, STM32L152QC and STM32L152ZC */
mbed_official 569:18c5cf67e74d 102 /* #define STM32L152xD */ /*!< STM32L152QD, STM32L152RD, STM32L152VD and STM32L152ZD */
mbed_official 569:18c5cf67e74d 103 /* #define STM32L152xE */ /*!< STM32L152QE, STM32L152RE, STM32L152VE and STM32L152ZE */
mbed_official 569:18c5cf67e74d 104 /* #define STM32L162xC */ /*!< STM32L162RC and STM32L162VC */
mbed_official 569:18c5cf67e74d 105 /* #define STM32L162xCA */ /*!< STM32L162RC-A, STM32L162VC-A, STM32L162QC and STM32L162ZC */
mbed_official 569:18c5cf67e74d 106 /* #define STM32L162xD */ /*!< STM32L162QD, STM32L162RD, STM32L162VD and STM32L162ZD */
mbed_official 569:18c5cf67e74d 107 /* #define STM32L162xE */ /*!< STM32L162RE, STM32L162VE and STM32L162ZE */
mbed_official 569:18c5cf67e74d 108 #endif
mbed_official 569:18c5cf67e74d 109
mbed_official 569:18c5cf67e74d 110 /* Tip: To avoid modifying this file each time you need to switch between these
mbed_official 569:18c5cf67e74d 111 devices, you can define the device in your toolchain compiler preprocessor.
mbed_official 569:18c5cf67e74d 112 */
mbed_official 569:18c5cf67e74d 113
mbed_official 569:18c5cf67e74d 114 #if !defined (USE_HAL_DRIVER)
mbed_official 569:18c5cf67e74d 115 /**
mbed_official 569:18c5cf67e74d 116 * @brief Comment the line below if you will not use the peripherals drivers.
mbed_official 569:18c5cf67e74d 117 In this case, these drivers will not be included and the application code will
mbed_official 569:18c5cf67e74d 118 be based on direct access to peripherals registers
mbed_official 569:18c5cf67e74d 119 */
mbed_official 569:18c5cf67e74d 120 #define USE_HAL_DRIVER
mbed_official 569:18c5cf67e74d 121 #endif /* USE_HAL_DRIVER */
mbed_official 569:18c5cf67e74d 122
mbed_official 569:18c5cf67e74d 123 /**
mbed_official 569:18c5cf67e74d 124 * @brief CMSIS Device version number V2.0.0
mbed_official 569:18c5cf67e74d 125 */
mbed_official 569:18c5cf67e74d 126 #define __STM32L1xx_CMSIS_DEVICE_VERSION_MAIN (0x02) /*!< [31:24] main version */
mbed_official 569:18c5cf67e74d 127 #define __STM32L1xx_CMSIS_DEVICE_VERSION_SUB1 (0x00) /*!< [23:16] sub1 version */
mbed_official 569:18c5cf67e74d 128 #define __STM32L1xx_CMSIS_DEVICE_VERSION_SUB2 (0x00) /*!< [15:8] sub2 version */
mbed_official 569:18c5cf67e74d 129 #define __STM32L1xx_CMSIS_DEVICE_VERSION_RC (0x00) /*!< [7:0] release candidate */
mbed_official 569:18c5cf67e74d 130 #define __STM32L1xx_CMSIS_DEVICE_VERSION ((__CMSIS_DEVICE_VERSION_MAIN << 24)\
mbed_official 569:18c5cf67e74d 131 |(__CMSIS_DEVICE_HAL_VERSION_SUB1 << 16)\
mbed_official 569:18c5cf67e74d 132 |(__CMSIS_DEVICE_HAL_VERSION_SUB2 << 8 )\
mbed_official 569:18c5cf67e74d 133 |(__CMSIS_DEVICE_HAL_VERSION_RC))
mbed_official 569:18c5cf67e74d 134
mbed_official 569:18c5cf67e74d 135 /**
mbed_official 569:18c5cf67e74d 136 * @}
mbed_official 569:18c5cf67e74d 137 */
mbed_official 569:18c5cf67e74d 138
mbed_official 569:18c5cf67e74d 139 /** @addtogroup Device_Included
mbed_official 569:18c5cf67e74d 140 * @{
mbed_official 569:18c5cf67e74d 141 */
mbed_official 569:18c5cf67e74d 142
mbed_official 569:18c5cf67e74d 143 #if defined(STM32L100xB)
mbed_official 569:18c5cf67e74d 144 #include "stm32l100xb.h"
mbed_official 569:18c5cf67e74d 145 #elif defined(STM32L100xBA)
mbed_official 569:18c5cf67e74d 146 #include "stm32l100xba.h"
mbed_official 569:18c5cf67e74d 147 #elif defined(STM32L100xC)
mbed_official 569:18c5cf67e74d 148 #include "stm32l100xc.h"
mbed_official 569:18c5cf67e74d 149 #elif defined(STM32L151xB)
mbed_official 569:18c5cf67e74d 150 #include "stm32l151xb.h"
mbed_official 569:18c5cf67e74d 151 #elif defined(STM32L151xBA)
mbed_official 569:18c5cf67e74d 152 #include "stm32l151xba.h"
mbed_official 569:18c5cf67e74d 153 #elif defined(STM32L151xC)
mbed_official 569:18c5cf67e74d 154 #include "stm32l151xc.h"
mbed_official 569:18c5cf67e74d 155 #elif defined(STM32L151xCA)
mbed_official 569:18c5cf67e74d 156 #include "stm32l151xca.h"
mbed_official 569:18c5cf67e74d 157 #elif defined(STM32L151xD)
mbed_official 569:18c5cf67e74d 158 #include "stm32l151xd.h"
mbed_official 569:18c5cf67e74d 159 #elif defined(STM32L151xE)
mbed_official 569:18c5cf67e74d 160 #include "stm32l151xe.h"
mbed_official 569:18c5cf67e74d 161 #elif defined(STM32L152xB)
mbed_official 569:18c5cf67e74d 162 #include "stm32l152xb.h"
mbed_official 569:18c5cf67e74d 163 #elif defined(STM32L152xBA)
mbed_official 569:18c5cf67e74d 164 #include "stm32l152xba.h"
mbed_official 569:18c5cf67e74d 165 #elif defined(STM32L152xC)
mbed_official 569:18c5cf67e74d 166 #include "stm32l152xc.h"
mbed_official 569:18c5cf67e74d 167 #elif defined(STM32L152xCA)
mbed_official 569:18c5cf67e74d 168 #include "stm32l152xca.h"
mbed_official 569:18c5cf67e74d 169 #elif defined(STM32L152xD)
mbed_official 569:18c5cf67e74d 170 #include "stm32l152xd.h"
mbed_official 569:18c5cf67e74d 171 #elif defined(STM32L152xE)
mbed_official 569:18c5cf67e74d 172 #include "stm32l152xe.h"
mbed_official 569:18c5cf67e74d 173 #elif defined(STM32L162xC)
mbed_official 569:18c5cf67e74d 174 #include "stm32l162xc.h"
mbed_official 569:18c5cf67e74d 175 #elif defined(STM32L162xCA)
mbed_official 569:18c5cf67e74d 176 #include "stm32l162xca.h"
mbed_official 569:18c5cf67e74d 177 #elif defined(STM32L162xD)
mbed_official 569:18c5cf67e74d 178 #include "stm32l162xd.h"
mbed_official 569:18c5cf67e74d 179 #elif defined(STM32L162xE)
mbed_official 569:18c5cf67e74d 180 #include "stm32l162xe.h"
mbed_official 569:18c5cf67e74d 181 #else
mbed_official 569:18c5cf67e74d 182 #error "Please select first the target STM32L1xx device used in your application (in stm32l1xx.h file)"
mbed_official 569:18c5cf67e74d 183 #endif
mbed_official 569:18c5cf67e74d 184
mbed_official 569:18c5cf67e74d 185 /**
mbed_official 569:18c5cf67e74d 186 * @}
mbed_official 569:18c5cf67e74d 187 */
mbed_official 569:18c5cf67e74d 188
mbed_official 569:18c5cf67e74d 189 /** @addtogroup Exported_types
mbed_official 569:18c5cf67e74d 190 * @{
mbed_official 569:18c5cf67e74d 191 */
mbed_official 569:18c5cf67e74d 192 typedef enum
mbed_official 569:18c5cf67e74d 193 {
mbed_official 569:18c5cf67e74d 194 RESET = 0,
mbed_official 569:18c5cf67e74d 195 SET = !RESET
mbed_official 569:18c5cf67e74d 196 } FlagStatus, ITStatus;
mbed_official 569:18c5cf67e74d 197
mbed_official 569:18c5cf67e74d 198 typedef enum
mbed_official 569:18c5cf67e74d 199 {
mbed_official 569:18c5cf67e74d 200 DISABLE = 0,
mbed_official 569:18c5cf67e74d 201 ENABLE = !DISABLE
mbed_official 569:18c5cf67e74d 202 } FunctionalState;
mbed_official 569:18c5cf67e74d 203 #define IS_FUNCTIONAL_STATE(STATE) (((STATE) == DISABLE) || ((STATE) == ENABLE))
mbed_official 569:18c5cf67e74d 204
mbed_official 569:18c5cf67e74d 205 typedef enum
mbed_official 569:18c5cf67e74d 206 {
mbed_official 569:18c5cf67e74d 207 ERROR = 0,
mbed_official 569:18c5cf67e74d 208 SUCCESS = !ERROR
mbed_official 569:18c5cf67e74d 209 } ErrorStatus;
mbed_official 569:18c5cf67e74d 210
mbed_official 569:18c5cf67e74d 211 /**
mbed_official 569:18c5cf67e74d 212 * @}
mbed_official 569:18c5cf67e74d 213 */
mbed_official 569:18c5cf67e74d 214
mbed_official 569:18c5cf67e74d 215
mbed_official 569:18c5cf67e74d 216 /** @addtogroup Exported_macros
mbed_official 569:18c5cf67e74d 217 * @{
mbed_official 569:18c5cf67e74d 218 */
mbed_official 569:18c5cf67e74d 219 #define SET_BIT(REG, BIT) ((REG) |= (BIT))
mbed_official 569:18c5cf67e74d 220
mbed_official 569:18c5cf67e74d 221 #define CLEAR_BIT(REG, BIT) ((REG) &= ~(BIT))
mbed_official 569:18c5cf67e74d 222
mbed_official 569:18c5cf67e74d 223 #define READ_BIT(REG, BIT) ((REG) & (BIT))
mbed_official 569:18c5cf67e74d 224
mbed_official 569:18c5cf67e74d 225 #define CLEAR_REG(REG) ((REG) = (0x0))
mbed_official 569:18c5cf67e74d 226
mbed_official 569:18c5cf67e74d 227 #define WRITE_REG(REG, VAL) ((REG) = (VAL))
mbed_official 569:18c5cf67e74d 228
mbed_official 569:18c5cf67e74d 229 #define READ_REG(REG) ((REG))
mbed_official 569:18c5cf67e74d 230
mbed_official 569:18c5cf67e74d 231 #define MODIFY_REG(REG, CLEARMASK, SETMASK) WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK)))
mbed_official 569:18c5cf67e74d 232
mbed_official 569:18c5cf67e74d 233 #define POSITION_VAL(VAL) (__CLZ(__RBIT(VAL)))
mbed_official 569:18c5cf67e74d 234
mbed_official 569:18c5cf67e74d 235
mbed_official 569:18c5cf67e74d 236 /**
mbed_official 569:18c5cf67e74d 237 * @}
mbed_official 569:18c5cf67e74d 238 */
mbed_official 569:18c5cf67e74d 239
mbed_official 569:18c5cf67e74d 240 #if defined (USE_HAL_DRIVER)
mbed_official 569:18c5cf67e74d 241 #include "stm32l1xx_hal.h"
mbed_official 569:18c5cf67e74d 242 #endif /* USE_HAL_DRIVER */
mbed_official 569:18c5cf67e74d 243
mbed_official 569:18c5cf67e74d 244
mbed_official 569:18c5cf67e74d 245 #ifdef __cplusplus
mbed_official 569:18c5cf67e74d 246 }
mbed_official 569:18c5cf67e74d 247 #endif /* __cplusplus */
mbed_official 569:18c5cf67e74d 248
mbed_official 569:18c5cf67e74d 249 #endif /* __STM32L1xx_H */
mbed_official 569:18c5cf67e74d 250 /**
mbed_official 569:18c5cf67e74d 251 * @}
mbed_official 569:18c5cf67e74d 252 */
mbed_official 569:18c5cf67e74d 253
mbed_official 569:18c5cf67e74d 254 /**
mbed_official 569:18c5cf67e74d 255 * @}
mbed_official 569:18c5cf67e74d 256 */
mbed_official 569:18c5cf67e74d 257
mbed_official 569:18c5cf67e74d 258
mbed_official 569:18c5cf67e74d 259
mbed_official 569:18c5cf67e74d 260
mbed_official 569:18c5cf67e74d 261 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/