Font med svenska tecken ÅÄÖ åäö
MyFont i biblioteket TFT_eSPI


Flytta font filen: 'Myfont.h' till src-mappen.
Filen finns TFT_eSPI/examples/Generic/Local_Custom_Fonts/
I detta exempel är skärmen kopplad med parallell inteface, se parallell.
Fonten är 32 pixel hög och tar mycket plats på skärmen, men går att läsa från långt avstånd.
Tabellen ASCii (American Standard Code 2) kan max hantera 256 teckenkoder.
Fonten innehåller tecken från 32(0x20) till 176(0x7E) i ASCii-tabellen.
Filen finns TFT_eSPI/examples/Generic/Local_Custom_Fonts/
I detta exempel är skärmen kopplad med parallell inteface, se parallell.
Fonten är 32 pixel hög och tar mycket plats på skärmen, men går att läsa från långt avstånd.
Tabellen ASCii (American Standard Code 2) kan max hantera 256 teckenkoder.
Fonten innehåller tecken från 32(0x20) till 176(0x7E) i ASCii-tabellen.
Kod för att visa ÅÄÖ i filen main.cpp.
#include <Arduino.h>
#include "SPI.h"
#include "TFT_eSPI.h"
// The custom font file attached to this sketch must be included
#include "MyFont.h"
// Easily remembered name for the font
#define MYFONT32 &myFont32pt8b
// Use hardware SPI
TFT_eSPI tft = TFT_eSPI();
uint16_t pchOrange = tft.color565(220,40,0);//Denna är orange vid RGB)
void setup(void) {
tft.begin();
tft.setRotation(1);
tft.setFreeFont(MYFONT32);
tft.setTextSize(1);
tft.setCursor(0,50);
tft.fillScreen(TFT_GREEN);
tft.fillRect(0,0,tft.width(),65,TFT_BLACK);
tft.setTextColor(pchOrange, TFT_BLACK);
tft.println("PchButik.se");
tft.fillRect(0,66,tft.width(),137, TFT_GREEN);
tft.setTextColor(TFT_BLACK, TFT_GREEN);
tft.setCursor(0, 130);
tft.print("**-åäöÅÄÖ-**");
tft.setCursor(0, 185);
tft.setTextColor(TFT_BLUE, TFT_GREEN);
tft.print("7 tum fullfärg TFT LCD");
tft.setCursor(0, 240);
tft.setTextColor(TFT_RED, TFT_GREEN);
tft.print("800x480 pixel, 133 dpi");
tft.setCursor(0,305);
tft.setTextColor(TFT_DARKCYAN, TFT_GREEN);
tft.print("Driver SSD1963");
tft.fillRect(0,330,tft.width(), 44, tft.color565(31,31,31)); //mörk grå
tft.fillRect(0,332,20, 20, tft.color565(255,0,0));
tft.fillRect(20,352,20, 20, tft.color565(0,255,0));
tft.fillRect(40,332,20, 20, tft.color565(0,0,255));
tft.fillRect(60,352,20, 20, tft.color565(255,255,0));
tft.fillRect(80,332,20, 20, tft.color565(0,255,255));
tft.fillRect(100,352,20, 20, tft.color565(255,0,255));
tft.fillRect(120,332,20, 20, tft.color565(0,0,0));
tft.fillRect(140,352,20, 20, tft.color565(255,255,255));
}
void loop() {}
pch9.
9 pixel hög font


