Dependencies:   mbed

Committer:
unixblackhole
Date:
Thu Jan 14 01:27:01 2010 +0000
Revision:
0:a36776c2f7ad

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
unixblackhole 0:a36776c2f7ad 1 #include "mbed.h"
unixblackhole 0:a36776c2f7ad 2
unixblackhole 0:a36776c2f7ad 3 Serial pc(USBTX, USBRX);
unixblackhole 0:a36776c2f7ad 4 Serial lcd(p13, p14);
unixblackhole 0:a36776c2f7ad 5
unixblackhole 0:a36776c2f7ad 6 bool esc;
unixblackhole 0:a36776c2f7ad 7 void setSpark() {
unixblackhole 0:a36776c2f7ad 8 lcd.printf("%c%c",0xFE,0x01);
unixblackhole 0:a36776c2f7ad 9 lcd.printf("%c%c",0xFE,0x80);
unixblackhole 0:a36776c2f7ad 10 lcd.printf(" Sparkfun.com ");
unixblackhole 0:a36776c2f7ad 11 lcd.printf("%c%c",0xFE,0xC0);
unixblackhole 0:a36776c2f7ad 12 lcd.printf(" SerLCD v2 ");
unixblackhole 0:a36776c2f7ad 13 }
unixblackhole 0:a36776c2f7ad 14 void interrupt() {
unixblackhole 0:a36776c2f7ad 15 char in = pc.getc();
unixblackhole 0:a36776c2f7ad 16 if (esc) {
unixblackhole 0:a36776c2f7ad 17 switch (in) {
unixblackhole 0:a36776c2f7ad 18 case 'h':
unixblackhole 0:a36776c2f7ad 19 pc.printf("esc+h - help text\r\n");
unixblackhole 0:a36776c2f7ad 20 pc.printf("esc+s - sparkfun boot splash\r\n");
unixblackhole 0:a36776c2f7ad 21 pc.printf("esc+c - clear screen\r\n");
unixblackhole 0:a36776c2f7ad 22 pc.printf("esc+a - cursor on\r\n");
unixblackhole 0:a36776c2f7ad 23 pc.printf("esc+z - cursor off\r\n");
unixblackhole 0:a36776c2f7ad 24 pc.printf("esc+b - set boot splash\r\n");
unixblackhole 0:a36776c2f7ad 25 pc.printf("esc+d - disable/enable boot splash\r\n");
unixblackhole 0:a36776c2f7ad 26 break;
unixblackhole 0:a36776c2f7ad 27 case 'a':
unixblackhole 0:a36776c2f7ad 28 lcd.printf("%c%c",0xFE,0x0D);
unixblackhole 0:a36776c2f7ad 29 break;
unixblackhole 0:a36776c2f7ad 30 case 'z':
unixblackhole 0:a36776c2f7ad 31 lcd.printf("%c%c",0xFE,0x0C);
unixblackhole 0:a36776c2f7ad 32 break;
unixblackhole 0:a36776c2f7ad 33 case 'c':
unixblackhole 0:a36776c2f7ad 34 lcd.printf("%c%c%c%c",0xFE,0x01,0xFE,0x80);
unixblackhole 0:a36776c2f7ad 35 break;
unixblackhole 0:a36776c2f7ad 36 case 'd':
unixblackhole 0:a36776c2f7ad 37 lcd.printf("%c%c",0x7C,0x09);
unixblackhole 0:a36776c2f7ad 38 break;
unixblackhole 0:a36776c2f7ad 39 case 'b':
unixblackhole 0:a36776c2f7ad 40 lcd.printf("%c%c",0x7C,0x0A);
unixblackhole 0:a36776c2f7ad 41 break;
unixblackhole 0:a36776c2f7ad 42 case 's':
unixblackhole 0:a36776c2f7ad 43 setSpark();
unixblackhole 0:a36776c2f7ad 44 break;
unixblackhole 0:a36776c2f7ad 45 }
unixblackhole 0:a36776c2f7ad 46 esc=0;
unixblackhole 0:a36776c2f7ad 47 } else {
unixblackhole 0:a36776c2f7ad 48 switch (in) {
unixblackhole 0:a36776c2f7ad 49 case 0x1b:
unixblackhole 0:a36776c2f7ad 50 esc=1;
unixblackhole 0:a36776c2f7ad 51 break;
unixblackhole 0:a36776c2f7ad 52 case 0x7C:
unixblackhole 0:a36776c2f7ad 53 case 0x0d:
unixblackhole 0:a36776c2f7ad 54 break;
unixblackhole 0:a36776c2f7ad 55 default :
unixblackhole 0:a36776c2f7ad 56 esc=0;
unixblackhole 0:a36776c2f7ad 57 lcd.printf("%c",in);
unixblackhole 0:a36776c2f7ad 58 pc.printf("%c",in,in);
unixblackhole 0:a36776c2f7ad 59 }
unixblackhole 0:a36776c2f7ad 60 }
unixblackhole 0:a36776c2f7ad 61 }
unixblackhole 0:a36776c2f7ad 62 int main() {
unixblackhole 0:a36776c2f7ad 63 pc.attach(&interrupt);
unixblackhole 0:a36776c2f7ad 64 while (1) {
unixblackhole 0:a36776c2f7ad 65 wait(.3);
unixblackhole 0:a36776c2f7ad 66 }
unixblackhole 0:a36776c2f7ad 67 }
unixblackhole 0:a36776c2f7ad 68