Psi Swarm robot library version 0.9

Fork of PsiSwarmV9 by Psi Swarm Robot

Revision:
15:66be5ec52c3b
Parent:
12:878c6e9d9e60
Child:
16:50686c07ad07
--- a/display.cpp	Tue May 30 21:03:18 2017 +0000
+++ b/display.cpp	Thu Jun 01 21:58:14 2017 +0000
@@ -64,9 +64,7 @@
    wait(0.01);
    return c;
 }
-
-void Display::init_display(char mode){
-   //Set initial states: display on, cursor off
+void Display::init_display_start(){
    display_on = 1;
    set_backlight_brightness(1);
    cursor_on = 0;
@@ -95,14 +93,16 @@
    write_string(psis,16);
    set_position(1,0);
    write_string(psis,16);
-   wait(0.25);
+}
+
+void Display::init_display_end(char mode){
    clear_display();
     if(mode == 0) {
         set_position(0,0);
         write_string("  YORK ROBOTICS");
         set_position(1,0);
         write_string("   LABORATORY");
-   init_timeout.attach(this,&Display::post_init,0.3);}
+   init_timeout.attach(this,&Display::post_init,0.25);}
    else {      
    set_position(0,0);
    write_string("Hold button to");
@@ -111,6 +111,30 @@
     }
 } 
 
+void Display::show_switch_state(char switch_state){
+    switch(switch_state){
+        /// Switch_state = 1 if up is pressed, 2 if down is pressed, 4 if left is pressed, 8 if right is pressed and 16 if the center button is pressed
+        case 0: write_string("REL   "); break;
+        case 1: write_string("UP    "); break;
+        case 2: write_string("DOWN  "); break;
+        case 4: write_string("LEFT  "); break;
+        case 5: write_string("UP-L  "); break;
+        case 6: write_string("DN-L  "); break;
+        case 8: write_string("RIGHT "); break;
+        case 9: write_string("UP-R  "); break;
+        case 10: write_string("DN-R  "); break;
+        case 16: write_string("PRESS"); break;
+        case 17: write_string("UP   *"); break;
+        case 18: write_string("DOWN *"); break;
+        case 20: write_string("LEFT *"); break;
+        case 21: write_string("UP-L *"); break;
+        case 22: write_string("DN-L *"); break;
+        case 24: write_string("RIGHT*"); break;
+        case 25: write_string("UP-R *"); break;
+        case 26: write_string("DN-R *"); break;
+    }    
+}
+
 void Display::post_init(){
     clear_display();
     home();
@@ -120,7 +144,7 @@
     sprintf(line,"VERSION %1.2f", SOFTWARE_VERSION_CODE  );
     set_position(1,0);
     write_string(line);
-    init_timeout.attach(this,&Display::post_post_init,0.3);
+    init_timeout.attach(this,&Display::post_post_init,0.25);
 }
 
 void Display::post_post_init(){