I detta exempel är skärmen kopplad med parallell inteface, se parallell.
Fonten är bara 9 pixel hög men är dubblad i coden med 'tft.setTextSize(2);' .
9 x 2 = 18 pixel hög gör att den blir ganska pixlig.
Fonten innehåller tecken från 32(0x20) till 176(0x7E) i ASCii-tabellen.
Filen 'pch9.h' är Skapad av PchButik och finns inte i 'TFT_eSPI.h'.
Fonten är bara 9 pixel hög men är dubblad i coden med 'tft.setTextSize(2);' .
9 x 2 = 18 pixel hög gör att den blir ganska pixlig.
Fonten innehåller tecken från 32(0x20) till 176(0x7E) i ASCii-tabellen.
Filen 'pch9.h' är Skapad av PchButik och finns inte i 'TFT_eSPI.h'.
Kod för att visa ÅÄÖ med font pch9. fil: 'main.cpp'
#include <Arduino.h>
//#include "SPI.h"
#include "TFT_eSPI.h"
// The custom font file attached to this sketch must be included
#include "pch9.h"
// Easily remembered name for the font
#define MYFONT &Pch9
void pchPrint(String s);
String pch(String s);
// Use hardware SPI
TFT_eSPI tft = TFT_eSPI();
uint16_t pchOrange = tft.color565(220,40,0);//Denna är orange vid RGB)
void setup(void) {
Serial.begin(9600);
tft.begin();
tft.setRotation(1);
tft.setFreeFont(MYFONT);
tft.setTextSize(2);
tft.setCursor(0,50);
tft.fillScreen(TFT_GREEN);
tft.fillRect(0,0,tft.width(),65,TFT_BLACK);
tft.setTextColor(pchOrange, TFT_BLACK);
tft.println("PchButik.se");
tft.fillRect(0,66,tft.width(),137, TFT_GREEN);
tft.setTextColor(TFT_BLACK, TFT_GREEN);
tft.setCursor(0, 100);
tft.print("Alternativ 1...[\\]{|}...");
tft.setCursor(0, 130);
tft.print(pch("Alternativ 2...ÅÄÖåäö..."));
tft.setCursor(0, 160);
pchPrint("Alternativ 3...ÅÄÖåäö...");
tft.setCursor(0, 190);
tft.print("Alternativ 4...\x5B\x5C\x5D\x7B\x7C\x7D..");
tft.setCursor(0, 230);
tft.setTextColor(TFT_BLUE, TFT_GREEN);
tft.print("7 TUM FULLF\\RG TFT LCD");
tft.setCursor(0, 260);
tft.setTextColor(TFT_RED, TFT_GREEN);
tft.print("800x480 pixel, 133 dpi");
tft.setCursor(0,305);
tft.setTextColor(TFT_DARKCYAN, TFT_GREEN);
tft.print("Driver SSD1963");
tft.fillRect(0,330,tft.width(), 44, tft.color565(31,31,31)); //mörk grå
tft.fillRect(0,332,20, 20, tft.color565(255,0,0));
tft.fillRect(20,352,20, 20, tft.color565(0,255,0));
tft.fillRect(40,332,20, 20, tft.color565(0,0,255));
tft.fillRect(60,352,20, 20, tft.color565(255,255,0));
tft.fillRect(80,332,20, 20, tft.color565(0,255,255));
tft.fillRect(100,352,20, 20, tft.color565(255,0,255));
tft.fillRect(120,332,20, 20, tft.color565(0,0,0));
tft.fillRect(140,352,20, 20, tft.color565(255,255,255));
}
void loop() {}
void pchPrint(String s){
tft.print(pch(s));
}
String pch(String s){
s.replace("\xC3\x85","["); //Å
s.replace("\xC3\x84","\\");//Ä
s.replace("\xC3\x96","]"); //Ö
s.replace("\xC3\xA5","{"); //å
s.replace("\xC3\xA4","|"); //ä
s.replace("\xC3\xB6","}"); //ö
return s;
}
Font data. fil: 'pch9.h'
const uint8_t Pch9Bitmaps[] PROGMEM = {
0xFF, 0xFF, 0xF8, 0xC0, 0xFF, 0xFF, 0xF8, 0xC0, 0xDE, 0xF7, 0x20, 0x09,
0x86, 0x41, 0x91, 0xFF, 0x13, 0x04, 0xC3, 0x20, 0xC8, 0xFF, 0x89, 0x82,
0x61, 0x90, 0x10, 0x1F, 0x14, 0xDA, 0x3D, 0x1E, 0x83, 0x40, 0x78, 0x17,
0x08, 0xF4, 0x7A, 0x35, 0x33, 0xF0, 0x40, 0x20, 0x38, 0x10, 0xEC, 0x20,
0xC6, 0x20, 0xC6, 0x40, 0xC6, 0x40, 0x6C, 0x80, 0x39, 0x00, 0x01, 0x3C,
0x02, 0x77, 0x02, 0x63, 0x04, 0x63, 0x04, 0x77, 0x08, 0x3C, 0x0E, 0x06,
0x60, 0xCC, 0x19, 0x81, 0xE0, 0x18, 0x0F, 0x03, 0x36, 0xC2, 0xD8, 0x73,
0x06, 0x31, 0xE3, 0xC4, 0xFE, 0x13, 0x26, 0x6C, 0xCC, 0xCC, 0xC4, 0x66,
0x23, 0x10, 0x8C, 0x46, 0x63, 0x33, 0x33, 0x32, 0x66, 0x4C, 0x80, 0x25,
0x7E, 0xA5, 0x00, 0x30, 0xC3, 0x3F, 0x30, 0xC3, 0x0C, 0xD6, 0xF0, 0xC0,
0x08, 0x44, 0x21, 0x10, 0x84, 0x42, 0x11, 0x08, 0x00, 0x3C, 0x66, 0x42,
0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x42, 0x66, 0x3C, 0x11, 0x3F,
0x33, 0x33, 0x33, 0x33, 0x30, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x1C,
0x1C, 0x1C, 0x18, 0x18, 0x10, 0x08, 0x07, 0xF8, 0x3C, 0x66, 0xC3, 0xC3,
0x03, 0x06, 0x1C, 0x07, 0x03, 0xC3, 0xC3, 0x66, 0x3C, 0x0C, 0x18, 0x71,
0x62, 0xC9, 0xA3, 0x46, 0xFE, 0x18, 0x30, 0x60, 0xC0, 0x7F, 0x20, 0x10,
0x08, 0x08, 0x07, 0xF3, 0x8C, 0x03, 0x01, 0x80, 0xF0, 0x6C, 0x63, 0xE0,
0x1E, 0x31, 0x98, 0x78, 0x0C, 0x06, 0xF3, 0x8D, 0x83, 0xC1, 0xE0, 0xD0,
0x6C, 0x63, 0xE0, 0xFF, 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x18,
0x18, 0x10, 0x30, 0x30, 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1B, 0x18, 0xF8,
0xC6, 0xC1, 0xE0, 0xF0, 0x6C, 0x63, 0xE0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3,
0xC3, 0x67, 0x3B, 0x03, 0x03, 0xC2, 0x66, 0x3C, 0xC0, 0x00, 0x30, 0xC0,
0x00, 0x00, 0x64, 0xA0, 0x00, 0x81, 0xC7, 0x8E, 0x0C, 0x07, 0x80, 0x70,
0x0E, 0x01, 0x80, 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x70, 0x0E, 0x01,
0xC0, 0x18, 0x38, 0x71, 0xC0, 0x80, 0x00, 0x3E, 0x31, 0xB0, 0x78, 0x30,
0x18, 0x18, 0x38, 0x18, 0x18, 0x0C, 0x00, 0x00, 0x01, 0x80, 0x03, 0xF0,
0x06, 0x0E, 0x06, 0x01, 0x86, 0x00, 0x66, 0x1D, 0xBB, 0x31, 0xCF, 0x18,
0xC7, 0x98, 0x63, 0xCC, 0x31, 0xE6, 0x11, 0xB3, 0x99, 0xCC, 0xF7, 0x86,
0x00, 0x01, 0x80, 0x00, 0x70, 0x40, 0x0F, 0xE0, 0x06, 0x00, 0xF0, 0x0F,
0x00, 0x90, 0x19, 0x81, 0x98, 0x10, 0x83, 0x0C, 0x3F, 0xC2, 0x04, 0x60,
0x66, 0x06, 0xC0, 0x30, 0xFF, 0x18, 0x33, 0x03, 0x60, 0x6C, 0x0D, 0x83,
0x3F, 0xC6, 0x06, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x6F, 0xF8, 0x1F, 0x86,
0x19, 0x81, 0xA0, 0x3C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x68, 0x0D,
0x83, 0x18, 0x61, 0xF0, 0xFF, 0x18, 0x33, 0x03, 0x60, 0x3C, 0x07, 0x80,
0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0x60, 0xCF, 0xF0, 0xFF, 0xE0,
0x30, 0x18, 0x0C, 0x06, 0x03, 0xFD, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0F,
0xF8, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFE, 0xC0, 0xC0, 0xC0, 0xC0,
0xC0, 0xC0, 0x0F, 0x83, 0x0E, 0x60, 0x66, 0x03, 0xC0, 0x0C, 0x00, 0xC1,
0xFC, 0x03, 0xC0, 0x36, 0x03, 0x60, 0x73, 0x0F, 0x0F, 0x10, 0xC0, 0x78,
0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xFF, 0xFE, 0x03, 0xC0, 0x78, 0x0F,
0x01, 0xE0, 0x3C, 0x06, 0xFF, 0xFF, 0xFF, 0xC0, 0x06, 0x0C, 0x18, 0x30,
0x60, 0xC1, 0x83, 0x07, 0x8F, 0x1E, 0x27, 0x80, 0xC0, 0xD8, 0x33, 0x0C,
0x63, 0x0C, 0xC1, 0xB8, 0x3F, 0x07, 0x30, 0xC3, 0x18, 0x63, 0x06, 0x60,
0x6C, 0x0C, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0,
0xC0, 0xC0, 0xFF, 0xE0, 0x3F, 0x01, 0xFC, 0x1F, 0xE0, 0xFD, 0x05, 0xEC,
0x6F, 0x63, 0x79, 0x13, 0xCD, 0x9E, 0x6C, 0xF1, 0x47, 0x8E, 0x3C, 0x71,
0x80, 0xE0, 0x7C, 0x0F, 0xC1, 0xE8, 0x3D, 0x87, 0x98, 0xF1, 0x1E, 0x33,
0xC3, 0x78, 0x6F, 0x07, 0xE0, 0x7C, 0x0E, 0x0F, 0x81, 0x83, 0x18, 0x0C,
0xC0, 0x6C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98,
0x0C, 0x60, 0xC0, 0xF8, 0x00, 0xFF, 0x30, 0x6C, 0x0F, 0x03, 0xC0, 0xF0,
0x6F, 0xF3, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x0F, 0x81,
0x83, 0x18, 0x0C, 0xC0, 0x6C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0,
0x1B, 0x01, 0x98, 0x6C, 0x60, 0xC0, 0xFB, 0x00, 0x08, 0xFF, 0x8C, 0x0E,
0xC0, 0x6C, 0x06, 0xC0, 0x6C, 0x0C, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06,
0xC0, 0x6C, 0x06, 0xC0, 0x70, 0x3F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0x1E,
0x01, 0xF0, 0x0E, 0x00, 0xF0, 0x3C, 0x0D, 0x86, 0x3F, 0x00, 0xFF, 0x86,
0x03, 0x01, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80,
0xC0, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03,
0xC0, 0x78, 0x0F, 0x01, 0xB0, 0x61, 0xF0, 0xC0, 0x6C, 0x0D, 0x81, 0x10,
0x63, 0x0C, 0x61, 0x04, 0x60, 0xCC, 0x19, 0x01, 0x60, 0x3C, 0x07, 0x00,
0x60, 0xC1, 0x81, 0x30, 0xE1, 0x98, 0x70, 0xCC, 0x28, 0x66, 0x26, 0x21,
0x13, 0x30, 0xC8, 0x98, 0x6C, 0x4C, 0x14, 0x34, 0x0A, 0x1A, 0x07, 0x07,
0x03, 0x03, 0x80, 0x81, 0x80, 0x60, 0x63, 0x0C, 0x30, 0xC1, 0x98, 0x0F,
0x00, 0xE0, 0x06, 0x00, 0xF0, 0x19, 0x01, 0x98, 0x30, 0xC6, 0x0E, 0x60,
0x60, 0xC0, 0x36, 0x06, 0x30, 0xC3, 0x0C, 0x19, 0x81, 0xD8, 0x0F, 0x00,
0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0xFF, 0xC0, 0x60,
0x30, 0x0C, 0x06, 0x03, 0x01, 0xC0, 0x60, 0x30, 0x18, 0x06, 0x03, 0x00,
0xFF, 0xC0, 0x06, 0x00, 0x90, 0x06, 0x00, 0x00, 0x06, 0x00, 0x90, 0x19,
0x81, 0x98, 0x30, 0xC3, 0xFC, 0x20, 0x46, 0x06, 0xC0, 0x30, 0x19, 0x81,
0x98, 0x00, 0x00, 0x00, 0x06, 0x00, 0x90, 0x19, 0x81, 0x98, 0x30, 0xC3,
0xFC, 0x20, 0x46, 0x06, 0xC0, 0x30, 0x18, 0xC0, 0xC6, 0x00, 0x00, 0x3F,
0x03, 0x06, 0x30, 0x19, 0x80, 0xD8, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x0C,
0x60, 0xC0, 0xF8, 0x00, 0x30, 0x60, 0xA2, 0x44, 0xD8, 0xA1, 0x80, 0xFF,
0xC0, 0xC6, 0x30, 0x7E, 0x71, 0xB0, 0xC0, 0x60, 0xF3, 0xDB, 0x0D, 0x86,
0xC7, 0x3D, 0xC0, 0xC0, 0x60, 0x30, 0x1B, 0xCE, 0x36, 0x0F, 0x07, 0x83,
0xC1, 0xE0, 0xF0, 0x7C, 0x6D, 0xE0, 0x3C, 0x66, 0xC3, 0xC0, 0xC0, 0xC0,
0xC0, 0xC3, 0x66, 0x3C, 0x03, 0x03, 0x03, 0x3B, 0x67, 0xC3, 0xC3, 0xC3,
0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x3C, 0x66, 0xC3, 0xC3, 0xFF, 0xC0, 0xC0,
0xC3, 0x66, 0x3C, 0x36, 0x6F, 0x66, 0x66, 0x66, 0x66, 0x60, 0x3B, 0x67,
0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x03, 0x03, 0xC6, 0x7C,
0xC0, 0xC0, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3,
0xC3, 0xC3, 0xFF, 0xFF, 0xC0, 0x30, 0x03, 0x33, 0x33, 0x33, 0x33, 0x33,
0x33, 0xE0, 0xC0, 0x60, 0x30, 0x18, 0x4C, 0x46, 0x63, 0x61, 0xF0, 0xEC,
0x62, 0x31, 0x98, 0x6C, 0x30, 0xFF, 0xFF, 0xFF, 0xC0, 0xDE, 0xF7, 0x1C,
0xF0, 0xC7, 0x86, 0x3C, 0x31, 0xE1, 0x8F, 0x0C, 0x78, 0x63, 0xC3, 0x1E,
0x18, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3,
0x3C, 0x66, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x66, 0x3C, 0xDE, 0x71,
0xB0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xE3, 0x6F, 0x30, 0x18, 0x0C,
0x00, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x03,
0x03, 0x03, 0xDF, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x00, 0x3E, 0xE3, 0xC0,
0xC0, 0xE0, 0x3C, 0x07, 0xC3, 0xE3, 0x7E, 0x66, 0xF6, 0x66, 0x66, 0x66,
0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC7, 0x7B, 0xC1,
0xA0, 0x98, 0xCC, 0x42, 0x21, 0xB0, 0xD0, 0x28, 0x1C, 0x0C, 0x00, 0xC6,
0x1E, 0x38, 0x91, 0xC4, 0xCA, 0x66, 0xD3, 0x16, 0xD0, 0xA6, 0x87, 0x1C,
0x38, 0xC0, 0xC6, 0x00, 0x43, 0x62, 0x36, 0x1C, 0x18, 0x1C, 0x3C, 0x26,
0x62, 0x43, 0xC1, 0x21, 0x98, 0xCC, 0x42, 0x61, 0xB0, 0xD0, 0x38, 0x1C,
0x0C, 0x06, 0x03, 0x01, 0x03, 0x00, 0xFE, 0x0C, 0x30, 0xC1, 0x86, 0x18,
0x20, 0xC1, 0xFC, 0x18, 0x12, 0x06, 0x00, 0x07, 0xE6, 0x18, 0x3C, 0xF6,
0xC7, 0x3D, 0xC0, 0x36, 0x1B, 0x00, 0x00, 0x07, 0xE6, 0x38, 0x3C, 0xF6,
0xC7, 0x3D, 0xC0, 0x66, 0x66, 0x00, 0x3C, 0x66, 0xC3, 0xC3, 0xC3, 0x66,
0x3C, 0x61, 0x24, 0x38
};
const GFXglyph Pch9Glyphs[] PROGMEM = {
{ 0, 0, 0, 5, 0, 1 }, // 0x20 ' '
{ 4, 2, 13, 6, 2, -12 }, // 0x21 '!'
{ 8, 5, 4, 6, 1, -12 }, // 0x22 '"'
{ 11, 10, 12, 10, 0, -11 }, // 0x23 '#'
{ 26, 9, 16, 10, 1, -13 }, // 0x24 '$'
{ 44, 16, 13, 16, 1, -12 }, // 0x25 '%'
{ 70, 11, 13, 12, 1, -12 }, // 0x26 '&'
{ 88, 2, 4, 4, 1, -12 }, // 0x27 '''
{ 89, 4, 17, 6, 1, -12 }, // 0x28 '('
{ 98, 4, 17, 6, 1, -12 }, // 0x29 ')'
{ 107, 5, 5, 7, 1, -12 }, // 0x2A '*'
{ 111, 6, 8, 11, 3, -7 }, // 0x2B '+'
{ 117, 2, 4, 5, 2, 0 }, // 0x2C ','
{ 118, 4, 1, 6, 1, -4 }, // 0x2D '-'
{ 119, 2, 1, 5, 1, 0 }, // 0x2E '.'
{ 120, 5, 13, 5, 0, -12 }, // 0x2F '/'
{ 129, 8, 13, 10, 1, -12 }, // 0x30 '0'
{ 142, 4, 13, 10, 3, -12 }, // 0x31 '1'
{ 149, 9, 13, 10, 1, -12 }, // 0x32 '2'
{ 164, 8, 13, 10, 1, -12 }, // 0x33 '3'
{ 177, 7, 13, 10, 2, -12 }, // 0x34 '4'
{ 189, 9, 13, 10, 1, -12 }, // 0x35 '5'
{ 204, 9, 13, 10, 1, -12 }, // 0x36 '6'
{ 219, 8, 13, 10, 0, -12 }, // 0x37 '7'
{ 232, 9, 13, 10, 1, -12 }, // 0x38 '8'
{ 247, 8, 13, 10, 1, -12 }, // 0x39 '9'
{ 260, 2, 10, 5, 1, -9 }, // 0x3A ':'
{ 263, 3, 12, 5, 1, -8 }, // 0x3B ';'
{ 268, 9, 9, 11, 1, -8 }, // 0x3C '<'
{ 279, 9, 4, 11, 1, -5 }, // 0x3D '='
{ 284, 9, 9, 11, 1, -8 }, // 0x3E '>'
{ 295, 9, 13, 10, 1, -12 }, // 0x3F '?'
{ 310, 17, 16, 18, 1, -12 }, // 0x40 '@'
{ 344, 12, 13, 12, 0, -12 }, // 0x41 'A'
{ 364, 11, 13, 12, 1, -12 }, // 0x42 'B'
{ 382, 11, 13, 13, 1, -12 }, // 0x43 'C'
{ 400, 11, 13, 13, 1, -12 }, // 0x44 'D'
{ 418, 9, 13, 11, 1, -12 }, // 0x45 'E'
{ 433, 8, 13, 11, 1, -12 }, // 0x46 'F'
{ 446, 12, 13, 14, 1, -12 }, // 0x47 'G'
{ 466, 11, 13, 13, 1, -12 }, // 0x48 'H'
{ 484, 2, 13, 5, 2, -12 }, // 0x49 'I'
{ 488, 7, 13, 10, 1, -12 }, // 0x4A 'J'
{ 500, 11, 13, 12, 1, -12 }, // 0x4B 'K'
{ 518, 8, 13, 10, 1, -12 }, // 0x4C 'L'
{ 531, 13, 13, 15, 1, -12 }, // 0x4D 'M'
{ 553, 11, 13, 13, 1, -12 }, // 0x4E 'N'
{ 571, 13, 13, 14, 1, -12 }, // 0x4F 'O'
{ 593, 10, 13, 12, 1, -12 }, // 0x50 'P'
{ 610, 13, 14, 14, 1, -12 }, // 0x51 'Q'
{ 633, 12, 13, 13, 1, -12 }, // 0x52 'R'
{ 653, 10, 13, 12, 1, -12 }, // 0x53 'S'
{ 670, 9, 13, 11, 1, -12 }, // 0x54 'T'
{ 685, 11, 13, 13, 1, -12 }, // 0x55 'U'
{ 703, 11, 13, 12, 0, -12 }, // 0x56 'V'
{ 721, 17, 13, 17, 0, -12 }, // 0x57 'W'
{ 749, 12, 13, 12, 0, -12 }, // 0x58 'X'
{ 769, 12, 13, 12, 0, -12 }, // 0x59 'Y'
{ 789, 10, 13, 11, 1, -12 }, // 0x5A 'Z'
{ 806, 12, 13, 12, 0, -12 }, // 0x5B '[' //pch Å
{ 826, 12, 13, 12, 0, -12 }, // 0x5C '\' //pch Ä
{ 846, 13, 13, 14, 1, -12 }, // 0x5D ']' //pch Ö
{ 868, 7, 7, 8, 1, -12 }, // 0x5E '^'
{ 875, 10, 1, 10, 0, 3 }, // 0x5F '_'
{ 877, 4, 3, 5, 0, -12 }, // 0x60 '`'
{ 879, 9, 10, 10, 1, -9 }, // 0x61 'a'
{ 891, 9, 13, 10, 1, -12 }, // 0x62 'b'
{ 906, 8, 10, 9, 1, -9 }, // 0x63 'c'
{ 916, 8, 13, 10, 1, -12 }, // 0x64 'd'
{ 929, 8, 10, 10, 1, -9 }, // 0x65 'e'
{ 939, 4, 13, 5, 1, -12 }, // 0x66 'f'
{ 946, 8, 14, 10, 1, -9 }, // 0x67 'g'
{ 960, 8, 13, 10, 1, -12 }, // 0x68 'h'
{ 973, 2, 13, 4, 1, -12 }, // 0x69 'i'
{ 977, 4, 17, 4, 0, -12 }, // 0x6A 'j'
{ 986, 9, 13, 9, 1, -12 }, // 0x6B 'k'
{ 1001, 2, 13, 4, 1, -12 }, // 0x6C 'l'
{ 1005, 13, 10, 15, 1, -9 }, // 0x6D 'm'
{ 1022, 8, 10, 10, 1, -9 }, // 0x6E 'n'
{ 1032, 8, 10, 10, 1, -9 }, // 0x6F 'o'
{ 1042, 9, 13, 10, 1, -9 }, // 0x70 'p'
{ 1057, 8, 13, 10, 1, -9 }, // 0x71 'q'
{ 1070, 5, 10, 6, 1, -9 }, // 0x72 'r'
{ 1077, 8, 10, 9, 1, -9 }, // 0x73 's'
{ 1087, 4, 12, 5, 1, -11 }, // 0x74 't'
{ 1093, 8, 10, 10, 1, -9 }, // 0x75 'u'
{ 1103, 9, 10, 9, 0, -9 }, // 0x76 'v'
{ 1115, 13, 10, 13, 0, -9 }, // 0x77 'w'
{ 1132, 8, 10, 9, 0, -9 }, // 0x78 'x'
{ 1142, 9, 14, 9, 0, -9 }, // 0x79 'y'
{ 1158, 7, 10, 9, 1, -9 }, // 0x7A 'z'
{ 1167, 9, 10, 10, 1, -9 }, // 0x7B '{' //pch å
{ 1179, 9, 10, 10, 1, -9 }, // 0x7C '|' //pch ä
{ 1191, 8, 10, 10, 1, -9 }, // 0x7D '}' //pch ö
{ 1201, 7, 3, 9, 1, -7 } // 0x7E '~'
};
const GFXfont Pch9 PROGMEM = {(uint8_t *)Pch9Bitmaps,
(GFXglyph *)Pch9Glyphs, 0x20, 0x7E, 22};
Bara stora bokstäver,
Tar mindre plats av minnet.


