佐藤 太郎 / Mbed 2 deprecated LPC1114_GVD

Dependencies:   BitAccess GVD mbed

Files at this revision

API Documentation at this revision

Comitter:
moneneholic
Date:
Thu Aug 04 00:47:15 2016 +0000
Commit message:
FirstVer

Changed in this revision

BitAccess.lib Show annotated file Show diff for this revision Revisions of this file
GVD.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r 0a51d4f7c853 BitAccess.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/BitAccess.lib	Thu Aug 04 00:47:15 2016 +0000
@@ -0,0 +1,1 @@
+https://developer.mbed.org/users/moneneholic/code/BitAccess/#0ee1a4a231ac
diff -r 000000000000 -r 0a51d4f7c853 GVD.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/GVD.lib	Thu Aug 04 00:47:15 2016 +0000
@@ -0,0 +1,1 @@
+https://developer.mbed.org/users/moneneholic/code/GVD/#a5d388a0355c
diff -r 000000000000 -r 0a51d4f7c853 main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Aug 04 00:47:15 2016 +0000
@@ -0,0 +1,43 @@
+#include "mbed.h"
+#include "GVD.hpp"
+#include "BitAccess.h"
+
+char read_address() {
+    const size_t din_num = 4;
+    DigitalIn din[] = {
+        DigitalIn(dp26),
+        DigitalIn(dp25),
+        DigitalIn(dp18),
+        DigitalIn(dp17)
+    };
+
+    char address = 0;
+    size_t address_offset = 0x08 << 1;
+    for (size_t i = 0; i < din_num; ++i) {
+        address |= din[i].read() << (i + 1);
+    }
+    return address + address_offset;
+}
+ 
+int main(){
+    I2CSlave i2c(dp5, dp27);
+    i2c.address(read_address());
+    GVD vd(dp11,dp2,dp9,dp6,dp4,dp10,dp1,dp13);
+    BitAccess byte;
+    while (true){
+        char buf;
+        switch (i2c.receive()){
+            case I2CSlave::ReadAddressed:
+                break;
+            case I2CSlave::WriteGeneral:
+                break;
+            case I2CSlave::WriteAddressed:
+                i2c.read(&buf, 1);
+                byte.setByte(buf);
+                vd.write(byte.b0,byte.b1,byte.b2,byte.b3,byte.b4,byte.b5,byte.b6,byte.b7);
+                break;
+            case I2CSlave::NoData:
+                break;
+        }
+    }
+}
\ No newline at end of file
diff -r 000000000000 -r 0a51d4f7c853 mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Thu Aug 04 00:47:15 2016 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/f9eeca106725
\ No newline at end of file