aboutsummaryrefslogtreecommitdiff
path: root/libraries/Firmata/examples/EchoString/EchoString.pde
diff options
context:
space:
mode:
authorDavid A. Mellis <d.mellis@arduino.cc>2009-06-01 08:32:11 +0000
committerDavid A. Mellis <d.mellis@arduino.cc>2009-06-01 08:32:11 +0000
commitdb605dd18b11ecfb5cd9f92c721c52cb70543384 (patch)
tree8a9029ffc560970ce1204ba86785ad44ef044906 /libraries/Firmata/examples/EchoString/EchoString.pde
First integration of the Arduino code in Processing 5503: PreProcessor and Compiler have been integrated with changes to the Sketch.
Compilation still has problems (Thread error on success, and can't handle non-pde files in a sketch). Modified the Mac OS X make.sh to copy the hardware, avr tools, and example over. Removing some of the antlr stuff. Disabling the Commander (command-line execution) for now. Added Library, LibraryManager, and Target. Added support for prefixed preferences (e.g. for boards and programmers).
Diffstat (limited to 'libraries/Firmata/examples/EchoString/EchoString.pde')
-rw-r--r--libraries/Firmata/examples/EchoString/EchoString.pde40
1 files changed, 40 insertions, 0 deletions
diff --git a/libraries/Firmata/examples/EchoString/EchoString.pde b/libraries/Firmata/examples/EchoString/EchoString.pde
new file mode 100644
index 0000000..ed13ad8
--- /dev/null
+++ b/libraries/Firmata/examples/EchoString/EchoString.pde
@@ -0,0 +1,40 @@
+/* This sketch accepts strings and raw sysex messages and echos them back.
+ *
+ * This example code is in the public domain.
+ */
+#include <Firmata.h>
+
+byte analogPin;
+
+void stringCallback(char *myString)
+{
+ Firmata.sendString(myString);
+}
+
+
+void sysexCallback(byte command, byte argc, byte*argv)
+{
+ Serial.print(START_SYSEX, BYTE);
+ Serial.print(command, BYTE);
+ for(byte i=0; i<argc; i++) {
+ Serial.print(argv[i], BYTE);
+ }
+ Serial.print(END_SYSEX, BYTE);
+}
+
+void setup()
+{
+ Firmata.setFirmwareVersion(0, 1);
+ Firmata.attach(FIRMATA_STRING, stringCallback);
+ Firmata.attach(START_SYSEX, sysexCallback);
+ Firmata.begin();
+}
+
+void loop()
+{
+ while(Firmata.available()) {
+ Firmata.processInput();
+ }
+}
+
+