From ca60a9cba242dcff3a04e517d6a07defea942b54 Mon Sep 17 00:00:00 2001 From: marcoveeneman Date: Fri, 24 Apr 2015 22:00:47 +0200 Subject: Tiva. I2C. Fixed bug where number of bytes read is 2 more then requested. This only occurs when the number of bytes to read is 3 or more. --- os/hal/ports/TIVA/LLD/i2c_lld.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'os') diff --git a/os/hal/ports/TIVA/LLD/i2c_lld.c b/os/hal/ports/TIVA/LLD/i2c_lld.c index 4019a3b..f4c555b 100644 --- a/os/hal/ports/TIVA/LLD/i2c_lld.c +++ b/os/hal/ports/TIVA/LLD/i2c_lld.c @@ -216,7 +216,7 @@ static void i2c_lld_serve_interrupt(I2CDriver *i2cp) break; } case STATE_READ_NEXT: { - if(i2cp->rxbytes == 0) { + if(i2cp->rxbytes == 2) { i2cp->intstate = STATE_READ_FINAL; } *(i2cp->rxbuf) = dp->MDR; -- cgit v1.2.3