update praatje
[ri1617.git] / final_review / demo.listing
diff --git a/final_review/demo.listing b/final_review/demo.listing
new file mode 100644 (file)
index 0000000..eaeaa9e
--- /dev/null
@@ -0,0 +1,18 @@
+main = sds \x=1 In sds \pin=1 In
+  { main =
+    IF (digitalRead D3) (
+      x =. x +. lit 1 :.  pub x
+    ) ( noOp
+    ) :.
+    IF (pinnetje ==. lit 1) (
+      digitalWrite D0 (lit True)
+    ) ( IF (pinnetje ==. lit 2) (
+        digitalWrite D1 (lit True)
+      ) ( digitalWrite D2 (lit True)
+      )) }
+
+ledOn :: DigitalPin -> Main (ByteCode () Stmt)
+ledOn d = { main = digitalWrite d (lit True) :. noOp }
+
+ledOff :: DigitalPin -> Main (ByteCode () Stmt)
+ledOff d = { main = digitalWrite d (lit False) :. noOp }