Browse Source

Arduino demo

jamesbowman 9 years ago
parent
commit
4dcb8eb23b
3 changed files with 84 additions and 0 deletions
  1. 1 0
      demo/.gitignore
  2. 68 0
      demo/demo.ino
  3. 15 0
      demo/go

+ 1 - 0
demo/.gitignore

@@ -0,0 +1 @@
+ino-demo

+ 68 - 0
demo/demo.ino

@@ -0,0 +1,68 @@
+#include <SPI.h>
+
+#define SELECT()    digitalWrite(9, 0)
+#define UNSELECT()  digitalWrite(9, 1)
+
+void setup()
+{
+  SPI.begin();
+  pinMode(9, OUTPUT);
+  UNSELECT();
+}
+
+static byte scroll;
+
+void vga(int addr)
+{
+  SELECT();
+  SPI.transfer(scroll);
+  SPI.transfer(addr >> 8);
+  SPI.transfer(addr);
+}
+
+void cls()
+{
+  vga(0);
+  for (int i = 0; i < (128 * 48 * 2); i++)
+    SPI.transfer(0);
+  UNSELECT();
+}
+
+void xloop()
+{
+  cls();
+  for (int a = 30; a < 10000; a += 256) {
+    vga(a);
+    for (int attr = 0; attr < 16; attr++) {
+      SPI.transfer('*');
+      SPI.transfer(attr);
+    }
+
+    SPI.transfer(0);
+    SPI.transfer(0);
+
+    for (int attr = 0; attr < 256; attr += 16) {
+      SPI.transfer('*');
+      SPI.transfer(attr);
+    }
+    UNSELECT();
+  }
+  delay(1000);
+}
+
+void loop()
+{
+  int a = random(128 * 48);
+  vga(2 * a);
+  SPI.transfer(random(256));
+  SPI.transfer(random(256));
+  UNSELECT();
+}
+
+class TTY: public Print {
+    public:
+      virtual size_t write(uint8_t character) {
+      };
+    private:
+    // otherstuff
+};

+ 15 - 0
demo/go

@@ -0,0 +1,15 @@
+export INO_PORT=/dev/ttyUSB0
+export INO_CPU=uno
+echo $INO_PORT $INO_CPU
+
+DIR=ino-demo
+
+mkdir -p $DIR/src
+for f in demo.ino
+do
+  rsync $f $DIR/src/
+done
+cd $DIR &&
+ino build -m $INO_CPU &&
+ino upload -m $INO_CPU -p $INO_PORT
+# python /usr/share/doc/python-serial/examples/miniterm.py $INO_PORT 1000000