Preliminary main mbed library for nexpaq development

Revision:
0:6c56fb4bc5f0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libraries/tests/mbed/i2c_slave/main.cpp	Fri Nov 04 20:27:58 2016 +0000
@@ -0,0 +1,48 @@
+#include "mbed.h"
+#include "test_env.h"
+
+#if !DEVICE_I2CSLAVE
+  #error [NOT_SUPPORTED] I2C Slave is not supported
+#endif
+
+#define SIZE (10)
+#define ADDR (0x90)
+
+#if defined(TARGET_KL25Z)
+I2CSlave slave(PTE0, PTE1);
+#elif defined(TARGET_LPC4088)
+I2CSlave slave(p9, p10);
+#elif defined(TARGET_SAMR21G18A)
+I2CSlave slave(PA16, PA17);
+#elif defined(TARGET_SAMD21J18A) || defined(TARGET_SAMD21G18A) || defined(TARGET_SAML21J18A)
+I2CSlave slave(PA08, PA09);
+#elif defined(TARGET_FF_ARDUINO)
+I2CSlave slave(I2C_SDA, I2C_SCL);
+#elif defined(TARGET_SAMG55J19)
+I2CSlave slave(PA10, PA09);
+#else
+I2CSlave slave(p28, p27);
+#endif
+
+ int main() {
+     char buf[SIZE];
+
+     slave.address(ADDR);
+
+     while (1) {
+         int i = slave.receive();
+         switch (i) {
+             case I2CSlave::ReadAddressed:
+                 slave.write(buf, SIZE);
+				 for(int i = 0; i < SIZE; i++){
+				}
+                 break;
+             case I2CSlave::WriteAddressed:
+                 slave.read(buf, SIZE);
+                 for(int i = 0; i < SIZE; i++){
+					buf[i]++;
+				}
+                 break;
+         }
+     }
+ }