uint8_t Out5x7Char(char charater, uint8_t x, uint8_t y, uint8_t red, uint8_t green, uint8_t blue){ switch (charater){ case '0': LineH(x+1,y,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x,y+1,5,red,green,blue); LineV(x+4,y+1,5,red,green,blue); LineV(x+2,y+3,1,red,green,blue); return 5; break; case '1': LineV(x+2,y,7,red,green,blue); LineV(x+1,y+1,1,red,green,blue); LineV(x,y+2,1,red,green,blue); //LineV(x+1,y+3,1,red,green,blue); return 3; break; case '2': LineH(x,y+1,1,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+5,1,red,green,blue); LineH(x+2,y+4,1,red,green,blue); LineH(x+3,y+3,1,red,green,blue); LineH(x,y+6,5,red,green,blue); LineV(x+4,y+1,2,red,green,blue); //LineV(x,y+4,2,red,green,blue); return 5; break; case '3': LineH(x,y,4,red,green,blue); LineH(x+1,y+3,3,red,green,blue); LineH(x,y+6,4,red,green,blue); LineV(x+4,y+1,2,red,green,blue); LineV(x+4,y+4,2,red,green,blue); return 5; break; case '4': LineH(x,y+3,5,red,green,blue); LineV(x+4,y,7,red,green,blue); LineV(x,y,4,red,green,blue); return 5; break; case '5': LineH(x,y,5,red,green,blue); LineH(x,y+3,4,red,green,blue); LineH(x,y+6,4,red,green,blue); LineV(x,y,4,red,green,blue); LineV(x+4,y+4,2,red,green,blue); return 5; break; case '6': LineH(x+1,y,3,red,green,blue); LineH(x+4,y+1,1,red,green,blue); LineH(x,y+3,4,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x,y+1,5,red,green,blue); LineV(x+4,y+4,2,red,green,blue); return 5; break; case '7': LineH(x,y,5,red,green,blue); LineV(x+4,y+1,2,red,green,blue); LineV(x+3,y+3,2,red,green,blue); LineV(x+2,y+5,2,red,green,blue); return 5; break; case '8': LineH(x+1,y,3,red,green,blue); LineH(x+1,y+3,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x,y+1,2,red,green,blue); LineV(x+4,y+1,2,red,green,blue); LineV(x,y+4,2,red,green,blue); LineV(x+4,y+4,2,red,green,blue); return 5; break; case '9': LineH(x+1,y,3,red,green,blue); LineH(x+1,y+3,4,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x,y+1,2,red,green,blue); LineV(x+4,y+1,2,red,green,blue); LineV(x+4,y+4,2,red,green,blue); return 5; break; case ':': LineV(x,y+2,1,red,green,blue); LineV(x,y+4,1,red,green,blue); return 1; break; case '.': LineV(x,y+6,1,red,green,blue); return 1; break; case '-': LineH(x,y+3,3,red,green,blue); return 3; break; case ' ': return 1; break; case '!': LineV(x,y,5,red,green,blue); LineV(x,y+6,1,red,green,blue); return 1; break; case 'A': LineV(x,y+1,6,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+3,3,red,green,blue); LineV(x+4,y+1,6,red,green,blue); return 5; break; case 'C': LineV(x,y+1,5,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x+4,y+1,1,red,green,blue); LineV(x+4,y+5,1,red,green,blue); return 5; break; case 'D': LineV(x,y,7,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x+4,y+1,5,red,green,blue); return 5; break; case 'E': LineV(x,y,7,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+3,2,red,green,blue); LineH(x+1,y+6,3,red,green,blue); return 4; break; case 'F': LineV(x,y,7,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+3,2,red,green,blue); return 4; break; case 'G': LineV(x,y+1,5,red,green,blue); LineH(x+1,y,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineH(x+2,y+3,2,red,green,blue); LineV(x+4,y+1,1,red,green,blue); LineV(x+4,y+3,4,red,green,blue); return 5; break; case 'H': LineH(x,y+3,5,red,green,blue); LineV(x,y,7,red,green,blue); LineV(x+4,y,7,red,green,blue); return 5; break; case 'I': LineV(x+1,y+1,5,red,green,blue); LineH(x,y,3,red,green,blue); LineH(x,y+6,3,red,green,blue); return 3; break; case 'K': LineV(x,y,7,red,green,blue); LineH(x+1,y+3,1,red,green,blue); LineH(x+2,y+2,1,red,green,blue); LineH(x+2,y+4,1,red,green,blue); LineH(x+3,y+1,1,red,green,blue); LineH(x+3,y+5,1,red,green,blue); LineH(x+4,y,1,red,green,blue); LineH(x+4,y+6,1,red,green,blue); return 5; break; case 'M': LineV(x,y,7,red,green,blue); LineV(x+1,y+1,1,red,green,blue); LineV(x+2,y+2,2,red,green,blue); LineV(x+3,y+1,1,red,green,blue); LineV(x+4,y,7,red,green,blue); return 5; break; case 'N': LineV(x,y,7,red,green,blue); LineV(x+1,y+1,1,red,green,blue); LineV(x+2,y+2,1,red,green,blue); LineV(x+3,y+3,1,red,green,blue); LineV(x+4,y,7,red,green,blue); return 5; break; case 'O': LineH(x+1,y,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x,y+1,5,red,green,blue); LineV(x+4,y+1,5,red,green,blue); return 5; break; case 'P': LineH(x,y,4,red,green,blue); LineV(x,y+1,6,red,green,blue); LineV(x+4,y+1,2,red,green,blue); LineH(x+1,y+3,3,red,green,blue); return 5; break; case 'R': LineH(x,y,4,red,green,blue); LineV(x,y+1,6,red,green,blue); LineV(x+4,y+1,2,red,green,blue); LineH(x+1,y+3,3,red,green,blue); LineH(x+2,y+4,1,red,green,blue); LineH(x+3,y+5,1,red,green,blue); LineH(x+4,y+6,1,red,green,blue); return 5; break; case 'S': LineH(x+1,y,3,red,green,blue); LineV(x,y+1,2,red,green,blue); LineV(x+4,y+1,1,red,green,blue); LineH(x+1,y+3,3,red,green,blue); LineV(x+4,y+4,2,red,green,blue); LineV(x,y+5,1,red,green,blue); LineH(x+1,y+6,3,red,green,blue); return 5; break; case 'T': LineH(x,y,5,red,green,blue); LineV(x+2,y+1,6,red,green,blue); return 5; break; case 'U': LineV(x,y,6,red,green,blue); LineH(x+1,y+6,3,red,green,blue); LineV(x+4,y,6,red,green,blue); return 5; break; case 'V': LineV(x,y,5,red,green,blue); LineV(x+4,y,5,red,green,blue); LineV(x+1,y+5,1,red,green,blue); LineV(x+2,y+6,1,red,green,blue); LineV(x+3,y+5,1,red,green,blue); return 5; break; case 'W': LineV(x,y,7,red,green,blue); LineV(x+4,y,7,red,green,blue); LineV(x+1,y+5,1,red,green,blue); LineV(x+3,y+5,1,red,green,blue); LineV(x+2,y+4,1,red,green,blue); return 5; break; case 'Z': LineH(x,y,5,red,green,blue); LineH(x,y+6,5,red,green,blue); LineV(x+4,y+1,1,red,green,blue); LineV(x+3,y+2,1,red,green,blue); LineV(x+2,y+3,1,red,green,blue); LineV(x+1,y+4,1,red,green,blue); LineV(x,y+5,1,red,green,blue); return 5; break; case 'a': LineV(x,y+3,3,red,green,blue); LineV(x+3,y+3,4,red,green,blue); LineH(x+1,y+2,2,red,green,blue); LineH(x+1,y+6,2,red,green,blue); return 4; break; case 'b': LineV(x,y,7,red,green,blue); LineH(x+2,y+2,2,red,green,blue); LineH(x+1,y+3,1,red,green,blue); LineV(x+4,y+3,3,red,green,blue); LineH(x+1,y+6,3,red,green,blue); return 4; break; case 'c': LineV(x,y+3,3,red,green,blue); LineH(x+1,y+2,2,red,green,blue); LineH(x+3,y+5,1,red,green,blue); LineH(x+1,y+6,2,red,green,blue); return 4; break; case 'd': LineV(x,y+3,3,red,green,blue); LineV(x+3,y,7,red,green,blue); LineH(x+1,y+2,2,red,green,blue); LineH(x+1,y+6,2,red,green,blue); return 4; break; case 'e': LineV(x,y+3,3,red,green,blue); LineV(x+3,y+3,1,red,green,blue); LineH(x+1,y+2,2,red,green,blue); LineH(x+1,y+4,2,red,green,blue); LineH(x+1,y+6,3,red,green,blue); return 4; break; case 'f': LineV(x+1,y+1,6,red,green,blue); LineV(x+2,y,1,red,green,blue); LineV(x+3,y+1,1,red,green,blue); LineH(x,y+3,3,red,green,blue); return 3; break; case 'g': LineV(x,y+3,1,red,green,blue); LineV(x+3,y+2,4,red,green,blue); LineH(x+1,y+2,2,red,green,blue); LineH(x+1,y+4,2,red,green,blue); LineH(x+1,y+6,2,red,green,blue); return 4; break; case 'i': LineV(x,y+1,1,red,green,blue); LineV(x,y+3,4,red,green,blue); return 1; break; case 'j': LineV(x,y+5,1,red,green,blue); LineV(x+1,y+2,1,red,green,blue); LineV(x+1,y+6,1,red,green,blue); LineV(x+2,y,1,red,green,blue); LineV(x+2,y+2,4,red,green,blue); return 3; break; case 'k': LineV(x,y,7,red,green,blue); LineV(x+1,y+4,1,red,green,blue); LineV(x+2,y+3,1,red,green,blue); LineV(x+2,y+5,1,red,green,blue); LineV(x+3,y+2,1,red,green,blue); LineV(x+3,y+6,1,red,green,blue); return 4; break; case 'l': LineV(x,y,7,red,green,blue); return 1; break; case 'm': LineV(x,y+2,5,red,green,blue); LineV(x+1,y+2,1,red,green,blue); LineV(x+2,y+3,4,red,green,blue); LineV(x+3,y+2,1,red,green,blue); LineV(x+4,y+3,4,red,green,blue); return 5; break; case 'n': LineV(x,y+2,5,red,green,blue); LineV(x+3,y+2,5,red,green,blue); LineH(x+1,y+3,1,red,green,blue); LineH(x+2,y+2,1,red,green,blue); return 4; break; case 'o': LineH(x+1,y+2,2,red,green,blue); LineH(x+1,y+6,2,red,green,blue); LineV(x,y+3,3,red,green,blue); LineV(x+3,y+3,3,red,green,blue); return 4; break; case 'p': LineV(x,y+2,5,red,green,blue); LineH(x+1,y+2,2,red,green,blue); LineH(x+1,y+4,2,red,green,blue); LineV(x+3,y+3,1,red,green,blue); return 4; break; case 'r': LineV(x,y+2,5,red,green,blue); LineH(x+1,y+3,1,red,green,blue); LineH(x+2,y+2,1,red,green,blue); LineV(x+3,y+3,1,red,green,blue); return 4; break; case 's': LineH(x+1,y+2,3,red,green,blue); LineH(x+1,y+4,2,red,green,blue); LineH(x,y+6,3,red,green,blue); LineV(x,y+3,1,red,green,blue); LineV(x+3,y+5,1,red,green,blue); return 4; break; case 't': LineV(x+1,y,6,red,green,blue); LineV(x+2,y+6,1,red,green,blue); LineV(x+3,y+5,1,red,green,blue); LineH(x,y+2,3,red,green,blue); return 4; break; case 'u': LineV(x,y+2,4,red,green,blue); LineV(x+3,y+2,4,red,green,blue); LineH(x+1,y+6,2,red,green,blue); return 4; break; case 'y': LineV(x,y+2,2,red,green,blue); LineV(x+3,y+2,4,red,green,blue); LineH(x+1,y+4,2,red,green,blue); LineH(x+1,y+6,2,red,green,blue); return 4; break; case 'v': LineV(x,y+2,4,red,green,blue); LineV(x+2,y+2,4,red,green,blue); //LineH(x+1,y+5,2,red,green,blue); LineH(x+1,y+6,1,red,green,blue); return 3; break; case 'z': LineH(x,y+2,4,red,green,blue); LineH(x,y+6,4,red,green,blue); LineH(x+3,y+3,1,red,green,blue); LineH(x+2,y+4,1,red,green,blue); LineH(x+1,y+5,1,red,green,blue); return 4; break; } return 0; } void show5x7(uint8_t x, uint8_t y, char text[] , uint8_t red, uint8_t green, uint8_t blue){ uint8_t textlen = strlen(text); for(uint8_t b=0;b