I detta exempel är skärmen kopplad med parallell inteface, se parallell.
Fonten är 24 pixel hög;' .
Fonten innehåller tecken från 32(0x20) till 93(0x5D) i ASCii-tabellen.
Bara stora bokstäver, men flera andra tecken är också avstängda i spannet .
Filen 'pchLight.h' är Skapad av PchButik och finns inte i 'TFT_eSPI.h'.
Fonten är 24 pixel hög;' .
Fonten innehåller tecken från 32(0x20) till 93(0x5D) i ASCii-tabellen.
Bara stora bokstäver, men flera andra tecken är också avstängda i spannet .
Filen 'pchLight.h' är Skapad av PchButik och finns inte i 'TFT_eSPI.h'.
Kod för att visa ÅÄÖ. fil: 'pchLight.cpp'
#include <Arduino.h>
#include "TFT_eSPI.h"
// The custom font file attached to this sketch must be included
// pchLight ENDAST STORA BOKSTÄVER, SIFFROR, PUNKT och MELLANRUM
#include "pchLight.h"
// Easily remembered name for the font
#define MYFONT &pchLight
// Use hardware SPI
TFT_eSPI tft = TFT_eSPI();
uint16_t pchOrange = tft.color565(220,40,0);//Denna är orange vid RGB)
void setup(void) {
tft.begin();
tft.setRotation(1);
tft.setFreeFont(MYFONT);
tft.setTextSize(1);
tft.setCursor(0,50);
tft.fillScreen(TFT_GREEN);
tft.fillRect(0,0,tft.width(),65,TFT_BLACK);
tft.setTextColor(pchOrange, TFT_BLACK);
tft.println("PCHBUTIK.SE");
tft.fillRect(0,66,tft.width(),137, TFT_GREEN);
tft.setTextColor(TFT_BLACK, TFT_GREEN);
tft.setCursor(0, 130);
// [ = Å
// \ = Ä
// ] = Ö
// \ (backslash) är ett special tecken och nästa tecken efter skrivs ut.
tft.print("...[\\]...");
tft.setCursor(0, 185);
tft.setTextColor(TFT_BLUE, TFT_GREEN);
tft.print("7 TUM FULLF\\RG TFT LCD");
tft.setCursor(0, 240);
tft.setTextColor(TFT_RED, TFT_GREEN);
tft.print("800 X 480 PIXEL, 133 DPI");
tft.setCursor(0,305);
tft.setTextColor(TFT_DARKCYAN, TFT_GREEN);
tft.print("DRIVER SSD1963");
tft.fillRect(0,330,tft.width(), 44, tft.color565(31,31,31)); //mörk grå
tft.fillRect(0,332,20, 20, tft.color565(255,0,0));
tft.fillRect(20,352,20, 20, tft.color565(0,255,0));
tft.fillRect(40,332,20, 20, tft.color565(0,0,255));
tft.fillRect(60,352,20, 20, tft.color565(255,255,0));
tft.fillRect(80,332,20, 20, tft.color565(0,255,255));
tft.fillRect(100,352,20, 20, tft.color565(255,0,255));
tft.fillRect(120,332,20, 20, tft.color565(0,0,0));
tft.fillRect(140,352,20, 20, tft.color565(255,255,255));
}
void loop() {}
Font data. fil: 'pchLight.h'
const uint8_t pchLightBitmaps[] PROGMEM = {
0x7B, 0xEF, 0xFF, 0xFF, 0xF7, 0x9E, 0x71, 0xC7, 0x0C, 0x20, 0x82, 0x00,
0x00, 0x07, 0x3E, 0xFF, 0xFF, 0xDC, 0x7B, 0xFF, 0xFF, 0xFD, 0xE0, 0x03,
0xC0, 0x0E, 0x70, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x7C, 0x3E, 0x7C,
0x3E, 0x7C, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC,
0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3E, 0x7C, 0x3E, 0x7C,
0x3E, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x03, 0xC0, 0x00,
0xC0, 0x3C, 0x0F, 0xC3, 0xFC, 0x4F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F,
0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F,
0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x1F, 0xEF, 0xFF, 0x03,
0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3F, 0xFC, 0x30, 0xFE, 0x60, 0x7E, 0x40,
0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x78, 0x00,
0x70, 0x00, 0xE0, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x01, 0x0C,
0x03, 0x1F, 0xFF, 0x1F, 0xFF, 0x3F, 0xFE, 0x7F, 0xFE, 0xFF, 0xFE, 0x03,
0xF0, 0x0F, 0xF8, 0x3F, 0xFC, 0x21, 0xFE, 0x40, 0xFE, 0x00, 0x7E, 0x00,
0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xFC, 0x03, 0xFE, 0x00,
0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00,
0x0E, 0x70, 0x0E, 0xFC, 0x1C, 0xFE, 0x38, 0x7F, 0xE0, 0x3F, 0x80, 0x00,
0x38, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x5F, 0x00, 0xBE,
0x02, 0x7C, 0x08, 0xF8, 0x31, 0xF0, 0x43, 0xE1, 0x07, 0xC4, 0x0F, 0x88,
0x1F, 0x20, 0x3E, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x07,
0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x0F, 0xFE, 0x1F, 0xF8,
0x7F, 0xF0, 0xFF, 0xE1, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x3F,
0x80, 0xFF, 0xC1, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0x80, 0x3F, 0x80, 0x0F,
0x00, 0x0E, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x37, 0x80, 0x4F, 0x81, 0x9F,
0xC6, 0x3F, 0xF8, 0x1F, 0x80, 0x00, 0x07, 0x00, 0x7C, 0x01, 0xF0, 0x03,
0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, 0x7F,
0xF0, 0x7F, 0xFC, 0xFC, 0x7E, 0xFC, 0x7E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC,
0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0x7C, 0x3F, 0x7C, 0x3E, 0x3C, 0x3E, 0x3E,
0x3C, 0x1E, 0x78, 0x07, 0xE0, 0x7F, 0xFF, 0x7F, 0xFE, 0x7F, 0xFE, 0xFF,
0xFE, 0xFF, 0xFC, 0xC0, 0x1C, 0x80, 0x18, 0x80, 0x38, 0x00, 0x38, 0x00,
0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x01,
0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, 0x07,
0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0xE0, 0x38, 0x78, 0x70, 0x3C, 0xF0,
0x1E, 0xF0, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xFE, 0x3C, 0x7F, 0xB0, 0x7F,
0xE0, 0x3F, 0xF0, 0x0F, 0xF8, 0x1F, 0xFC, 0x39, 0xFE, 0x70, 0xFF, 0xF0,
0x3F, 0xF0, 0x3F, 0xF0, 0x1F, 0xF0, 0x1F, 0xF0, 0x1E, 0x78, 0x3E, 0x7C,
0x7C, 0x3F, 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x1E, 0x78, 0x3C, 0x7C, 0x7C,
0x3C, 0x7C, 0x3E, 0xFC, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC,
0x3F, 0xFC, 0x3F, 0x7E, 0x3F, 0x7E, 0x3F, 0x3F, 0xFE, 0x0F, 0xFE, 0x00,
0x7E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xC0, 0x0F,
0x80, 0x3E, 0x00, 0xE0, 0x00, 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00,
0x38, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00,
0xFE, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, 0xBF, 0x00, 0x01,
0x1F, 0x00, 0x03, 0x1F, 0x80, 0x02, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06,
0x0F, 0xC0, 0x04, 0x07, 0xE0, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18,
0x03, 0xF0, 0x18, 0x03, 0xF0, 0x30, 0x01, 0xF8, 0x30, 0x01, 0xF8, 0x70,
0x01, 0xFC, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xE1,
0xF8, 0x3F, 0x07, 0xC1, 0xF8, 0x3F, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3,
0xF0, 0x7E, 0x1F, 0x87, 0xE0, 0xFC, 0x7C, 0x07, 0xFF, 0x00, 0x3F, 0xFF,
0x01, 0xF8, 0xFE, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, 0x3F, 0x1F,
0x81, 0xF8, 0xFC, 0x0F, 0xC7, 0xE0, 0x7E, 0x3F, 0x03, 0xF1, 0xF8, 0x3F,
0x0F, 0xC3, 0xF0, 0xFF, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x7E, 0x04, 0x07,
0xFF, 0x18, 0x1F, 0x07, 0xF0, 0x7C, 0x03, 0xE1, 0xF0, 0x03, 0xC7, 0xC0,
0x03, 0x9F, 0x80, 0x03, 0x3F, 0x00, 0x06, 0x7C, 0x00, 0x05, 0xF8, 0x00,
0x03, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00,
0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x01,
0xF8, 0x00, 0x01, 0xF0, 0x00, 0x23, 0xF0, 0x00, 0xC3, 0xF0, 0x07, 0x03,
0xF0, 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F,
0xFF, 0x00, 0x7E, 0x1F, 0x80, 0xFC, 0x1F, 0x81, 0xF8, 0x1F, 0x83, 0xF0,
0x1F, 0x07, 0xE0, 0x3F, 0x0F, 0xC0, 0x7E, 0x1F, 0x80, 0x7E, 0x3F, 0x00,
0xFC, 0x7E, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x0F,
0xC7, 0xE0, 0x1F, 0x8F, 0xC0, 0x3F, 0x1F, 0x80, 0x7C, 0x3F, 0x01, 0xF8,
0x7E, 0x03, 0xE0, 0xFC, 0x0F, 0x81, 0xF8, 0x1F, 0x03, 0xF0, 0xFC, 0x0F,
0xFF, 0xE0, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xC0,
0x78, 0x7E, 0x01, 0xC3, 0xF0, 0x06, 0x1F, 0x80, 0x10, 0xFC, 0x10, 0x87,
0xE0, 0x80, 0x3F, 0x0C, 0x01, 0xF8, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xF8,
0x03, 0xF1, 0xC0, 0x1F, 0x86, 0x00, 0xFC, 0x10, 0x07, 0xE0, 0x80, 0x3F,
0x00, 0x09, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F,
0x1F, 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xFF,
0xFC, 0xFC, 0x0F, 0x9F, 0x80, 0x73, 0xF0, 0x06, 0x7E, 0x00, 0x4F, 0xC1,
0x09, 0xF8, 0x20, 0x3F, 0x0C, 0x07, 0xE3, 0x80, 0xFF, 0xF0, 0x1F, 0xFE,
0x03, 0xF1, 0xC0, 0x7E, 0x18, 0x0F, 0xC1, 0x01, 0xF8, 0x20, 0x3F, 0x00,
0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00,
0x1F, 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7E, 0x02, 0x01, 0xFF, 0xE3, 0x01,
0xF0, 0x3F, 0x81, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xE1, 0xF0, 0x00, 0x71,
0xF8, 0x00, 0x18, 0xFC, 0x00, 0x0C, 0x7C, 0x00, 0x02, 0x7E, 0x00, 0x00,
0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00,
0x03, 0xF0, 0x0F, 0xFF, 0xF8, 0x01, 0xFE, 0x7C, 0x00, 0x7E, 0x3F, 0x00,
0x3F, 0x1F, 0x80, 0x1F, 0x87, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0xFC,
0x03, 0xF0, 0x1F, 0x83, 0xF0, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0x80, 0x00,
0xFF, 0xC3, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC,
0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC,
0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC,
0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC,
0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC,
0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x7F, 0x81, 0xFE, 0xFF, 0xC3, 0xFF,
0xFF, 0xEF, 0xF0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F,
0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07,
0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0xE7, 0xFF, 0x07, 0xFF, 0x01,
0xFE, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00,
0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00,
0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00,
0xFC, 0x70, 0xFC, 0xF8, 0xFC, 0xF8, 0xF8, 0xF0, 0xF8, 0x71, 0xF0, 0x7F,
0xE0, 0x1F, 0x80, 0xFF, 0xC3, 0xFF, 0x3F, 0xC0, 0x3E, 0x0F, 0xC0, 0x1C,
0x07, 0xE0, 0x18, 0x03, 0xF0, 0x18, 0x01, 0xF8, 0x18, 0x00, 0xFC, 0x18,
0x00, 0x7E, 0x18, 0x00, 0x3F, 0x18, 0x00, 0x1F, 0x9C, 0x00, 0x0F, 0xDF,
0x00, 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xF0, 0x01, 0xF9, 0xF8, 0x00, 0xFC,
0xFE, 0x00, 0x7E, 0x3F, 0x80, 0x3F, 0x0F, 0xE0, 0x1F, 0x83, 0xF8, 0x0F,
0xC0, 0xFC, 0x07, 0xE0, 0x7F, 0x03, 0xF0, 0x1F, 0xC1, 0xF8, 0x07, 0xF1,
0xFE, 0x03, 0xFD, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0x03, 0xFC, 0x00, 0x0F,
0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00,
0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E,
0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x01,
0x3F, 0x00, 0x19, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0,
0x0F, 0x1F, 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0x80, 0x03,
0xFE, 0x7F, 0x00, 0x07, 0xF8, 0x7E, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x3F,
0xC1, 0x7C, 0x00, 0x5F, 0x82, 0xFC, 0x01, 0xBF, 0x05, 0xF8, 0x02, 0x7E,
0x09, 0xF8, 0x0C, 0xFC, 0x13, 0xF0, 0x11, 0xF8, 0x23, 0xE0, 0x23, 0xF0,
0x47, 0xE0, 0xC7, 0xE0, 0x87, 0xC1, 0x0F, 0xC1, 0x0F, 0xC6, 0x1F, 0x82,
0x0F, 0x88, 0x3F, 0x04, 0x1F, 0xB0, 0x7E, 0x08, 0x3F, 0x60, 0xFC, 0x10,
0x3E, 0x81, 0xF8, 0x20, 0x7F, 0x03, 0xF0, 0x40, 0x7C, 0x07, 0xE0, 0x80,
0xF8, 0x0F, 0xC1, 0x00, 0xE0, 0x1F, 0x82, 0x01, 0xC0, 0x3F, 0x0E, 0x03,
0x80, 0xFF, 0x7F, 0x82, 0x03, 0xFF, 0xFE, 0x00, 0xFE, 0xFE, 0x00, 0x70,
0xFE, 0x00, 0x40, 0xFE, 0x00, 0x81, 0xFC, 0x01, 0x03, 0xFC, 0x02, 0x05,
0xFC, 0x04, 0x09, 0xFC, 0x08, 0x11, 0xFC, 0x10, 0x23, 0xF8, 0x20, 0x43,
0xF8, 0x40, 0x83, 0xF8, 0x81, 0x03, 0xF9, 0x02, 0x03, 0xFA, 0x04, 0x03,
0xF4, 0x08, 0x07, 0xF8, 0x10, 0x07, 0xF0, 0x20, 0x07, 0xE0, 0x40, 0x07,
0xC0, 0x80, 0x07, 0x81, 0x00, 0x0F, 0x02, 0x00, 0x0E, 0x0E, 0x00, 0x0C,
0x7F, 0x00, 0x08, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xF0, 0x7C,
0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xF1, 0xF8, 0x00,
0xFC, 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xFF, 0x00,
0x07, 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0xF0,
0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F,
0x80, 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, 0xFC, 0x07, 0xE0,
0x3F, 0x07, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC,
0x0F, 0xFF, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0xE3, 0xF0, 0x7E, 0x7E, 0x0F,
0xCF, 0xC1, 0xF9, 0xF8, 0x3F, 0x3F, 0x07, 0xE7, 0xE0, 0xFC, 0xFC, 0x3F,
0x1F, 0x8F, 0xC3, 0xFF, 0xF0, 0x7F, 0xF8, 0x0F, 0xC0, 0x01, 0xF8, 0x00,
0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00,
0x7E, 0x00, 0x1F, 0xE0, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF,
0xF0, 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0,
0x01, 0xF1, 0xF8, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E,
0x00, 0x0F, 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF,
0xE0, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F,
0x3E, 0x00, 0x0F, 0x9F, 0x80, 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07,
0xC0, 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xC0, 0x03, 0xFF, 0x80, 0x00, 0x7F,
0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x00,
0xFF, 0xF8, 0x00, 0x0F, 0xE0, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0xFC,
0x3F, 0x01, 0xF8, 0x3F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, 0xC0,
0xFC, 0x1F, 0x81, 0xF8, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, 0x1F,
0x81, 0xF8, 0x7E, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x0F, 0xDF, 0xC0,
0x1F, 0x9F, 0x80, 0x3F, 0x1F, 0x80, 0x7E, 0x3F, 0x80, 0xFC, 0x3F, 0x81,
0xF8, 0x3F, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x7F, 0x1F, 0xE0, 0x7F, 0x7F,
0xE0, 0xFF, 0x07, 0xC2, 0x1F, 0xF2, 0x3C, 0x3E, 0x70, 0x0E, 0xF0, 0x06,
0xF0, 0x06, 0xF0, 0x02, 0xF8, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0xE0,
0x3F, 0xF8, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFF, 0x00, 0x3F,
0x80, 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0E, 0xF0, 0x1E, 0xF8, 0x3C,
0x9F, 0xF8, 0x87, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7E, 0x3F,
0x83, 0xF0, 0x7C, 0x1F, 0x81, 0xC0, 0xFC, 0x06, 0x07, 0xE0, 0x20, 0x3F,
0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00,
0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8,
0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00,
0xFC, 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xE0, 0xFF, 0xC1, 0xFD, 0xFE, 0x01,
0xC3, 0xF0, 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83,
0xF0, 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0,
0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02,
0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F,
0xC0, 0x18, 0x1F, 0x80, 0x40, 0x7E, 0x03, 0x00, 0xFC, 0x18, 0x01, 0xFF,
0xC0, 0x00, 0xFC, 0x00, 0xFF, 0xF0, 0x7F, 0x3F, 0xC0, 0x1E, 0x1F, 0x80,
0x0C, 0x1F, 0x80, 0x08, 0x0F, 0xC0, 0x18, 0x0F, 0xC0, 0x18, 0x07, 0xE0,
0x10, 0x07, 0xE0, 0x30, 0x07, 0xE0, 0x20, 0x03, 0xF0, 0x60, 0x03, 0xF0,
0x60, 0x01, 0xF8, 0x40, 0x01, 0xF8, 0xC0, 0x00, 0xF8, 0x80, 0x00, 0xFC,
0x80, 0x00, 0xFD, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3E,
0x00, 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C,
0x00, 0x00, 0x0C, 0x00, 0xFF, 0xE7, 0xFF, 0x0F, 0xCF, 0xE0, 0x7F, 0x00,
0xE1, 0xF8, 0x0F, 0xC0, 0x30, 0x7E, 0x03, 0xF0, 0x0C, 0x1F, 0x80, 0x7C,
0x02, 0x03, 0xE0, 0x1F, 0x81, 0x80, 0xFC, 0x07, 0xE0, 0x60, 0x3F, 0x03,
0xF8, 0x10, 0x07, 0xC0, 0xBF, 0x0C, 0x01, 0xF8, 0x2F, 0xC3, 0x00, 0x7E,
0x19, 0xF0, 0x80, 0x0F, 0x84, 0x7C, 0x60, 0x03, 0xF3, 0x0F, 0x98, 0x00,
0xFC, 0xC3, 0xE4, 0x00, 0x1F, 0x20, 0xFB, 0x00, 0x07, 0xF8, 0x1F, 0xC0,
0x00, 0xFC, 0x07, 0xE0, 0x00, 0x3F, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x3E,
0x00, 0x01, 0xE0, 0x0F, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x00, 0x1C, 0x00,
0x70, 0x00, 0x03, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x06, 0x00, 0x00, 0x20,
0x00, 0x80, 0x00, 0xFF, 0xF3, 0xFE, 0x7F, 0x80, 0x78, 0x3F, 0x80, 0x70,
0x1F, 0xC0, 0x60, 0x0F, 0xC0, 0xC0, 0x0F, 0xE1, 0x80, 0x07, 0xF1, 0x00,
0x03, 0xF3, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00,
0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80,
0x00, 0x9F, 0x80, 0x01, 0x8F, 0xC0, 0x03, 0x0F, 0xE0, 0x06, 0x07, 0xE0,
0x06, 0x07, 0xF0, 0x0C, 0x03, 0xF8, 0x1C, 0x03, 0xF8, 0x3C, 0x03, 0xFC,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0x7F, 0x80, 0x1E, 0x3F, 0x80, 0x1C,
0x1F, 0x80, 0x18, 0x1F, 0xC0, 0x10, 0x0F, 0xC0, 0x30, 0x07, 0xE0, 0x20,
0x07, 0xE0, 0x60, 0x03, 0xF0, 0xC0, 0x03, 0xF0, 0x80, 0x01, 0xF9, 0x80,
0x01, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00,
0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00,
0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x00,
0x01, 0xFF, 0x80, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x9F, 0x01, 0xF8, 0xE0,
0x1F, 0x86, 0x01, 0xFC, 0x20, 0x0F, 0xC1, 0x00, 0xFC, 0x00, 0x07, 0xE0,
0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x3F,
0x80, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x01, 0x0F, 0xC0, 0x18,
0xFC, 0x00, 0xC7, 0xE0, 0x06, 0x7E, 0x00, 0x77, 0xF0, 0x07, 0x3F, 0x00,
0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0x00, 0xFC, 0x00, 0x01, 0xFE, 0x00,
0x01, 0x86, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00,
0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, 0xBF, 0x00,
0x01, 0x1F, 0x00, 0x03, 0x1F, 0x80, 0x02, 0x1F, 0x80, 0x06, 0x0F, 0xC0,
0x06, 0x0F, 0xC0, 0x04, 0x07, 0xE0, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0,
0x18, 0x03, 0xF0, 0x18, 0x03, 0xF0, 0x30, 0x01, 0xF8, 0x30, 0x01, 0xF8,
0x70, 0x01, 0xFC, 0xFE, 0x0F, 0xFF, 0x03, 0x11, 0x80, 0x07, 0xBB, 0xC0,
0x03, 0x39, 0x80, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00,
0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, 0xBF, 0x00,
0x01, 0x1F, 0x00, 0x03, 0x1F, 0x80, 0x02, 0x1F, 0x80, 0x06, 0x0F, 0xC0,
0x06, 0x0F, 0xC0, 0x04, 0x07, 0xE0, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0,
0x18, 0x03, 0xF0, 0x18, 0x03, 0xF0, 0x30, 0x01, 0xF8, 0x30, 0x01, 0xF8,
0x70, 0x01, 0xFC, 0xFE, 0x0F, 0xFF, 0x07, 0x00, 0x70, 0x0F, 0x80, 0xF8,
0x07, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xC0,
0x03, 0xFF, 0xE0, 0x07, 0xC0, 0xF0, 0x0F, 0x80, 0x78, 0x1F, 0x00, 0x3C,
0x3E, 0x00, 0x1E, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x1F,
0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x3F,
0x7E, 0x00, 0x3F, 0x3E, 0x00, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0x80, 0xFC,
0x0F, 0xC1, 0xF0, 0x03, 0xFF, 0xE0, 0x00, 0x7F, 0x00
};
const GFXglyph pchLightGlyphs[] PROGMEM = {
{ 0, 0, 0, 9, 0, 1 }, // 0x20 ' '
{ 0, 0, 0, 0, 0, 0 }, // 0x21 '!'
{ 0, 0, 0, 0, 0, 0 }, // 0x22 '"'
{ 0, 0, 0, 0, 0, 0 }, // 0x23 '#'
{ 0, 0, 0, 0, 0, 0 }, // 0x24 '$'
{ 0, 0, 0, 0, 0, 0 }, // 0x25 '%'
{ 0, 0, 0, 0, 0, 0 }, // 0x26 '&'
{ 0, 0, 0, 0, 0, 0 }, // 0x27 '''
{ 0, 0, 0, 0, 0, 0 }, // 0x28 '('
{ 0, 0, 0, 0, 0, 0 }, // 0x29 ')'
{ 0, 0, 0, 0, 0, 0 }, // 0x2A '*'
{ 0, 0, 0, 0, 0, 0 }, // 0x2B '+'
{ 0, 0, 0, 0, 0, 0 }, // 0x2C ','
{ 0, 0, 0, 0, 0, 0 }, // 0x2D '-'
{ 18, 6, 6, 9, 1, -5 }, // 0x2E '.'
{ 0, 0, 0, 0, 0, 0 }, // 0x2F '/'
{ 23, 16, 24, 18, 1, -23 }, // 0x30 '0'
{ 71, 12, 24, 18, 3, -23 }, // 0x31 '1'
{ 107, 16, 24, 17, 1, -23 }, // 0x32 '2'
{ 155, 16, 24, 18, 0, -23 }, // 0x33 '3'
{ 203, 15, 24, 18, 1, -23 }, // 0x34 '4'
{ 248, 15, 24, 18, 1, -23 }, // 0x35 '5'
{ 293, 16, 24, 18, 1, -23 }, // 0x36 '6'
{ 341, 16, 24, 17, 1, -23 }, // 0x37 '7'
{ 389, 16, 24, 17, 1, -23 }, // 0x38 '8'
{ 437, 16, 24, 18, 1, -23 }, // 0x39 '9'
{ 0, 0, 0, 0, 0, 0 }, // 0x3A ':'
{ 0, 0, 0, 0, 0, 0 }, // 0x3B ';'
{ 0, 0, 0, 0, 0, 0 }, // 0x3C '<'
{ 0, 0, 0, 0, 0, 0 }, // 0x3D '='
{ 0, 0, 0, 0, 0, 0 }, // 0x3E '>'
{ 0, 0, 0, 0, 0, 0 }, // 0x3F '?'
{ 0, 0, 0, 0, 0, 0 }, // 0x40 '@'
{ 485, 24, 24, 25, 1, -23 }, // 0x41 'A'
{ 557, 21, 24, 23, 1, -23 }, // 0x42 'B'
{ 620, 23, 25, 25, 1, -23 }, // 0x43 'C'
{ 692, 23, 24, 26, 1, -23 }, // 0x44 'D'
{ 761, 21, 24, 23, 2, -23 }, // 0x45 'E'
{ 824, 19, 24, 22, 2, -23 }, // 0x46 'F'
{ 881, 25, 25, 27, 1, -23 }, // 0x47 'G'
{ 960, 24, 24, 27, 2, -23 }, // 0x48 'H'
{ 1032, 11, 24, 14, 2, -23 }, // 0x49 'I'
{ 1065, 16, 27, 18, 0, -23 }, // 0x4A 'J'
{ 1119, 25, 24, 27, 2, -23 }, // 0x4B 'K'
{ 1194, 21, 24, 23, 2, -23 }, // 0x4C 'L'
{ 1257, 31, 24, 33, 1, -23 }, // 0x4D 'M'
{ 1350, 23, 24, 25, 1, -23 }, // 0x4E 'N'
{ 1419, 25, 25, 27, 1, -23 }, // 0x4F 'O'
{ 1498, 19, 24, 22, 2, -23 }, // 0x50 'P'
{ 1555, 25, 30, 27, 1, -23 }, // 0x51 'Q'
{ 1649, 23, 24, 25, 2, -23 }, // 0x52 'R'
{ 1718, 16, 25, 20, 2, -23 }, // 0x53 'S'
{ 1768, 21, 24, 23, 1, -23 }, // 0x54 'T'
{ 1831, 22, 25, 25, 2, -23 }, // 0x55 'U'
{ 1900, 24, 24, 25, 0, -23 }, // 0x56 'V'
{ 1972, 34, 25, 34, 0, -23 }, // 0x57 'W'
{ 2079, 24, 24, 25, 1, -23 }, // 0x58 'X'
{ 2151, 24, 24, 25, 1, -23 }, // 0x59 'Y'
{ 2223, 21, 24, 23, 1, -23 }, // 0x5A 'Z'
{ 2286, 24, 24, 25, 1, -23 }, // 0x5B '['
{ 2358, 24, 24, 25, 1, -23 }, // 0x5C '\'
{ 2430, 24, 25, 27, 1, -24 } // 0x5D ']'
};
const GFXfont pchLight PROGMEM = {
(uint8_t *)pchLightBitmaps,
(GFXglyph *)pchLightGlyphs, 0x20, 0x5D, 42 };

