I2C Hello World, I2C Example

Fork of I2C_HelloWorld_Mbed by Mbed

Use

The mbed I2C API uses 8 bit addressing and will auto append the 0 or 1 for read/write mode. Please keep in mind that every I2C set up has its own quirks so this example may not work out of the box for your sensor / application. Make sure to check the data sheet for your part for the timing / register access specification.

API

API reference.

Import librarymbed

No documentation found.
Revision:
0:f76c26307f9a
Child:
2:ab0e4b55d7da
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Feb 14 17:24:48 2013 +0000
@@ -0,0 +1,25 @@
+#include "mbed.h"
+ 
+// Read temperature from LM75BD
+
+I2C i2c(p28, p27);
+
+const int addr = 0x90;
+
+int main() {
+    char cmd[2];
+    while (1) {
+        cmd[0] = 0x01;
+        cmd[1] = 0x00;
+        i2c.write(addr, cmd, 2);
+ 
+        wait(0.5);
+ 
+        cmd[0] = 0x00;
+        i2c.write(addr, cmd, 1);
+        i2c.read(addr, cmd, 2);
+ 
+        float tmp = (float((cmd[0]<<8)|cmd[1]) / 256.0);
+        printf("Temp = %.2f\n", tmp);
+    }
+}
\ No newline at end of file