Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-src by
Revision 247:135e3186a638, committed 2014-07-01
- Comitter:
- mbed_official
- Date:
- Tue Jul 01 15:00:09 2014 +0100
- Parent:
- 246:c22b0f22a58f
- Child:
- 248:0df67d8046d9
- Commit message:
- Synchronized with git revision 4f86d397190b9d18f22b4a189573d65b970f3662
Full URL: https://github.com/mbedmicro/mbed/commit/4f86d397190b9d18f22b4a189573d65b970f3662/
[NUCLEOs] enhance I2C API to make it work with EEPROM
Changed in this revision
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F030R8/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -178,8 +178,6 @@
int timeout;
int value;
- if (length == 0) return 0;
-
// Configure slave address, nbytes, reload, end mode and start or stop generation
I2C_TransferHandling(i2c, address, length, I2C_SoftEnd_Mode, I2C_Generate_Start_Read);
@@ -192,7 +190,7 @@
timeout = FLAG_TIMEOUT;
while (!I2C_GetFlagStatus(i2c, I2C_FLAG_TC)) {
timeout--;
- if (timeout == 0) return 0;
+ if (timeout == 0) return -1;
}
if (stop) i2c_stop(obj);
@@ -205,8 +203,6 @@
int timeout;
int count;
- if (length == 0) return 0;
-
// Configure slave address, nbytes, reload, end mode and start generation
I2C_TransferHandling(i2c, address, length, I2C_SoftEnd_Mode, I2C_Generate_Start_Write);
@@ -218,7 +214,7 @@
timeout = FLAG_TIMEOUT;
while (!I2C_GetFlagStatus(i2c, I2C_FLAG_TC)) {
timeout--;
- if (timeout == 0) return 0;
+ if (timeout == 0) return -1;
}
if (stop) i2c_stop(obj);
@@ -236,7 +232,7 @@
while (I2C_GetFlagStatus(i2c, I2C_ISR_RXNE) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -159,8 +159,6 @@
int count;
int value;
- if (length == 0) return 0;
-
/* update CR2 register */
i2c->CR2 = (i2c->CR2 & (uint32_t)~((uint32_t)(I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN | I2C_CR2_START | I2C_CR2_STOP)))
| (uint32_t)(((uint32_t)address & I2C_CR2_SADD) | (((uint32_t)length << 16) & I2C_CR2_NBYTES) | (uint32_t)I2C_SOFTEND_MODE | (uint32_t)I2C_GENERATE_START_READ);
@@ -176,7 +174,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TC) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
__HAL_I2C_CLEAR_FLAG(&I2cHandle, I2C_FLAG_TC);
@@ -189,7 +187,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
/* Clear STOP Flag */
@@ -205,8 +203,6 @@
int timeout;
int count;
- if (length == 0) return 0;
-
/* update CR2 register */
i2c->CR2 = (i2c->CR2 & (uint32_t)~((uint32_t)(I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN | I2C_CR2_START | I2C_CR2_STOP)))
| (uint32_t)(((uint32_t)address & I2C_CR2_SADD) | (((uint32_t)length << 16) & I2C_CR2_NBYTES) | (uint32_t)I2C_SOFTEND_MODE | (uint32_t)I2C_GENERATE_START_WRITE);
@@ -222,7 +218,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TC) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
__HAL_I2C_CLEAR_FLAG(&I2cHandle, I2C_FLAG_TC);
@@ -235,7 +231,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
/* Clear STOP Flag */
@@ -253,7 +249,7 @@
timeout = FLAG_TIMEOUT;
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
if ((timeout--) == 0) {
- return 0;
+ return -1;
}
}
@@ -355,8 +351,6 @@
int i2c_slave_read(i2c_t *obj, char *data, int length) {
char size = 0;
- if (length == 0) return 0;
-
while (size < length) data[size++] = (char)i2c_byte_read(obj, 0);
return size;
@@ -366,8 +360,6 @@
char size = 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
- if (length == 0) return 0;
-
do {
i2c_byte_write(obj, data[size]);
size++;
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -139,8 +139,6 @@
int count;
int value;
- if (length == 0) return 0;
-
i2c_start(obj);
// Send slave address for read
@@ -151,7 +149,7 @@
while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED) == ERROR) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -189,7 +187,7 @@
while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED) == ERROR) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -226,7 +224,7 @@
while (I2C_GetFlagStatus(i2c, I2C_FLAG_RXNE) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F302R8/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F302R8/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -219,8 +219,6 @@
int timeout;
int value;
- if (length == 0) return 0;
-
// Configure slave address, nbytes, reload, end mode and start or stop generation
I2C_TransferHandling(i2c, address, length, I2C_SoftEnd_Mode, I2C_Generate_Start_Read);
@@ -233,7 +231,7 @@
timeout = FLAG_TIMEOUT;
while (!I2C_GetFlagStatus(i2c, I2C_FLAG_TC)) {
timeout--;
- if (timeout == 0) return 0;
+ if (timeout == 0) return -1;
}
if (stop) i2c_stop(obj);
@@ -247,8 +245,6 @@
int timeout;
int count;
- if (length == 0) return 0;
-
// Configure slave address, nbytes, reload, end mode and start generation
I2C_TransferHandling(i2c, address, length, I2C_SoftEnd_Mode, I2C_Generate_Start_Write);
@@ -260,7 +256,7 @@
timeout = FLAG_TIMEOUT;
while (!I2C_GetFlagStatus(i2c, I2C_FLAG_TC)) {
timeout--;
- if (timeout == 0) return 0;
+ if (timeout == 0) return -1;
}
if (stop) i2c_stop(obj);
@@ -278,7 +274,7 @@
while (I2C_GetFlagStatus(i2c, I2C_ISR_RXNE) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F334R8/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F334R8/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -199,8 +199,6 @@
int count;
int value;
- if (length == 0) return 0;
-
/* update CR2 register */
i2c->CR2 = (i2c->CR2 & (uint32_t)~((uint32_t)(I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN | I2C_CR2_START | I2C_CR2_STOP)))
| (uint32_t)(((uint32_t)address & I2C_CR2_SADD) | (((uint32_t)length << 16) & I2C_CR2_NBYTES) | (uint32_t)I2C_SOFTEND_MODE | (uint32_t)I2C_GENERATE_START_READ);
@@ -216,7 +214,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TC) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -230,7 +228,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
/* Clear STOP Flag */
@@ -247,8 +245,6 @@
int timeout;
int count;
- if (length == 0) return 0;
-
/* update CR2 register */
i2c->CR2 = (i2c->CR2 & (uint32_t)~((uint32_t)(I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN | I2C_CR2_START | I2C_CR2_STOP)))
| (uint32_t)(((uint32_t)address & I2C_CR2_SADD) | (((uint32_t)length << 16) & I2C_CR2_NBYTES) | (uint32_t)I2C_SOFTEND_MODE | (uint32_t)I2C_GENERATE_START_WRITE);
@@ -262,7 +258,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TC) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -276,7 +272,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
/* Clear STOP Flag */
@@ -295,7 +291,7 @@
timeout = FLAG_TIMEOUT;
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
if ((timeout--) == 0) {
- return 0;
+ return -1;
}
}
@@ -396,8 +392,6 @@
{
char size = 0;
- if (length == 0) return 0;
-
while (size < length) data[size++] = (char)i2c_byte_read(obj, 0);
return size;
@@ -408,8 +402,6 @@
char size = 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
- if (length == 0) return 0;
-
do {
i2c_byte_write(obj, data[size]);
size++;
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F401RE/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F401RE/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -155,8 +155,6 @@
int count;
int value;
- if (length == 0) return 0;
-
i2c_start(obj);
// Wait until SB flag is set
@@ -164,7 +162,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_SB) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -176,7 +174,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_ADDR) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
__HAL_I2C_CLEAR_ADDRFLAG(&I2cHandle);
@@ -206,7 +204,6 @@
int timeout;
int count;
- if (length == 0) return 0;
i2c_start(obj);
// Wait until SB flag is set
@@ -214,7 +211,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_SB) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -226,7 +223,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_ADDR) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
__HAL_I2C_CLEAR_ADDRFLAG(&I2cHandle);
@@ -234,7 +231,7 @@
for (count = 0; count < length; count++) {
if (i2c_byte_write(obj, data[count]) != 1) {
i2c_stop(obj);
- return 0;
+ return -1;
}
}
@@ -262,7 +259,7 @@
timeout = FLAG_TIMEOUT;
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
if ((timeout--) == 0) {
- return 0;
+ return -1;
}
}
@@ -353,7 +350,6 @@
int i2c_slave_read(i2c_t *obj, char *data, int length) {
uint32_t Timeout;
int size = 0;
- if (length == 0) return 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
@@ -364,7 +360,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -386,7 +382,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -398,7 +394,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_BUSY) == SET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -408,7 +404,6 @@
int i2c_slave_write(i2c_t *obj, const char *data, int length) {
uint32_t Timeout;
int size = 0;
- if (length == 0) return 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
@@ -418,7 +413,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TXE) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -441,7 +436,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_AF) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -455,7 +450,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_BUSY) == SET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F411RE/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F411RE/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -162,8 +162,6 @@
int count;
int value;
- if (length == 0) return 0;
-
i2c_start(obj);
// Wait until SB flag is set
@@ -171,7 +169,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_SB) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -183,7 +181,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_ADDR) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
__HAL_I2C_CLEAR_ADDRFLAG(&I2cHandle);
@@ -214,7 +212,6 @@
int timeout;
int count;
- if (length == 0) return 0;
i2c_start(obj);
// Wait until SB flag is set
@@ -222,7 +219,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_SB) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -234,7 +231,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_ADDR) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
__HAL_I2C_CLEAR_ADDRFLAG(&I2cHandle);
@@ -242,7 +239,7 @@
for (count = 0; count < length; count++) {
if (i2c_byte_write(obj, data[count]) != 1) {
i2c_stop(obj);
- return 0;
+ return -1;
}
}
@@ -271,7 +268,7 @@
timeout = FLAG_TIMEOUT;
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
if ((timeout--) == 0) {
- return 0;
+ return -1;
}
}
@@ -368,7 +365,6 @@
{
uint32_t Timeout;
int size = 0;
- if (length == 0) return 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
@@ -379,7 +375,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -401,7 +397,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -413,7 +409,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_BUSY) == SET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -424,7 +420,6 @@
{
uint32_t Timeout;
int size = 0;
- if (length == 0) return 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
@@ -434,7 +429,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TXE) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -457,7 +452,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_AF) == RESET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -471,7 +466,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_BUSY) == SET) {
Timeout--;
if (Timeout == 0) {
- return 0;
+ return -1;
}
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_L053R8/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_L053R8/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -159,8 +159,6 @@
int count;
int value;
- if (length == 0) return 0;
-
/* update CR2 register */
i2c->CR2 = (i2c->CR2 & (uint32_t)~((uint32_t)(I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN | I2C_CR2_START | I2C_CR2_STOP)))
| (uint32_t)(((uint32_t)address & I2C_CR2_SADD) | (((uint32_t)length << 16) & I2C_CR2_NBYTES) | (uint32_t)I2C_SOFTEND_MODE | (uint32_t)I2C_GENERATE_START_READ);
@@ -176,7 +174,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TC) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -190,7 +188,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
/* Clear STOP Flag */
@@ -206,8 +204,6 @@
int timeout;
int count;
- if (length == 0) return 0;
-
/* update CR2 register */
i2c->CR2 = (i2c->CR2 & (uint32_t)~((uint32_t)(I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN | I2C_CR2_START | I2C_CR2_STOP)))
| (uint32_t)(((uint32_t)address & I2C_CR2_SADD) | (((uint32_t)length << 16) & I2C_CR2_NBYTES) | (uint32_t)I2C_SOFTEND_MODE | (uint32_t)I2C_GENERATE_START_WRITE);
@@ -221,7 +217,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_TC) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -235,7 +231,7 @@
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_STOPF) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
/* Clear STOP Flag */
@@ -253,7 +249,7 @@
timeout = FLAG_TIMEOUT;
while (__HAL_I2C_GET_FLAG(&I2cHandle, I2C_FLAG_RXNE) == RESET) {
if ((timeout--) == 0) {
- return 0;
+ return -1;
}
}
@@ -354,8 +350,6 @@
int i2c_slave_read(i2c_t *obj, char *data, int length) {
char size = 0;
- if (length == 0) return 0;
-
while (size < length) data[size++] = (char)i2c_byte_read(obj, 0);
return size;
@@ -365,8 +359,6 @@
char size = 0;
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
- if (length == 0) return 0;
-
do {
i2c_byte_write(obj, data[size]);
size++;
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_L152RE/i2c_api.c Tue Jul 01 06:15:07 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_L152RE/i2c_api.c Tue Jul 01 15:00:09 2014 +0100
@@ -158,8 +158,6 @@
int count;
int value;
- if (length == 0) return 0;
-
i2c_start(obj);
// Send slave address for read
@@ -170,7 +168,7 @@
while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED) == ERROR) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
@@ -208,14 +206,14 @@
while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED) == ERROR) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
for (count = 0; count < length; count++) {
if (i2c_byte_write(obj, data[count]) != 1) {
i2c_stop(obj);
- return 0;
+ return -1;
}
}
@@ -245,7 +243,7 @@
while (I2C_GetFlagStatus(i2c, I2C_FLAG_RXNE) == RESET) {
timeout--;
if (timeout == 0) {
- return 0;
+ return -1;
}
}
