mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Mon Oct 02 15:33:19 2017 +0100
Revision:
174:b96e65c34a4d
This updates the lib to the mbed lib v 152

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 174:b96e65c34a4d 1 /****************************************************************************//**
AnnaBridge 174:b96e65c34a4d 2 * @file i2c.c
AnnaBridge 174:b96e65c34a4d 3 * @version V0.10
AnnaBridge 174:b96e65c34a4d 4 * $Revision: 7 $
AnnaBridge 174:b96e65c34a4d 5 * $Date: 15/06/05 5:04p $
AnnaBridge 174:b96e65c34a4d 6 * @brief NANO100 series I2C driver source file
AnnaBridge 174:b96e65c34a4d 7 *
AnnaBridge 174:b96e65c34a4d 8 * @note
AnnaBridge 174:b96e65c34a4d 9 * Copyright (C) 2014 Nuvoton Technology Corp. All rights reserved.
AnnaBridge 174:b96e65c34a4d 10 *****************************************************************************/
AnnaBridge 174:b96e65c34a4d 11
AnnaBridge 174:b96e65c34a4d 12 #include "Nano100Series.h"
AnnaBridge 174:b96e65c34a4d 13
AnnaBridge 174:b96e65c34a4d 14 /** @addtogroup NANO100_Device_Driver NANO100 Device Driver
AnnaBridge 174:b96e65c34a4d 15 @{
AnnaBridge 174:b96e65c34a4d 16 */
AnnaBridge 174:b96e65c34a4d 17
AnnaBridge 174:b96e65c34a4d 18 /** @addtogroup NANO100_I2C_Driver I2C Driver
AnnaBridge 174:b96e65c34a4d 19 @{
AnnaBridge 174:b96e65c34a4d 20 */
AnnaBridge 174:b96e65c34a4d 21
AnnaBridge 174:b96e65c34a4d 22
AnnaBridge 174:b96e65c34a4d 23 /** @addtogroup NANO100_I2C_EXPORTED_FUNCTIONS I2C Exported Functions
AnnaBridge 174:b96e65c34a4d 24 @{
AnnaBridge 174:b96e65c34a4d 25 */
AnnaBridge 174:b96e65c34a4d 26
AnnaBridge 174:b96e65c34a4d 27 /**
AnnaBridge 174:b96e65c34a4d 28 * @brief This function make I2C module be ready and set the wanted bus clock.
AnnaBridge 174:b96e65c34a4d 29 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 30 * @param[in] u32BusClock is the target bus speed of I2C module.
AnnaBridge 174:b96e65c34a4d 31 * @return Actual I2C bus clock frequency.
AnnaBridge 174:b96e65c34a4d 32 */
AnnaBridge 174:b96e65c34a4d 33 uint32_t I2C_Open(I2C_T *i2c, uint32_t u32BusClock)
AnnaBridge 174:b96e65c34a4d 34 {
AnnaBridge 174:b96e65c34a4d 35 uint32_t u32Div;
AnnaBridge 174:b96e65c34a4d 36
AnnaBridge 174:b96e65c34a4d 37 u32Div = (uint32_t) (((SystemCoreClock * 10)/(u32BusClock * 4) + 5) / 10 - 1); /* Compute proper divider for I2C clock */
AnnaBridge 174:b96e65c34a4d 38 i2c->DIV = u32Div;
AnnaBridge 174:b96e65c34a4d 39
AnnaBridge 174:b96e65c34a4d 40 /* Enable I2C */
AnnaBridge 174:b96e65c34a4d 41 i2c->CON |= I2C_CON_IPEN_Msk;
AnnaBridge 174:b96e65c34a4d 42
AnnaBridge 174:b96e65c34a4d 43 return ( SystemCoreClock / ((u32Div+1)<<2) );
AnnaBridge 174:b96e65c34a4d 44 }
AnnaBridge 174:b96e65c34a4d 45
AnnaBridge 174:b96e65c34a4d 46 /**
AnnaBridge 174:b96e65c34a4d 47 * @brief This function closes the I2C module.
AnnaBridge 174:b96e65c34a4d 48 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 49 * @return none
AnnaBridge 174:b96e65c34a4d 50 */
AnnaBridge 174:b96e65c34a4d 51 void I2C_Close(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 52 {
AnnaBridge 174:b96e65c34a4d 53 /* Reset I2C */
AnnaBridge 174:b96e65c34a4d 54 if((uint32_t)i2c == I2C0_BASE) {
AnnaBridge 174:b96e65c34a4d 55 SYS->IPRST_CTL2 |= SYS_IPRST_CTL2_I2C0_RST_Msk;
AnnaBridge 174:b96e65c34a4d 56 SYS->IPRST_CTL2 &= ~SYS_IPRST_CTL2_I2C0_RST_Msk;
AnnaBridge 174:b96e65c34a4d 57 } else {
AnnaBridge 174:b96e65c34a4d 58 SYS->IPRST_CTL2 |= SYS_IPRST_CTL2_I2C1_RST_Msk;
AnnaBridge 174:b96e65c34a4d 59 SYS->IPRST_CTL2 &= ~SYS_IPRST_CTL2_I2C1_RST_Msk;
AnnaBridge 174:b96e65c34a4d 60 }
AnnaBridge 174:b96e65c34a4d 61
AnnaBridge 174:b96e65c34a4d 62 /* Disable I2C */
AnnaBridge 174:b96e65c34a4d 63 i2c->CON &= ~I2C_CON_IPEN_Msk;
AnnaBridge 174:b96e65c34a4d 64 }
AnnaBridge 174:b96e65c34a4d 65
AnnaBridge 174:b96e65c34a4d 66 /**
AnnaBridge 174:b96e65c34a4d 67 * @brief This function clears the timeout flag.
AnnaBridge 174:b96e65c34a4d 68 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 69 * @return none
AnnaBridge 174:b96e65c34a4d 70 */
AnnaBridge 174:b96e65c34a4d 71 void I2C_ClearTimeoutFlag(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 72 {
AnnaBridge 174:b96e65c34a4d 73 i2c->INTSTS |= I2C_INTSTS_TIF_Msk;
AnnaBridge 174:b96e65c34a4d 74 }
AnnaBridge 174:b96e65c34a4d 75
AnnaBridge 174:b96e65c34a4d 76 /**
AnnaBridge 174:b96e65c34a4d 77 * @brief This function sets the control bit of the I2C module.
AnnaBridge 174:b96e65c34a4d 78 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 79 * @param[in] u8Start sets START bit to I2C module.
AnnaBridge 174:b96e65c34a4d 80 * @param[in] u8Stop sets STOP bit to I2C module.
AnnaBridge 174:b96e65c34a4d 81 * @param[in] u8Si sets SI bit to I2C module.
AnnaBridge 174:b96e65c34a4d 82 * @param[in] u8Ack sets ACK bit to I2C module.
AnnaBridge 174:b96e65c34a4d 83 * @return none
AnnaBridge 174:b96e65c34a4d 84 */
AnnaBridge 174:b96e65c34a4d 85 void I2C_Trigger(I2C_T *i2c, uint8_t u8Start, uint8_t u8Stop, uint8_t u8Si, uint8_t u8Ack)
AnnaBridge 174:b96e65c34a4d 86 {
AnnaBridge 174:b96e65c34a4d 87 uint32_t u32Reg = 0;
AnnaBridge 174:b96e65c34a4d 88 uint32_t u32Val = i2c->CON & ~(I2C_STA | I2C_STO | I2C_AA);
AnnaBridge 174:b96e65c34a4d 89
AnnaBridge 174:b96e65c34a4d 90 if (u8Start)
AnnaBridge 174:b96e65c34a4d 91 u32Reg |= I2C_STA;
AnnaBridge 174:b96e65c34a4d 92 if (u8Stop)
AnnaBridge 174:b96e65c34a4d 93 u32Reg |= I2C_STO;
AnnaBridge 174:b96e65c34a4d 94 if (u8Si)
AnnaBridge 174:b96e65c34a4d 95 u32Reg |= I2C_SI;
AnnaBridge 174:b96e65c34a4d 96 if (u8Ack)
AnnaBridge 174:b96e65c34a4d 97 u32Reg |= I2C_AA;
AnnaBridge 174:b96e65c34a4d 98
AnnaBridge 174:b96e65c34a4d 99 i2c->CON = u32Val | u32Reg;
AnnaBridge 174:b96e65c34a4d 100 }
AnnaBridge 174:b96e65c34a4d 101
AnnaBridge 174:b96e65c34a4d 102 /**
AnnaBridge 174:b96e65c34a4d 103 * @brief This function disables the interrupt of I2C module.
AnnaBridge 174:b96e65c34a4d 104 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 105 * @return none
AnnaBridge 174:b96e65c34a4d 106 */
AnnaBridge 174:b96e65c34a4d 107 void I2C_DisableInt(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 108 {
AnnaBridge 174:b96e65c34a4d 109 i2c->CON &= ~I2C_CON_INTEN_Msk;
AnnaBridge 174:b96e65c34a4d 110 }
AnnaBridge 174:b96e65c34a4d 111
AnnaBridge 174:b96e65c34a4d 112 /**
AnnaBridge 174:b96e65c34a4d 113 * @brief This function enables the interrupt (EI bit) of I2C module.
AnnaBridge 174:b96e65c34a4d 114 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 115 * @return none
AnnaBridge 174:b96e65c34a4d 116 */
AnnaBridge 174:b96e65c34a4d 117 void I2C_EnableInt(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 118 {
AnnaBridge 174:b96e65c34a4d 119 i2c->CON |= I2C_CON_INTEN_Msk;
AnnaBridge 174:b96e65c34a4d 120 }
AnnaBridge 174:b96e65c34a4d 121
AnnaBridge 174:b96e65c34a4d 122 /**
AnnaBridge 174:b96e65c34a4d 123 * @brief This function returns the real bus clock of I2C module.
AnnaBridge 174:b96e65c34a4d 124 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 125 * @return Actual I2C bus clock frequency.
AnnaBridge 174:b96e65c34a4d 126 */
AnnaBridge 174:b96e65c34a4d 127 uint32_t I2C_GetBusClockFreq(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 128 {
AnnaBridge 174:b96e65c34a4d 129 uint32_t u32Divider = i2c->DIV;
AnnaBridge 174:b96e65c34a4d 130
AnnaBridge 174:b96e65c34a4d 131 return ( SystemCoreClock / ((u32Divider+1)<<2) );
AnnaBridge 174:b96e65c34a4d 132 }
AnnaBridge 174:b96e65c34a4d 133
AnnaBridge 174:b96e65c34a4d 134 /**
AnnaBridge 174:b96e65c34a4d 135 * @brief This function sets bus frequency of I2C module.
AnnaBridge 174:b96e65c34a4d 136 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 137 * @param[in] u32BusClock is the target bus speed of I2C module.
AnnaBridge 174:b96e65c34a4d 138 * @return Actual I2C bus clock frequency.
AnnaBridge 174:b96e65c34a4d 139 */
AnnaBridge 174:b96e65c34a4d 140 uint32_t I2C_SetBusClockFreq(I2C_T *i2c, uint32_t u32BusClock)
AnnaBridge 174:b96e65c34a4d 141 {
AnnaBridge 174:b96e65c34a4d 142 uint32_t u32Div;
AnnaBridge 174:b96e65c34a4d 143
AnnaBridge 174:b96e65c34a4d 144 u32Div = (uint32_t) (((SystemCoreClock * 10)/(u32BusClock * 4) + 5) / 10 - 1); /* Compute proper divider for I2C clock */
AnnaBridge 174:b96e65c34a4d 145 i2c->DIV = u32Div;
AnnaBridge 174:b96e65c34a4d 146
AnnaBridge 174:b96e65c34a4d 147 return ( SystemCoreClock / ((u32Div+1)<<2) );
AnnaBridge 174:b96e65c34a4d 148 }
AnnaBridge 174:b96e65c34a4d 149
AnnaBridge 174:b96e65c34a4d 150 /**
AnnaBridge 174:b96e65c34a4d 151 * @brief This function gets the interrupt flag of I2C module.
AnnaBridge 174:b96e65c34a4d 152 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 153 * @return Interrupt flag.
AnnaBridge 174:b96e65c34a4d 154 * @retval 0 Flag is not set.
AnnaBridge 174:b96e65c34a4d 155 * @retval 1 Flag is set.
AnnaBridge 174:b96e65c34a4d 156 */
AnnaBridge 174:b96e65c34a4d 157 uint32_t I2C_GetIntFlag(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 158 {
AnnaBridge 174:b96e65c34a4d 159 return ( (i2c->INTSTS & I2C_INTSTS_INTSTS_Msk) == I2C_INTSTS_INTSTS_Msk ? 1:0 );
AnnaBridge 174:b96e65c34a4d 160 }
AnnaBridge 174:b96e65c34a4d 161
AnnaBridge 174:b96e65c34a4d 162 /**
AnnaBridge 174:b96e65c34a4d 163 * @brief This function clears the interrupt flag of I2C module.
AnnaBridge 174:b96e65c34a4d 164 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 165 * @return none
AnnaBridge 174:b96e65c34a4d 166 */
AnnaBridge 174:b96e65c34a4d 167 void I2C_ClearIntFlag(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 168 {
AnnaBridge 174:b96e65c34a4d 169 i2c->INTSTS |= I2C_INTSTS_INTSTS_Msk;
AnnaBridge 174:b96e65c34a4d 170 }
AnnaBridge 174:b96e65c34a4d 171
AnnaBridge 174:b96e65c34a4d 172 /**
AnnaBridge 174:b96e65c34a4d 173 * @brief This function returns the status of I2C module.
AnnaBridge 174:b96e65c34a4d 174 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 175 * @return I2C status
AnnaBridge 174:b96e65c34a4d 176 */
AnnaBridge 174:b96e65c34a4d 177 uint32_t I2C_GetStatus(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 178 {
AnnaBridge 174:b96e65c34a4d 179 return ( i2c->STATUS );
AnnaBridge 174:b96e65c34a4d 180 }
AnnaBridge 174:b96e65c34a4d 181
AnnaBridge 174:b96e65c34a4d 182 /**
AnnaBridge 174:b96e65c34a4d 183 * @brief This function returns the data stored in data register of I2C module.
AnnaBridge 174:b96e65c34a4d 184 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 185 * @return Data.
AnnaBridge 174:b96e65c34a4d 186 */
AnnaBridge 174:b96e65c34a4d 187 uint32_t I2C_GetData(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 188 {
AnnaBridge 174:b96e65c34a4d 189 return ( i2c->DATA );
AnnaBridge 174:b96e65c34a4d 190 }
AnnaBridge 174:b96e65c34a4d 191
AnnaBridge 174:b96e65c34a4d 192 /**
AnnaBridge 174:b96e65c34a4d 193 * @brief This function writes the data to data register of I2C module.
AnnaBridge 174:b96e65c34a4d 194 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 195 * @param[in] u8Data is the data which will be write to data register of I2C module.
AnnaBridge 174:b96e65c34a4d 196 * @return none
AnnaBridge 174:b96e65c34a4d 197 */
AnnaBridge 174:b96e65c34a4d 198 void I2C_SetData(I2C_T *i2c, uint8_t u8Data)
AnnaBridge 174:b96e65c34a4d 199 {
AnnaBridge 174:b96e65c34a4d 200 i2c->DATA = u8Data;
AnnaBridge 174:b96e65c34a4d 201 }
AnnaBridge 174:b96e65c34a4d 202
AnnaBridge 174:b96e65c34a4d 203 /**
AnnaBridge 174:b96e65c34a4d 204 * @brief Configure slave address and enable GC mode.
AnnaBridge 174:b96e65c34a4d 205 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 206 * @param[in] u8SlaveNo is the set number of salve address.
AnnaBridge 174:b96e65c34a4d 207 * @param[in] u8SlaveAddr is the slave address.
AnnaBridge 174:b96e65c34a4d 208 * @param[in] u8GCMode GC mode enable or not. Valid values are:
AnnaBridge 174:b96e65c34a4d 209 * - \ref I2C_GCMODE_ENABLE
AnnaBridge 174:b96e65c34a4d 210 * - \ref I2C_GCMODE_DISABLE
AnnaBridge 174:b96e65c34a4d 211 * @return none
AnnaBridge 174:b96e65c34a4d 212 */
AnnaBridge 174:b96e65c34a4d 213 void I2C_SetSlaveAddr(I2C_T *i2c, uint8_t u8SlaveNo, uint8_t u8SlaveAddr, uint8_t u8GCMode)
AnnaBridge 174:b96e65c34a4d 214 {
AnnaBridge 174:b96e65c34a4d 215 switch (u8SlaveNo) {
AnnaBridge 174:b96e65c34a4d 216 case 0:
AnnaBridge 174:b96e65c34a4d 217 i2c->SADDR0 = (u8SlaveAddr << 1) | u8GCMode;
AnnaBridge 174:b96e65c34a4d 218 break;
AnnaBridge 174:b96e65c34a4d 219 case 1:
AnnaBridge 174:b96e65c34a4d 220 i2c->SADDR1 = (u8SlaveAddr << 1) | u8GCMode;
AnnaBridge 174:b96e65c34a4d 221 break;
AnnaBridge 174:b96e65c34a4d 222 }
AnnaBridge 174:b96e65c34a4d 223 }
AnnaBridge 174:b96e65c34a4d 224
AnnaBridge 174:b96e65c34a4d 225 /**
AnnaBridge 174:b96e65c34a4d 226 * @brief Configure the mask of slave address. The corresponding address bit is "Don't Care".
AnnaBridge 174:b96e65c34a4d 227 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 228 * @param[in] u8SlaveNo is the set number of salve address.
AnnaBridge 174:b96e65c34a4d 229 * @param[in] u8SlaveAddrMask is the slave address mask.
AnnaBridge 174:b96e65c34a4d 230 * @return none
AnnaBridge 174:b96e65c34a4d 231 */
AnnaBridge 174:b96e65c34a4d 232 void I2C_SetSlaveAddrMask(I2C_T *i2c, uint8_t u8SlaveNo, uint8_t u8SlaveAddrMask)
AnnaBridge 174:b96e65c34a4d 233 {
AnnaBridge 174:b96e65c34a4d 234 switch (u8SlaveNo) {
AnnaBridge 174:b96e65c34a4d 235 case 0:
AnnaBridge 174:b96e65c34a4d 236 i2c->SAMASK0 = u8SlaveAddrMask << 1;
AnnaBridge 174:b96e65c34a4d 237 break;
AnnaBridge 174:b96e65c34a4d 238 case 1:
AnnaBridge 174:b96e65c34a4d 239 i2c->SAMASK1 = u8SlaveAddrMask << 1;
AnnaBridge 174:b96e65c34a4d 240 break;
AnnaBridge 174:b96e65c34a4d 241 }
AnnaBridge 174:b96e65c34a4d 242 }
AnnaBridge 174:b96e65c34a4d 243
AnnaBridge 174:b96e65c34a4d 244 /**
AnnaBridge 174:b96e65c34a4d 245 * @brief This function enables timeout function and configures DIV4 function to support long timeout.
AnnaBridge 174:b96e65c34a4d 246 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 247 * @param[in] u8LongTimeout Enable timeout counter input clock is divide by 4.
AnnaBridge 174:b96e65c34a4d 248 * @return none
AnnaBridge 174:b96e65c34a4d 249 */
AnnaBridge 174:b96e65c34a4d 250 void I2C_EnableTimeout(I2C_T *i2c, uint8_t u8LongTimeout)
AnnaBridge 174:b96e65c34a4d 251 {
AnnaBridge 174:b96e65c34a4d 252 if(u8LongTimeout)
AnnaBridge 174:b96e65c34a4d 253 i2c->TOUT |= I2C_TOUT_DIV4_Msk;
AnnaBridge 174:b96e65c34a4d 254 else
AnnaBridge 174:b96e65c34a4d 255 i2c->TOUT &= ~I2C_TOUT_DIV4_Msk;
AnnaBridge 174:b96e65c34a4d 256
AnnaBridge 174:b96e65c34a4d 257 i2c->TOUT |= I2C_TOUT_TOUTEN_Msk;
AnnaBridge 174:b96e65c34a4d 258 }
AnnaBridge 174:b96e65c34a4d 259
AnnaBridge 174:b96e65c34a4d 260 /**
AnnaBridge 174:b96e65c34a4d 261 * @brief This function disables timeout function.
AnnaBridge 174:b96e65c34a4d 262 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 263 * @return none
AnnaBridge 174:b96e65c34a4d 264 */
AnnaBridge 174:b96e65c34a4d 265 void I2C_DisableTimeout(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 266 {
AnnaBridge 174:b96e65c34a4d 267 i2c->TOUT &= ~I2C_TOUT_TOUTEN_Msk;
AnnaBridge 174:b96e65c34a4d 268 }
AnnaBridge 174:b96e65c34a4d 269
AnnaBridge 174:b96e65c34a4d 270 /**
AnnaBridge 174:b96e65c34a4d 271 * @brief This function enables the wakeup function of I2C module.
AnnaBridge 174:b96e65c34a4d 272 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 273 * @return none
AnnaBridge 174:b96e65c34a4d 274 */
AnnaBridge 174:b96e65c34a4d 275 void I2C_EnableWakeup(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 276 {
AnnaBridge 174:b96e65c34a4d 277 i2c->WKUPCON |= I2C_WKUPCON_WKUPEN_Msk;
AnnaBridge 174:b96e65c34a4d 278 }
AnnaBridge 174:b96e65c34a4d 279
AnnaBridge 174:b96e65c34a4d 280 /**
AnnaBridge 174:b96e65c34a4d 281 * @brief This function disables the wakeup function of I2C module.
AnnaBridge 174:b96e65c34a4d 282 * @param[in] i2c is the base address of I2C module.
AnnaBridge 174:b96e65c34a4d 283 * @return none
AnnaBridge 174:b96e65c34a4d 284 */
AnnaBridge 174:b96e65c34a4d 285 void I2C_DisableWakeup(I2C_T *i2c)
AnnaBridge 174:b96e65c34a4d 286 {
AnnaBridge 174:b96e65c34a4d 287 i2c->WKUPCON &= ~I2C_WKUPCON_WKUPEN_Msk;
AnnaBridge 174:b96e65c34a4d 288 }
AnnaBridge 174:b96e65c34a4d 289
AnnaBridge 174:b96e65c34a4d 290 /*@}*/ /* end of group NANO100_I2C_EXPORTED_FUNCTIONS */
AnnaBridge 174:b96e65c34a4d 291
AnnaBridge 174:b96e65c34a4d 292 /*@}*/ /* end of group NANO100_I2C_Driver */
AnnaBridge 174:b96e65c34a4d 293
AnnaBridge 174:b96e65c34a4d 294 /*@}*/ /* end of group NANO100_Device_Driver */
AnnaBridge 174:b96e65c34a4d 295
AnnaBridge 174:b96e65c34a4d 296 /*** (C) COPYRIGHT 2014 Nuvoton Technology Corp. ***/