lib_LCD_oem_example
Dependencies: lib_LCD_oem mbed
main.cpp
- Committer:
- YSI
- Date:
- 2017-06-06
- Revision:
- 1:1c9519da56a0
- Parent:
- 0:c8a2590c2f2e
File content as of revision 1:1c9519da56a0:
#include "mbed.h" #include "lib_LCD_oem_ELCD.h" bool acolade = false; bool escape = false; LCD_OEM LCD; Serial pc(USBTX, USBRX); int X_pos = 0; int Y_pos = 0; void reception_serie(void); int main() { pc.attach(&reception_serie); LCD.shift_line_cursor(); // pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); while(1) { } } void reception_serie(void) { char c = pc.getc(); char l1 = 0,l2 = 0,l3 = 0,l4 = 0,l5 = 0,l6 = 0,l7 = 0,l8 = 0; switch(c) { case 27: acolade = true; break; case 91: if(acolade) escape = true; break; case 'A': if(acolade && escape) { // X_pos = LCD.get_X_position_cursor(); // Y_pos = LCD.get_Y_position_cursor() - 1; // LCD.set_position_cursor(X_pos,Y_pos); LCD.set_position_cursor(LCD.get_X_position_cursor(), LCD.get_Y_position_cursor() - 1); pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); }else{ pc.printf("%d\r\n",c); LCD.print((int)c); acolade = false; escape = false; } break; case 'B': if(acolade && escape) { // X_pos = LCD.get_X_position_cursor(); // Y_pos = LCD.get_Y_position_cursor() + 1; // LCD.set_position_cursor(X_pos,Y_pos); LCD.set_position_cursor(LCD.get_X_position_cursor(), LCD.get_Y_position_cursor() + 1); pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); }else{ pc.printf("%d\r\n",c); LCD.print((int)c); acolade = false; escape = false; } break; case 'C': if(acolade && escape) { // X_pos = LCD.get_X_position_cursor() + 1; // Y_pos = LCD.get_Y_position_cursor(); // LCD.set_position_cursor(X_pos,Y_pos); LCD.set_position_cursor(LCD.get_X_position_cursor() + 1, LCD.get_Y_position_cursor()); pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); }else{ pc.printf("%d\r\n",c); LCD.print((int)c); acolade = false; escape = false; } break; case 'D': if(acolade && escape) { // X_pos = LCD.get_X_position_cursor() - 1; // Y_pos = LCD.get_Y_position_cursor(); // LCD.set_position_cursor(X_pos,Y_pos); LCD.set_position_cursor(LCD.get_X_position_cursor() - 1, LCD.get_Y_position_cursor()); pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); }else{ pc.printf("%d\r\n",c); LCD.print((int)c); acolade = false; escape = false; } break; case 'w': for(int i=0;i<4;i++) { LCD.set_position_cursor(0,i); for(int j=8;j<16;j++) { LCD.print("%c", j); pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); // wait(0.25); } } for(int k=8;k<16;k++) { l1 = l2 = l3 = l3 = l4 = l5 = l6 = l7 = l8 = 0; for(int i=0;i<8;i++) { for(int j=1;j<32;j*=2) { if(i == 0) l1 += j; else if(i == 1) l2 += j; else if(i == 2) l3 += j; else if(i == 3) l4 += j; else if(i == 4) l5 += j; else if(i == 5) l6 += j; else if(i == 6) l7 += j; else if(i == 7) l8 += j; LCD.define_caractere(k,l1,l2,l3,l4,l5,l6,l7,l8); // wait(0.1); } } } for(int k=8;k<16;k++) { l1 = l2 = l3 = l3 = l4 = l5 = l6 = l7 = l8 = 31; for(int i=0;i<8;i++) { for(int j=1;j<32;j*=2) { if(i == 0) l1 -= j; else if(i == 1) l2 -= j; else if(i == 2) l3 -= j; else if(i == 3) l4 -= j; else if(i == 4) l5 -= j; else if(i == 5) l6 -= j; else if(i == 6) l7 -= j; else if(i == 7) l8 -= j; LCD.define_caractere(k,l1,l2,l3,l4,l5,l6,l7,l8); // wait(0.1); } } } break; case 'x': // LCD.set_position_cursor(0,0); LCD.define_and_print_caractere(8,1,2,4,8,8,4,2,1); LCD.define_caractere(8,16,8,4,2,2,4,8,16); LCD.print((char)8); // LCD.print((char)8); // LCD.define_caractere(8,1,2,4,8,8,4,2,1); /* for(int k=8;k<16;k++) { l1 = l2 = l3 = l3 = l4 = l5 = l6 = l7 = l8 = 0; for(int i=0;i<8;i++) { for(int j=1;j<32;j*=2) { if(i == 0) l1 += j; else if(i == 1) l2 += j; else if(i == 2) l3 += j; else if(i == 3) l4 += j; else if(i == 4) l5 += j; else if(i == 5) l6 += j; else if(i == 6) l7 += j; else if(i == 7) l8 += j; LCD.define_and_print_caractere(k,l1,l2,l3,l4,l5,l6,l7,l8); // wait(0.1); } } } for(int k=8;k<16;k++) { l1 = l2 = l3 = l3 = l4 = l5 = l6 = l7 = l8 = 31; for(int i=0;i<8;i++) { for(int j=1;j<32;j*=2) { if(i == 0) l1 -= j; else if(i == 1) l2 -= j; else if(i == 2) l3 -= j; else if(i == 3) l4 -= j; else if(i == 4) l5 -= j; else if(i == 5) l6 -= j; else if(i == 6) l7 -= j; else if(i == 7) l8 -= j; LCD.define_and_print_caractere(k,l1,l2,l3,l4,l5,l6,l7,l8); // wait(0.1); } } } */ break; default: LCD.print(c); pc.printf("X_pos %2d Y_pos %d\r\n", LCD.get_X_position_cursor(), LCD.get_Y_position_cursor()); break; } }