Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: DebounceIn USBDevice mbed
Fork of idd_fall15_hw2_psddtgb_PushButtonTextEntry by
Diff: main.cpp
- Revision:
- 0:891a320d6d46
- Child:
- 1:80def904a1b8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Mon Sep 14 00:53:13 2015 +0000
@@ -0,0 +1,193 @@
+#include "mbed.h"
+#include "DebounceIn.h"
+#include "USBKeyboard.h"
+
+USBKeyboard keyboard;
+
+DigitalOut ledr(LED_RED);
+DigitalOut ledg(LED_GREEN);
+DigitalOut ledb(LED_BLUE);
+
+DebounceIn pb1(D2);
+DebounceIn pb2(D3);
+DebounceIn pb3(D4);
+DebounceIn pb4(D5);
+DebounceIn pb5(D6);
+DebounceIn pb6(D7);
+DebounceIn pb7(D8);
+DebounceIn pbs(D9);
+DebounceIn pbm(D10);
+
+int main()
+{
+//int old_pb=0;
+//int new_pb;
+int m = 1;
+ledr = 1;
+ledg = 1;
+ledb = 1;
+ // Use internal pullup for pushbutton
+ pb1.mode(PullUp);
+ pb2.mode(PullUp);
+ pb3.mode(PullUp);
+ pb4.mode(PullUp);
+ pb5.mode(PullUp);
+ pb6.mode(PullUp);
+ pb7.mode(PullUp);
+ pbs.mode(PullUp);
+ pbm.mode(PullUp);
+
+ // Delay for initial pullup to take effect
+ wait(.001);
+ while(1) {
+ //new_pb = pb;
+ //if ((new_pb==0) && (old_pb==1)) ledr = 1;
+ //old_pb = new_pb;
+ if (m==1 && pbm==0) {
+ m=2;
+ ledr=0;
+ ledg = 1;
+ ledb = 1;
+ wait(.2);
+ }
+ if (m==2 && pbm==0) {
+ m=3;
+ ledr=1;
+ ledg = 0;
+ ledb = 1;
+ wait(.2);
+ }
+ if (m==3 && pbm==0) {
+ m=4;
+ ledr=1;
+ ledg = 1;
+ ledb = 0;
+ wait(.2);
+ }
+ if (m==4 && pbm==0) {
+ m=1;
+ ledr=1;
+ ledg = 1;
+ ledb = 1;
+ wait(.2);
+ }
+ if (pbs==0) {
+ keyboard.printf(" ");
+ wait(.2);
+ }
+ if (m==1 && pb1==0) {
+ keyboard.printf("a");
+ wait(.2);
+ }
+ if (m==1 && pb2==0) {
+ keyboard.printf("b");
+ wait(.2);
+ }
+ if (m==1 && pb3==0) {
+ keyboard.printf("c");
+ wait(.2);
+ }
+ if (m==1 && pb4==0) {
+ keyboard.printf("d");
+ wait(.2);
+ }
+ if (m==1 && pb5==0) {
+ keyboard.printf("e");
+ wait(.2);
+ }
+ if (m==1 && pb6==0) {
+ keyboard.printf("f");
+ wait(.2);
+ }
+ if (m==1 && pb7==0) {
+ keyboard.printf("g");
+ wait(.2);
+ }
+ if (m==2 && pb1==0) {
+ keyboard.printf("h");
+ wait(.2);
+ }
+ if (m==2 && pb2==0) {
+ keyboard.printf("i");
+ wait(.2);
+ }
+ if (m==2 && pb3==0) {
+ keyboard.printf("j");
+ wait(.2);
+ }
+ if (m==2 && pb4==0) {
+ keyboard.printf("k");
+ wait(.2);
+ }
+ if (m==2 && pb5==0) {
+ keyboard.printf("l");
+ wait(.2);
+ }
+ if (m==2 && pb6==0) {
+ keyboard.printf("m");
+ wait(.2);
+ }
+ if (m==2 && pb7==0) {
+ keyboard.printf("n");
+ wait(.2);
+ }
+ if (m==3 && pb1==0) {
+ keyboard.printf("o");
+ wait(.2);
+ }
+ if (m==3 && pb2==0) {
+ keyboard.printf("p");
+ wait(.2);
+ }
+ if (m==3 && pb3==0) {
+ keyboard.printf("q");
+ wait(.2);
+ }
+ if (m==3 && pb4==0) {
+ keyboard.printf("r");
+ wait(.2);
+ }
+ if (m==3 && pb5==0) {
+ keyboard.printf("s");
+ wait(.2);
+ }
+ if (m==3 && pb6==0) {
+ keyboard.printf("t");
+ wait(.2);
+ }
+ if (m==3 && pb7==0) {
+ keyboard.printf("u");
+ wait(.2);
+ }
+ if (m==4 && pb1==0) {
+ keyboard.printf("v");
+ wait(.2);
+ }
+ if (m==4 && pb2==0) {
+ keyboard.printf("w");
+ wait(.2);
+ }
+ if (m==4 && pb3==0) {
+ keyboard.printf("x");
+ wait(.2);
+ }
+ if (m==4 && pb4==0) {
+ keyboard.printf("y");
+ wait(.2);
+ }
+ if (m==4 && pb5==0) {
+ keyboard.printf("z");
+ wait(.2);
+ }
+ if (m==4 && pb6==0) {
+ keyboard.keyCode(KEY_CAPS_LOCK);
+ wait(.2);
+ }
+ if (m==4 && pb7==0) {
+ keyboard.printf("\b");
+ wait(.2);
+ }
+
+ }
+
+}
\ No newline at end of file
