aboutsummaryrefslogtreecommitdiffstats
path: root/examples/test-serialusb.cpp
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@leaflabs.com>2011-05-09 16:35:13 -0400
committerMarti Bolivar <mbolivar@leaflabs.com>2011-05-09 16:40:58 -0400
commit868fb1c273e562a1140abfa948022c9d4f55bccf (patch)
tree73067aa8cf6f8bd0d7663a634c1f878a78b567ed /examples/test-serialusb.cpp
parent47c53377292a4db28057fc6394c928cde3727e97 (diff)
downloadlibrambutan-868fb1c273e562a1140abfa948022c9d4f55bccf.tar.gz
librambutan-868fb1c273e562a1140abfa948022c9d4f55bccf.zip
Reverting commits between `git merge-head master refactor` and master.
This is a combination of 11 revert commits, and allows for a clean merge of the work done in the refactor branch. The combined commit messages follow. Revert "Committing basic ring_buffer test." This reverts commit 987fa5f433e0cd41b1621dad8b4e331cf82d49f3. Revert "qa-slave-shield.cpp and test-session.cpp fixes for Mini and RET6 Edition." This reverts commit cdd367bdd264c9e19180032c119850fbba2115ba. Revert "Brought examples/ up to date; PIN_MAP bugfix for D24." This reverts commit b4c2d4514c6d52cac8a649c5d5c24b68a3c0a416. Revert "Separated GPIO config to a separate FSMC routine." This reverts commit 744848ad0fc33eed66acc44e41c3c9d646c5b100. Revert "Slightly faster RAM writes (6.5MHz)." This reverts commit 8ba0b6bb065acb4aff26bc9c838de5f37515caf1. Revert "FSMC working but slow (~6 MHz)." This reverts commit 0dc9490cf4f4f10a23b08fef1728773f10c1b76a. Revert "Maple Mini ERROR_LED_PIN fix." This reverts commit 07d437706840901db1e09ff0ab88229c67c1fa8a. Revert "Fixing USBSerial::read(void*, uint32) return value (thanks, Crenn!)" This reverts commit 3ba7196712a5bfe4fe1166b6c34d49c3d7254568. Revert "Trivial gpio_init() bugfix" This reverts commit f6ce003bb935f26eeefa54acf7c2ae6afaabd871. Revert "Trivial changes to test-session.cpp" This reverts commit a32a37b121ac7e62660d2a83fe67c857fe705122. Revert ".gitignore: Ignore cscope* files" This reverts commit d8c72c17bd6d7416a0846e69f4f5ae5cb229d58e.
Diffstat (limited to 'examples/test-serialusb.cpp')
-rw-r--r--examples/test-serialusb.cpp74
1 files changed, 40 insertions, 34 deletions
diff --git a/examples/test-serialusb.cpp b/examples/test-serialusb.cpp
index 678c2b9..9d0a862 100644
--- a/examples/test-serialusb.cpp
+++ b/examples/test-serialusb.cpp
@@ -1,10 +1,11 @@
-// Tests SerialUSB functionality.
+// Sample main.cpp file. Blinks an LED, sends a message out USART2
+// and turns on PWM on pin 2
#include "wirish.h"
#include "usb.h"
-#define LED_PIN BOARD_LED_PIN
-#define BUT_PIN BOARD_BUTTON_PIN
+#define LED_PIN 13
+#define BUT_PIN 38
uint32 state = 0;
#define QUICKPRINT 0
@@ -13,29 +14,33 @@ uint32 state = 0;
#define SIMPLE 3
#define ONOFF 4
-void setup() {
+
+void setup()
+{
/* Set up the LED to blink */
pinMode(LED_PIN, OUTPUT);
/* Set up the Button */
- pinMode(BUT_PIN, INPUT);
+ pinMode(BUT_PIN, INPUT_PULLUP);
Serial2.begin(9600);
- Serial2.println("This is the debug channel. Press BUT.");
-
- waitForButtonPress(0);
+ Serial2.println("Hello world! This is the debug channel.");
}
+int toggle = 0;
+
uint8 c1 = '-';
void loop() {
- toggleLED();
+ toggle ^= 1;
+ digitalWrite(LED_PIN, toggle);
delay(1000);
- if(isButtonPressed()) {
+ if(digitalRead(BUT_PIN)) {
+ while(digitalRead(BUT_PIN)) {};
state++;
}
-
+
switch(state) {
case QUICKPRINT:
for(int i = 0; i<30; i++) {
@@ -43,34 +48,34 @@ void loop() {
SerialUSB.print('.');
SerialUSB.print('|');
}
- Serial2.println(SerialUSB.pending(), DEC);
+ Serial2.println(SerialUSB.pending(),DEC);
SerialUSB.println();
break;
case BIGSTUFF:
- SerialUSB.println("0123456789012345678901234567890123456789"
- "0123456789012345678901234567890123456789"
- "012345678901234567890");
- SerialUSB.println((int64)123456789, DEC);
+ SerialUSB.println("01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890");
+ SerialUSB.println((uint32)123456789,DEC);
SerialUSB.println(3.1415926535);
- Serial2.println(SerialUSB.pending(), DEC);
+ Serial2.println(SerialUSB.pending(),DEC);
break;
case NUMBERS:
SerialUSB.println("Numbers! -----------------------------");
Serial2.println("Numbers! -----------------------------");
SerialUSB.println('1');
Serial2.println('1');
- SerialUSB.println(1, DEC);
- Serial2.println(1, DEC);
- SerialUSB.println(-1, DEC);
- Serial2.println(-1, DEC);
+ SerialUSB.println(1,DEC);
+ Serial2.println(1,DEC);
+ SerialUSB.println(-1,DEC);
+ Serial2.println(-1,DEC);
SerialUSB.println(3.14159265);
Serial2.println(3.14159265);
- SerialUSB.println(123456789, DEC);
- Serial2.println(123456789, DEC);
- SerialUSB.println(-123456789, DEC);
- Serial2.println(-123456789, DEC);
- SerialUSB.println(65535, HEX);
- Serial2.println(65535, HEX);
+ SerialUSB.println(3.14159265,9);
+ Serial2.println(3.14159265,9);
+ SerialUSB.println(123456789,DEC);
+ Serial2.println(123456789,DEC);
+ SerialUSB.println(-123456789,DEC);
+ Serial2.println(-123456789,DEC);
+ SerialUSB.println(65535,HEX);
+ Serial2.println(65535,HEX);
break;
case SIMPLE:
Serial2.println("Trying write('a')");
@@ -87,8 +92,8 @@ void loop() {
SerialUSB.print("hij\n\r");
SerialUSB.write(' ');
SerialUSB.println();
- Serial2.println("Trying println(123456789, DEC)");
- SerialUSB.println(123456789, DEC);
+ Serial2.println("Trying println(123456789,DEC)");
+ SerialUSB.println(123456789);
Serial2.println("Trying println(3.141592)");
SerialUSB.println(3.141592);
Serial2.println("Trying println(\"DONE\")");
@@ -98,12 +103,12 @@ void loop() {
Serial2.println("Shutting down...");
SerialUSB.println("Shutting down...");
SerialUSB.end();
- Serial2.println("Waiting 4 seconds...");
+ Serial2.println("Waiting 4seconds...");
delay(4000);
Serial2.println("Starting up...");
SerialUSB.begin();
SerialUSB.println("Hello World!");
- Serial2.println("Waiting 4 seconds...");
+ Serial2.println("Waiting 4seconds...");
delay(4000);
state++;
break;
@@ -113,12 +118,13 @@ void loop() {
}
// Force init to be called *first*, i.e. before static object allocation.
-// Otherwise, statically allocated objects that need libmaple may fail.
-__attribute__((constructor)) void premain() {
+// Otherwise, statically allocated object that need libmaple may fail.
+ __attribute__(( constructor )) void premain() {
init();
}
-int main(void) {
+int main(void)
+{
setup();
while (1) {