mbed OS-5 I2C Slave using Nucleo-F401RE board.

Revision:
0:96840f1cc413
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon Aug 22 01:30:24 2016 +0000
@@ -0,0 +1,27 @@
+#include "mbed.h"
+
+I2CSlave slave(PB_9, PB_8);
+
+int main() {
+   char buf[10];
+   char msg[] = "Slave!";
+
+   slave.address(0x0A);
+   while (1) {
+       int i = slave.receive();
+       switch (i) {
+           case I2CSlave::ReadAddressed:
+               slave.write(msg, strlen(msg) + 1); // Includes null char
+               break;
+           case I2CSlave::WriteGeneral:
+               slave.read(buf, 10);
+               //printf("Read G: %s\n", buf);
+               break;
+           case I2CSlave::WriteAddressed:
+               slave.read(buf, 10);
+               //printf("Read A: %s\n", buf);
+               break;
+       }
+       for(int i = 0; i < 10; i++) buf[i] = 0;    // Clear buffer
+   }
+}
\ No newline at end of file