From 42d4dbdc2d15886c837f747e7a1e3c02a4802dff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?King=20K=C3=A9vin?= Date: Sat, 2 Aug 2014 14:09:17 -0700 Subject: [PATCH] fix bit save in byte read --- pic/MDR/I2C.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pic/MDR/I2C.c b/pic/MDR/I2C.c index 3da593e..54b2056 100644 --- a/pic/MDR/I2C.c +++ b/pic/MDR/I2C.c @@ -120,12 +120,12 @@ uint8_t read_byte(uint8_t ack) for (bit=0; bit<8; bit++) { delay(); /* wait for SDA to change */ release_SCL(); /* SDA should be valid when clock is high */ + byte <<= 1; /* make place to save the next bit */ if (PORTB&SDA) { /* read bit */ byte += 1; } else { byte += 0; } - byte <<= 1; hold_SCL(); /* set clock to low for SDA to change */ } if (ack) {