//board STM32F103C9T6 (64Kb**(64Kb you should beliefe but STM building in 128KB and sellers dont tell)** 72Mhz) || tft: ILI9341 (240x320pixel 2,8" COLOR LCD SPI) || testprogramm uses Adafruit library have fun =^.^= marderchen //pins TFT ::VCC on 3.3V ::LED on 3.3V ::GND on GND :: CS on PB11 :: Reset on PA10 :: DC/RS on PA6 not connectet :: SCK on A5 :: MISO on A6 :: MOSI on A7 //pins touch T_clk = PB13 | T_cs = PA8 | T_din = MOSI = PB15 | T_D0 = PB13 | T_IRQ = PB12 #include "SPI.h" #include "Adafruit_GFX_AS.h" #include "Adafruit_ILI9341_STM.h" #include "XPT2046_touch.h" #include #define TFT_CS PB11 #define TFT_DC PA4 #define TFT_RST PA6 #define swap(a, b) { int16_t t = a; a = b; b = t; } #define CS_PIN PA8 // Chip Select pin Adafruit_ILI9341_STM tft = Adafruit_ILI9341_STM(TFT_CS, TFT_DC, TFT_RST); // Use hardware SPI #define screeny 18 CRGB leds[screeny]; CRGBPalette16 currentPalette; TBlendType currentBlending; SPIClass mySPI(2); //Create an SPI instance on SPI1 port. XPT2046_touch ts(CS_PIN, mySPI); // Chip Select pin, SPI port its not the chip from touchmodule but working fine uint16_t xy[2]; int ttt[3]; const unsigned char PROGMEM monstercat []= { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0x7F, 0xFF, 0xF0, // ############################################## ############### ################### 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF9, 0x3F, 0xFE, 0xFF, 0xFF, 0xC0, // ############################################# # ############# ################## 0xC3, 0x87, 0xFF, 0xFE, 0xFF, 0xFB, 0xBF, 0xFD, 0xFF, 0xFF, 0x30, // ## ### ################## ############# ### ############ ################# ## 0xDD, 0x77, 0xFF, 0xFD, 0x3F, 0x9B, 0xDF, 0xFB, 0xFF, 0xF8, 0xF0, // ## ### # ### ################# # ####### ## #### ########## ############### #### 0xDE, 0xF7, 0xFF, 0xFD, 0xD0, 0x67, 0xDF, 0xFB, 0xFF, 0xE7, 0xF0, // ## #### #### ################# ### # ## ##### ########## ############# ####### 0xDF, 0xF7, 0xFF, 0xFD, 0xEF, 0xFF, 0xEF, 0xF7, 0xFE, 0x1F, 0xF0, // ## ######### ################# #### ############### ######## ########## ######### 0xDB, 0xB7, 0xFF, 0xFD, 0xFC, 0x07, 0xF7, 0xFF, 0xF1, 0xFF, 0xF0, // ## ## ### ## ################# ####### ####### ############### ############# 0xD9, 0x37, 0xCF, 0xFD, 0xF0, 0x1F, 0xFB, 0xFF, 0xCF, 0xFF, 0xF0, // ## ## # ## ##### ########## ##### ########## ############ ################ 0xDA, 0xB7, 0xF3, 0xFD, 0xFF, 0xFF, 0xFD, 0xFF, 0x3F, 0xFF, 0xF0, // ## ## # # ## ####### ######## ####################### ######### ################## 0xC3, 0x87, 0xFC, 0xFB, 0xFF, 0xFF, 0xE5, 0xFF, 0xFF, 0xFF, 0xF0, // ## ### ######### ##### ##################### # ############################# 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xF4, 0xFF, 0xFF, 0xFF, 0xF0, // ############################ ####################### # ############################ 0xFF, 0xFF, 0xFF, 0xED, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xF0, // ########################### ## ######################### ########################## 0xC0, 0x07, 0xFF, 0xE9, 0xFF, 0xFF, 0xFF, 0x9F, 0x00, 0x00, 0x00, // ## ############## # ########################## ##### 0xDF, 0xF7, 0xFF, 0xEB, 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF0, // ## ######### ############## # ############################ ######################## 0xDF, 0xF7, 0xFF, 0xDF, 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF0, // ## ######### ############# ############################### ######################## 0xD8, 0x07, 0x01, 0xDF, 0xFF, 0xE3, 0x1F, 0xDF, 0xFF, 0xFF, 0xF0, // ## ## ### ### ################ ## ####### ######################### 0xDB, 0xFF, 0xFF, 0xDF, 0xFE, 0x01, 0x0F, 0xBF, 0xF3, 0xFF, 0xF0, // ## ## #################### ############ # ##### ########## ############## 0xD8, 0x3F, 0xFF, 0xDF, 0xF2, 0x00, 0x0F, 0x7F, 0x7C, 0x1F, 0xF0, // ## ## ################ ######### # #### ####### ##### ######### 0xDF, 0xBF, 0xFF, 0xEF, 0xE0, 0x00, 0x0C, 0xC0, 0xFF, 0xE0, 0x70, // ## ###### ################# ####### ## ## ########### ### 0xD8, 0x3F, 0xF8, 0x77, 0xE0, 0x00, 0x0C, 0x1E, 0x7F, 0xFF, 0x80, // ## ## ########### ### ###### ## #### ################ 0xDB, 0xFF, 0xE7, 0xF8, 0xF0, 0x00, 0x8C, 0xFF, 0x7F, 0xFF, 0xF0, // ## ## ############# ######## #### # ## ######## ################### 0xD8, 0x07, 0x9F, 0xFF, 0x78, 0x43, 0xFB, 0xFF, 0x7F, 0xFF, 0xF0, // ## ## #### ############# #### # ####### ########## ################### 0xDF, 0xF7, 0x7F, 0xFF, 0xBC, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xF0, // ## ######### ### ################ #### ####################### ################### 0xDF, 0xF6, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xF0, // ## ######### ## ################## ########################### ################### 0xC0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xF0, // ## ############# ######################### #################### 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, // ######################### ################################ #################### 0xC0, 0x07, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, // ## ########### ############################### ######################## 0xDF, 0xF7, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xF0, // ## ######### ########## ################################# ######################### 0xDF, 0xF7, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF0, // ## ######### ########## ################################## ######################### 0xD8, 0x37, 0xFF, 0x7F, 0x3F, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF0, // ## ## ## ########### ####### ######################## ######################### 0xDB, 0xB7, 0xFF, 0x80, 0x1F, 0xE7, 0x1F, 0xDF, 0xFF, 0xFF, 0xF0, // ## ## ### ## ############ ######## ### ####### ######################### 0xDB, 0xB7, 0xFE, 0x00, 0x3F, 0xC7, 0xDF, 0xD1, 0xFF, 0xFF, 0xF0, // ## ## ### ## ########## ######## ##### ####### # ##################### 0xD8, 0x37, 0xFC, 0xFC, 0x7F, 0x87, 0xCF, 0x88, 0x3F, 0xFF, 0xF0, // ## ## ## ######### ###### ######## ##### ##### # ################## 0xDF, 0xF7, 0xF9, 0xFF, 0xFF, 0xBF, 0xEF, 0x8F, 0xBF, 0xFF, 0xF0, // ## ######### ######## ################## ######### ##### ##### ################## 0xDF, 0xF7, 0xFB, 0xC0, 0xFF, 0xBF, 0xEF, 0xFF, 0x9F, 0xFF, 0xF0, // ## ######### ######## #### ######### ######### ############# ################# 0xC0, 0x07, 0xFB, 0x9F, 0x7F, 0xBF, 0xEF, 0xFF, 0x9F, 0xFF, 0xF0, // ## ######## ### ##### ######## ######### ############# ################# 0xFF, 0xFF, 0xF8, 0x1F, 0x7F, 0xBF, 0xCF, 0xFF, 0xBF, 0xFF, 0xF0, // ##################### ##### ######## ######## ############# ################## 0xFF, 0xFF, 0xFC, 0x3F, 0x3F, 0x9F, 0xDF, 0xFF, 0x3F, 0xFF, 0xF0, // ###################### ###### ####### ####### ############# ################## 0xC3, 0x87, 0xFF, 0x3F, 0xBF, 0xDF, 0xDF, 0xF8, 0x7F, 0xFC, 0xF0, // ## ### ########### ####### ######## ####### ########## ############# #### 0xDB, 0xB7, 0xFF, 0xFF, 0xDF, 0xCF, 0xC0, 0x03, 0xFF, 0x9F, 0x70, // ## ## ### ## ##################### ####### ###### ########### ##### ### 0xDA, 0xB7, 0xFF, 0xF8, 0x0F, 0xEF, 0xFF, 0xFF, 0xFF, 0x9F, 0x70, // ## ## # # ## ################ ####### ############################# ##### ### 0xD9, 0x37, 0xFF, 0xF7, 0xC7, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0x70, // ## ## # ## ############### ##### ###### #################################### ### 0xDB, 0xB7, 0xFF, 0xEF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFC, 0xF0, // ## ## ### ## ############## ############### ################################## #### 0xDF, 0xF7, 0xFF, 0xEF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0x70, // ## ######### ############## ############### ################################### ### 0xDE, 0xF7, 0xFF, 0xEF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0x9F, 0x70, // ## #### #### ############## ################ ############################ ##### ### 0xDD, 0x77, 0xFF, 0xE7, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0x9F, 0x70, // ## ### # ### ############## ############### ############################ ##### ### 0xC3, 0x87, 0xFF, 0xF0, 0x78, 0x03, 0xFF, 0xFF, 0xFF, 0xFC, 0xF0, // ## ### ############### #### ################################ #### 0xFF, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, // ############################# ############################################## }; const unsigned char PROGMEM cat1 [] =//w58 h48 { 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ### 0x00, 0x3F, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, // ###### #### 0x00, 0x7F, 0x80, 0x1F, 0xC0, 0x00, 0x00, 0x00, // ######## ####### 0x00, 0xF1, 0xC0, 0x3D, 0xF0, 0x00, 0x00, 0x00, // #### ### #### ##### 0x01, 0xC0, 0xE0, 0x70, 0x38, 0x00, 0x00, 0x00, // ### ### ### ### 0x03, 0x80, 0x70, 0xE0, 0x1C, 0x00, 0x00, 0x00, // ### ### ### ### 0x07, 0x00, 0x79, 0xC0, 0x0E, 0x00, 0x00, 0x00, // ### #### ### ### 0x0E, 0x00, 0x3F, 0x80, 0x06, 0x00, 0x00, 0x00, // ### ####### ## 0x1C, 0x00, 0x3F, 0x00, 0x03, 0x00, 0x00, 0x00, // ### ###### ## 0x18, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00, // ## # ## 0x38, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, // ### ### 0x70, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // ### ## 0x70, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ### ### 0x60, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0xE0, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ### ### 0xEF, 0x00, 0x00, 0x03, 0xC0, 0xC0, 0x00, 0x00, // ### #### #### ## 0xDF, 0x80, 0x00, 0x07, 0xE0, 0xC0, 0x00, 0x00, // ## ###### ###### ## 0xF9, 0xC0, 0x30, 0x0E, 0x70, 0xC0, 0x00, 0x00, // ##### ### ## ### ### ## 0xF0, 0xC0, 0x30, 0x0C, 0x30, 0xC0, 0x00, 0x00, // #### ## ## ## ## ## 0xF0, 0xC2, 0x03, 0x8C, 0x30, 0xC0, 0x78, 0x00, // #### ## # ### ## ## ## #### 0xF9, 0xC6, 0x01, 0xCE, 0x70, 0xC1, 0xFC, 0x00, // ##### ### ## ### ### ### ## ####### 0xDF, 0x8C, 0x30, 0xC7, 0xE0, 0xC3, 0x8F, 0x00, // ## ###### ## ## ## ###### ## ### #### 0xCF, 0x0E, 0x79, 0xC3, 0xC0, 0xC3, 0x03, 0x80, // ## #### ### #### ### #### ## ## ### 0xC0, 0x03, 0xCF, 0x80, 0x00, 0xC3, 0x01, 0x80, // ## #### ##### ## ## ## 0xE0, 0x01, 0x87, 0x00, 0x01, 0xC3, 0x00, 0xC0, // ### ## ### ### ## ## 0xE0, 0x00, 0x00, 0x00, 0x01, 0xC3, 0x00, 0xC0, // ### ### ## ## 0x60, 0x00, 0x00, 0x00, 0x01, 0x81, 0x80, 0xC0, // ## ## ## ## 0x70, 0x00, 0x00, 0x00, 0x03, 0x81, 0xC0, 0xC0, // ### ### ### ## 0x3C, 0x00, 0x00, 0x00, 0x07, 0x00, 0xC0, 0xC0, // #### ### ## ## 0x1F, 0x00, 0x00, 0x00, 0x3E, 0x00, 0xC0, 0xC0, // ##### ##### ## ## 0x0F, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0xC0, 0xC0, // ######## ######### ## ## 0x01, 0xFF, 0xFF, 0xFF, 0xF7, 0x00, 0xC0, 0xC0, // ############################# ### ## ## 0x00, 0x7F, 0xFF, 0xFF, 0xC3, 0x81, 0xC0, 0xC0, // ######################### ### ### ## 0x00, 0xE0, 0x00, 0x00, 0x01, 0xC1, 0xC0, 0xC0, // ### ### ### ## 0x00, 0xC0, 0x00, 0x00, 0x00, 0xE3, 0x80, 0xC0, // ## ### ### ## 0x00, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x01, 0xC0, // ## ####### ### 0x00, 0xC0, 0x00, 0x00, 0x00, 0x7E, 0x01, 0xC0, // ## ###### ### 0x00, 0xC0, 0x00, 0x00, 0xF8, 0x38, 0x01, 0x80, // ## ##### ### ## 0x00, 0xC0, 0x60, 0x01, 0xF0, 0x30, 0x03, 0x80, // ## ## ##### ## ### 0x00, 0xC0, 0xF0, 0x03, 0x80, 0x30, 0x07, 0x00, // ## #### ### ## ### 0x00, 0xC0, 0xF0, 0x03, 0x00, 0x10, 0x0F, 0x00, // ## #### ## # #### 0x00, 0xC0, 0x70, 0x03, 0x00, 0x10, 0x1E, 0x00, // ## ### ## # #### 0x00, 0xC0, 0x30, 0x07, 0x00, 0x30, 0x3C, 0x00, // ## ## ### ## #### 0x00, 0xC0, 0x30, 0x0F, 0xC0, 0x3F, 0xF8, 0x00, // ## ## ###### ########### 0x00, 0xC0, 0x30, 0x0F, 0xC0, 0x7F, 0xE0, 0x00, // ## ## ###### ########## 0x00, 0xC0, 0x30, 0x0E, 0x40, 0xFF, 0x80, 0x00, // ## ## ### # ######### 0x00, 0xE0, 0x30, 0x1C, 0x01, 0xF0, 0x00, 0x00, // ### ## ### ##### 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, // ################################ 0x00, 0x1F, 0xC7, 0xF3, 0xFE, 0x00, 0x00, 0x00, // ####### ####### ######### }; const unsigned char PROGMEM cat2 [] =//w61 h47 { 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x00, 0x00, // #### #### 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, 0x00, 0x00, // ####### ####### 0x00, 0x3F, 0xC0, 0x0F, 0xF8, 0x00, 0x00, 0x00, // ######## ######### 0x00, 0xFC, 0xE0, 0x1E, 0x3C, 0x00, 0x00, 0x00, // ###### ### #### #### 0x01, 0xE0, 0x70, 0x38, 0x1E, 0x00, 0x00, 0x00, // #### ### ### #### 0x03, 0xC0, 0x30, 0x70, 0x0F, 0x00, 0x00, 0x00, // #### ## ### #### 0x03, 0x80, 0x38, 0xE0, 0x07, 0x80, 0x00, 0x00, // ### ### ### #### 0x07, 0x00, 0x1F, 0xC0, 0x03, 0x80, 0x00, 0x00, // ### ####### ### 0x0E, 0x00, 0x1F, 0x80, 0x03, 0xC0, 0x00, 0x00, // ### ###### #### 0x1C, 0x00, 0x06, 0x00, 0x01, 0xE0, 0x00, 0x00, // ### ## #### 0x1C, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, // ### #### 0x38, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, // ### ### 0x38, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, // ### ### 0x30, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, // ## #### 0x70, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, // ### #### 0x77, 0x80, 0x00, 0x01, 0xE0, 0xF0, 0x00, 0x00, // ### #### #### #### 0xEF, 0xC0, 0x00, 0x03, 0xF0, 0x70, 0x00, 0x00, // ### ###### ###### ### 0xFC, 0xE0, 0x18, 0x07, 0x38, 0x70, 0x00, 0x00, // ###### ### ## ### ### ### 0xF8, 0x40, 0x18, 0x06, 0x18, 0x70, 0x00, 0x00, // ##### # ## ## ## ### 0xF8, 0x61, 0x81, 0x86, 0x18, 0x70, 0x1F, 0x00, // ##### ## ## ## ## ## ### ##### 0xFC, 0xE3, 0x00, 0xC7, 0x38, 0x70, 0x3F, 0xC0, // ###### ### ## ## ### ### ### ######## 0xFF, 0xC6, 0x18, 0x63, 0xF0, 0x60, 0x70, 0xE0, // ########## ## ## ## ###### ## ### ### 0xE7, 0x86, 0x3C, 0x61, 0xE0, 0x60, 0x60, 0x70, // ### #### ## #### ## #### ## ## ### 0xE0, 0x03, 0xE7, 0xC0, 0x00, 0xE0, 0x60, 0x30, // ### ##### ##### ### ## ## 0xC0, 0x01, 0xC3, 0x80, 0x00, 0xC0, 0x60, 0x30, // ## ### ### ## ## ## 0xF0, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x38, // #### ## ## ### 0x70, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x30, 0x18, // ### ## ## ## 0x38, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x38, 0x18, // ### ### ### ## 0x3E, 0x00, 0x00, 0x00, 0x07, 0x80, 0x18, 0x18, // ##### #### ## ## 0x0F, 0x80, 0x00, 0x00, 0x1F, 0xC0, 0x18, 0x18, // ##### ####### ## ## 0x07, 0xF0, 0x00, 0x01, 0xFF, 0xE0, 0x18, 0x18, // ####### ############ ## ## 0x01, 0xFF, 0xFF, 0xFF, 0xF1, 0xF0, 0x18, 0x18, // ############################# ##### ## ## 0x00, 0x7F, 0xFF, 0xFF, 0xE0, 0x70, 0x38, 0x18, // ########################## ### ### ## 0x00, 0x70, 0x00, 0x00, 0x00, 0x3F, 0xE0, 0x38, // ### ######### ### 0x00, 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xE0, 0x30, // ### ######### ## 0x00, 0xE0, 0x00, 0x00, 0x7C, 0x1C, 0x00, 0x70, // ### ##### ### ### 0x00, 0xE0, 0x70, 0x00, 0xF8, 0x18, 0x00, 0xE0, // ### ### ##### ## ### 0x01, 0xE0, 0x78, 0x01, 0xC0, 0x18, 0x01, 0xE0, // #### #### ### ## #### 0x01, 0xE0, 0x78, 0x01, 0x80, 0x18, 0x03, 0xC0, // #### #### ## ## #### 0x01, 0xE0, 0x38, 0x01, 0x80, 0x18, 0x07, 0x80, // #### ### ## ## #### 0x00, 0xE0, 0x18, 0x01, 0x80, 0x1C, 0x3F, 0x00, // ### ## ## ### ###### 0x00, 0xE0, 0x18, 0x07, 0xE0, 0x1F, 0xF8, 0x00, // ### ## ###### ########## 0x00, 0xE0, 0x18, 0x07, 0xE0, 0x3F, 0xF0, 0x00, // ### ## ###### ########## 0x00, 0xE0, 0x18, 0x07, 0x20, 0x78, 0x00, 0x00, // ### ## ### # #### 0x00, 0x60, 0x18, 0x06, 0x00, 0xF0, 0x00, 0x00, // ## ## ## #### 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x00, // ################################# 0x00, 0x0F, 0xC7, 0xF1, 0xFE, 0x00, 0x00, 0x00, // ###### ####### ######## }; const unsigned char PROGMEM cat3 [] =//w65 h42 { 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, // #### 0x00, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0x00, 0x00, 0x00, // ####### ######## 0x00, 0x7F, 0xF0, 0x07, 0xFE, 0x00, 0x00, 0x00, 0x00, // ########### ########## 0x01, 0xF8, 0x78, 0x1F, 0x87, 0x00, 0x00, 0x00, 0x00, // ###### #### ###### ### 0x03, 0xC0, 0x3C, 0x3C, 0x03, 0x80, 0x00, 0x00, 0x00, // #### #### #### ### 0x07, 0x00, 0x0E, 0x70, 0x01, 0xC0, 0x00, 0x00, 0x00, // ### ### ### ### 0x0F, 0x00, 0x0E, 0xF0, 0x00, 0xE0, 0x00, 0x00, 0x00, // #### ### #### ### 0x1C, 0x00, 0x0F, 0xC0, 0x00, 0x60, 0x00, 0x00, 0x00, // ### ###### ## 0x1C, 0x00, 0x0F, 0xC0, 0x00, 0x70, 0x00, 0x00, 0x00, // ### ###### ### 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, // ### ## ## 0x38, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, // ### ## 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, // ## ## 0x70, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, // ### ## 0x60, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, // ## ### 0xE0, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, // ### ### 0xE0, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, // ### ## 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, // ## #### ## 0xFF, 0x00, 0x1C, 0x00, 0xFC, 0x0C, 0x00, 0x00, 0x00, // ######## ### ###### ## 0xFF, 0x80, 0x0C, 0x01, 0xFE, 0x0C, 0x00, 0x00, 0x00, // ######### ## ######## ## 0xE1, 0xC0, 0x00, 0x03, 0x87, 0x0C, 0x00, 0xF8, 0x00, // ### ### ### ### ## ##### 0xC0, 0xC3, 0x80, 0x63, 0x03, 0x0C, 0x01, 0xFE, 0x00, // ## ## ### ## ## ## ## ######## 0xC0, 0xC3, 0x0C, 0x33, 0x03, 0x0C, 0x03, 0x87, 0x00, // ## ## ## ## ## ## ## ## ### ### 0xC0, 0xC3, 0x1E, 0x33, 0x03, 0x0C, 0x07, 0x03, 0x00, // ## ## ## #### ## ## ## ## ### ## 0xFF, 0x81, 0xFF, 0xE1, 0xFE, 0x0E, 0x0E, 0x01, 0x80, // ######### ############ ######## ### ### ## 0xFF, 0x00, 0xFF, 0xC0, 0xFC, 0x1E, 0x0C, 0x01, 0xC0, // ######## ########## ###### #### ## ### 0xE0, 0x00, 0x3F, 0x00, 0x00, 0x1C, 0x0C, 0x01, 0xC0, // ### ###### ### ## ### 0x60, 0x00, 0x3F, 0x00, 0x00, 0x1C, 0x0E, 0x00, 0xC0, // ## ###### ### ### ## 0x70, 0x00, 0x0C, 0x00, 0x00, 0x3E, 0x06, 0x00, 0xE0, // ### ## ##### ## ### 0x3C, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x07, 0x00, 0xE0, // #### ######## ### ### 0x1F, 0x00, 0x00, 0x00, 0x03, 0xE7, 0x83, 0x00, 0xE0, // ##### ##### #### ## ### 0x07, 0xE0, 0x00, 0x00, 0x7F, 0xC3, 0xC3, 0x00, 0xE0, // ###### ######### #### ## ### 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xC7, 0x00, 0xE0, // ################################## ### ### ### 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xEF, 0x00, 0xC0, // ################################# #### #### ## 0x03, 0x80, 0x00, 0x00, 0x1C, 0x00, 0xFE, 0x01, 0xC0, // ### ### ####### ### 0x03, 0x00, 0x00, 0x00, 0x0C, 0x00, 0xFC, 0x01, 0x80, // ## ## ###### ## 0x07, 0x00, 0x00, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x80, // ### ## ## ### 0x07, 0x00, 0x7F, 0x00, 0x30, 0x00, 0xC0, 0x07, 0x00, // ### ####### ## ## ### 0x07, 0x03, 0xFF, 0xC0, 0xFC, 0x00, 0xC0, 0x0E, 0x00, // ### ############ ###### ## ### 0x07, 0x03, 0xFF, 0x80, 0xFC, 0x00, 0xC0, 0x3C, 0x00, // ### ########### ###### ## #### 0x03, 0x00, 0x3C, 0x00, 0xC0, 0x03, 0xFF, 0xF0, 0x00, // ## #### ## ############## 0x03, 0x80, 0x3C, 0x00, 0xC0, 0x07, 0xFF, 0xC0, 0x00, // ### #### ## ############# 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3F, 0x80, 0x00, // ######################################## ####### 0x00, 0x3F, 0x80, 0xFF, 0x1F, 0xF8, 0x00, 0x00, 0x00, // ####### ######## ########## }; const unsigned char PROGMEM cat4 [] =//w64 h51 { 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x00, 0x00, 0x00, // ####### ###### 0x00, 0x7F, 0x80, 0x1F, 0xF0, 0x00, 0x00, 0x00, // ######## ######### 0x00, 0xF9, 0xC0, 0x7C, 0x78, 0x00, 0x00, 0x00, // ##### ### ##### #### 0x01, 0xC0, 0xE0, 0xF0, 0x38, 0x00, 0x00, 0x00, // ### ### #### ### 0x03, 0x80, 0x71, 0xE0, 0x1C, 0x00, 0x00, 0x00, // ### ### #### ### 0x07, 0x00, 0x73, 0xC0, 0x0E, 0x00, 0x00, 0x00, // ### ### #### ### 0x0E, 0x00, 0x3F, 0x80, 0x07, 0x00, 0x00, 0x00, // ### ####### ### 0x0C, 0x00, 0x3F, 0x00, 0x07, 0x00, 0x00, 0x00, // ## ###### ### 0x18, 0x00, 0x0C, 0x00, 0x03, 0x80, 0x00, 0x00, // ## ## ### 0x38, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, // ### ### 0x30, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // ## ## 0x70, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ### ### 0x60, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0xE0, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ### ### 0xCF, 0x00, 0x00, 0x03, 0xC0, 0xC0, 0x00, 0x00, // ## #### #### ## 0xDF, 0x80, 0x78, 0x07, 0xE0, 0xC0, 0x00, 0x00, // ## ###### #### ###### ## 0xF0, 0xC0, 0x30, 0x0C, 0x30, 0xC0, 0x00, 0x00, // #### ## ## ## ## ## 0xF0, 0xC0, 0x30, 0x0C, 0x30, 0xC0, 0x00, 0x00, // #### ## ## ## ## ## 0xFF, 0xC7, 0x03, 0x8F, 0xF0, 0xC0, 0x00, 0x00, // ########## ### ### ######## ## 0xF0, 0xCE, 0x01, 0xCC, 0x30, 0xC0, 0x00, 0x00, // #### ## ### ### ## ## ## 0xE0, 0x4C, 0x30, 0xC8, 0x10, 0xC0, 0x00, 0x00, // ### # ## ## ## # # ## 0xC0, 0x0C, 0x78, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## #### ## ## 0xC0, 0x0F, 0xCF, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ###### ###### ## 0xC0, 0x0F, 0x87, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ##### ##### ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x03, 0xE0, // ## ## ## ## ##### 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x07, 0xF8, // ## ## ## ## ######## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x0E, 0x1C, // ## ## ## ## ### ### 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0xC0, 0x0C, 0x0E, // ## ## ## ### ## ### 0xE0, 0x07, 0x03, 0x80, 0x01, 0xC0, 0x0C, 0x07, // ### ### ### ### ## ### 0x60, 0x01, 0xFE, 0x00, 0x01, 0x80, 0x0C, 0x07, // ## ######## ## ## ### 0x70, 0x00, 0x00, 0x00, 0x03, 0x80, 0x0E, 0x03, // ### ### ### ## 0x38, 0x00, 0x00, 0x00, 0x07, 0x00, 0x06, 0x03, // ### ### ## ## 0x1E, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x06, 0x03, // #### ##### ## ## 0x0F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x0E, 0x03, // ####### ######### ### ## 0x03, 0xFF, 0xFF, 0xFF, 0xEF, 0x00, 0x1C, 0x07, // ############################# #### ### ### 0x00, 0x7F, 0xFF, 0xFF, 0xC3, 0x80, 0x3C, 0x06, // ######################### ### #### ## 0x00, 0x70, 0x00, 0x00, 0x01, 0xE0, 0x30, 0x0E, // ### #### ## ### 0x00, 0x60, 0x00, 0x00, 0x00, 0xF0, 0x70, 0x0E, // ## #### ### ### 0x00, 0xE0, 0x00, 0x00, 0x00, 0x7F, 0xE0, 0x0C, // ### ########## ## 0x01, 0xC0, 0x00, 0x00, 0x1C, 0x7F, 0xC0, 0x1C, // ### ### ######### ### 0x01, 0x80, 0x00, 0x00, 0xF8, 0x30, 0x00, 0x38, // ## ##### ## ### 0x01, 0x80, 0x70, 0x01, 0xF0, 0x30, 0x00, 0x70, // ## ### ##### ## ### 0x01, 0xC0, 0xF8, 0x03, 0x80, 0x20, 0x00, 0xE0, // ### ##### ### # ### 0x01, 0xC0, 0xF0, 0x03, 0x00, 0x20, 0x03, 0xC0, // ### #### ## # #### 0x01, 0xC0, 0x70, 0x03, 0x00, 0x20, 0x0F, 0x80, // ### ### ## # ##### 0x00, 0xC0, 0x30, 0x07, 0x80, 0x30, 0x3E, 0x00, // ## ## #### ## ##### 0x00, 0xC0, 0x30, 0x0F, 0xC0, 0x3F, 0xF8, 0x00, // ## ## ###### ########### 0x00, 0xC0, 0x30, 0x0F, 0xC0, 0x3F, 0xE0, 0x00, // ## ## ###### ######### 0x00, 0xC0, 0x30, 0x0C, 0x00, 0xE0, 0x00, 0x00, // ## ## ## ### 0x00, 0xE0, 0x30, 0x0C, 0x01, 0xC0, 0x00, 0x00, // ### ## ## ### 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, // ################################ 0x00, 0x0F, 0xC7, 0xCF, 0xFE, 0x00, 0x00, 0x00, // ###### ##### ########### }; const unsigned char PROGMEM cat5 [] =//h66 w59 { 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x00, // ###### ##### 0x00, 0x7F, 0x80, 0x0F, 0xF8, 0x00, 0x00, 0x00, 0x00, // ######## ######### 0x00, 0xF1, 0xC0, 0x0E, 0x7E, 0x00, 0x00, 0x00, 0x00, // #### ### ### ###### 0x01, 0xC0, 0xE0, 0x1C, 0x0F, 0x00, 0x00, 0x00, 0x00, // ### ### ### #### 0x03, 0x80, 0x7F, 0xF8, 0x07, 0xC0, 0x00, 0x00, 0x00, // ### ############ ##### 0x07, 0x00, 0x3F, 0xF0, 0x03, 0xC0, 0x00, 0x00, 0x00, // ### ########## #### 0x0E, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, // ### ## 0x1C, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, // ### ### 0x38, 0x00, 0x00, 0x00, 0x0C, 0xE0, 0x00, 0x00, 0x00, // ### ## ### 0x30, 0x00, 0x00, 0x00, 0x1E, 0xE0, 0x00, 0x00, 0x00, // ## #### ### 0x77, 0x00, 0x78, 0x00, 0x3B, 0x60, 0x00, 0x00, 0x00, // ### ### #### ### ## ## 0x7F, 0x80, 0x30, 0x00, 0xF1, 0x70, 0x00, 0x00, 0x00, // ######## ## #### # ### 0xE9, 0xC0, 0x00, 0x00, 0xC0, 0x70, 0x00, 0x00, 0x00, // ### # ### ## ### 0xE0, 0xC6, 0x00, 0x60, 0xC0, 0x70, 0x00, 0x00, 0x00, // ### ## ## ## ## ### 0xEF, 0xCC, 0x30, 0x33, 0xFC, 0x30, 0x00, 0x00, 0x00, // ### ###### ## ## ## ######## ## 0xC0, 0xCC, 0xF8, 0x33, 0x84, 0x30, 0x00, 0x00, 0x00, // ## ## ## ##### ## ### # ## 0xC0, 0x4F, 0xCF, 0xF2, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # ###### ######## # ## 0xC0, 0x0F, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, // ## #### ## ## 0xC0, 0x0C, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, // ## ## ## ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x00, 0x00, // ## # # ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0x60, 0x00, // ## # # ## ## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x00, 0xFC, 0x00, // ## # # ## ###### 0xC0, 0x08, 0x00, 0x10, 0x00, 0x30, 0x01, 0xFE, 0x00, // ## # # ## ######## 0xC0, 0x08, 0x00, 0x10, 0x00, 0x70, 0x03, 0x03, 0x80, // ## # # ### ## ### 0xC0, 0x08, 0x00, 0x10, 0x00, 0x70, 0x03, 0x03, 0x80, // ## # # ### ## ### 0x60, 0x08, 0x00, 0x10, 0x00, 0x70, 0x03, 0x00, 0x80, // ## # # ### ## # 0x70, 0x08, 0x00, 0x30, 0x00, 0x70, 0x03, 0x00, 0xC0, // ### # ## ### ## ## 0x3C, 0x08, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x80, 0xC0, // #### # ## ### ### ## 0x1F, 0x08, 0x00, 0x30, 0x01, 0xC0, 0x01, 0x00, 0xE0, // ##### # ## ### # ### 0x07, 0xC8, 0x00, 0x30, 0x03, 0x80, 0x01, 0x00, 0x60, // ##### # ## ### # ## 0x03, 0xE8, 0x00, 0x30, 0x1F, 0x00, 0x01, 0x80, 0x60, // ##### # ## ##### ## ## 0x07, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x03, 0x80, 0xE0, // ######## ############### ### ### 0x06, 0x7E, 0x7C, 0xFF, 0xFF, 0x80, 0x03, 0x00, 0xC0, // ## ###### ##### ################# ## ## 0x0E, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x03, 0x00, 0xC0, // ### #### ## ## 0x0C, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x07, 0x00, 0xC0, // ## ### ### ## 0x0C, 0x00, 0x00, 0x00, 0x00, 0x70, 0x3E, 0x03, 0x80, // ## ### ##### ### 0x1C, 0x00, 0x00, 0x00, 0x00, 0x70, 0x7C, 0x03, 0x00, // ### ### ##### ## 0x1C, 0x00, 0x00, 0x00, 0x3C, 0x3F, 0xE0, 0x07, 0x00, // ### #### ######### ### 0x14, 0x00, 0x00, 0x00, 0x7E, 0x3F, 0xC0, 0x06, 0x00, // # # ###### ######## ## 0x16, 0x00, 0x00, 0x00, 0xE3, 0x30, 0x00, 0x0C, 0x00, // # ## ### ## ## ## 0x16, 0x03, 0xFF, 0x01, 0xC0, 0x30, 0x00, 0x1C, 0x00, // # ## ########## ### ## ### 0x17, 0x01, 0xFF, 0x03, 0x80, 0x30, 0x00, 0x38, 0x00, // # ### ######### ### ## ### 0x13, 0x00, 0xFF, 0x03, 0x00, 0x30, 0x00, 0x70, 0x00, // # ## ######## ## ## ### 0x1B, 0x00, 0x78, 0x03, 0x00, 0x30, 0x03, 0xC0, 0x00, // ## ## #### ## ## #### 0x1B, 0x80, 0x30, 0x03, 0x00, 0x30, 0x1F, 0x80, 0x00, // ## ### ## ## ## ###### 0x1B, 0x80, 0x30, 0x0F, 0xE0, 0x33, 0xFE, 0x00, 0x00, // ## ### ## ####### ## ######### 0x1B, 0x80, 0x30, 0x0F, 0xC0, 0x37, 0xF0, 0x00, 0x00, // ## ### ## ###### ## ####### 0x1B, 0x80, 0x30, 0x0E, 0x00, 0x3E, 0x00, 0x00, 0x00, // ## ### ## ### ##### 0x0D, 0xC0, 0x30, 0x0C, 0x00, 0x3C, 0x00, 0x00, 0x00, // ## ### ## ## #### 0x0D, 0xC0, 0x30, 0x0C, 0x00, 0xF0, 0x00, 0x00, 0x00, // ## ### ## ## #### 0x07, 0xE0, 0x30, 0x0E, 0x01, 0xE0, 0x00, 0x00, 0x00, // ###### ## ### #### 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, // ################################### 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, // ################################ }; const unsigned char PROGMEM cat6 [] =//h61 w61 { 0x00, 0x0F, 0x00, 0x07, 0x80, 0x00, 0x00, 0x00, // #### #### 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x00, 0x00, // ####### ####### 0x00, 0x71, 0xC0, 0x38, 0xF0, 0x00, 0x00, 0x00, // ### ### ### #### 0x00, 0xC0, 0xF0, 0x70, 0x38, 0x00, 0x00, 0x00, // ## #### ### ### 0x01, 0x80, 0x78, 0xE0, 0x1C, 0x00, 0x00, 0x00, // ## #### ### ### 0x03, 0x00, 0x3F, 0xC0, 0x0C, 0x00, 0x00, 0x00, // ## ######## ## 0x06, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x00, 0x00, // ## #### ## 0x0C, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, // ## ## 0x18, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, // ## ## ## 0x18, 0x00, 0x00, 0x00, 0x7B, 0x80, 0x00, 0x00, // ## #### ### 0x3F, 0x00, 0x78, 0x00, 0xED, 0x80, 0x00, 0x00, // ###### #### ### ## ## 0x37, 0x80, 0x30, 0x01, 0xC1, 0x80, 0x00, 0x00, // ## #### ## ### ## 0x60, 0xC0, 0x00, 0x03, 0x01, 0xC0, 0x00, 0x00, // ## ## ## ### 0x60, 0xC6, 0x01, 0x83, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## ## ## 0x6F, 0xCC, 0x30, 0xCF, 0xFC, 0xC0, 0x00, 0x00, // ## ###### ## ## ## ########## ## 0xE8, 0xCC, 0x78, 0xCF, 0x0C, 0xC0, 0x00, 0x00, // ### # ## ## #### ## #### ## ## 0xC0, 0x4F, 0xCF, 0xC8, 0x00, 0xC0, 0x00, 0x00, // ## # ###### ###### # ## 0xC0, 0x0F, 0xCF, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ###### ###### ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x03, 0xC0, // ## ## ## ## #### 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0xC0, 0x07, 0xE0, // ## ## ## ### ###### 0xE0, 0x0C, 0x00, 0xC0, 0x01, 0xC0, 0x0E, 0x70, // ### ## ## ### ### ### 0x60, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x0C, 0x38, // ## ## ## ## ## ### 0x70, 0x0C, 0x00, 0xC0, 0x03, 0x00, 0x08, 0x18, // ### ## ## ## # ## 0x3C, 0x0C, 0x00, 0xC0, 0x07, 0x00, 0x18, 0x1C, // #### ## ## ### ## ### 0x1E, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0x18, 0x1C, // #### ## ## ### ## ### 0x0F, 0x8C, 0x00, 0xC0, 0x7C, 0x00, 0x38, 0x0C, // ##### ## ## ##### ### ## 0x1B, 0xFF, 0x03, 0xFF, 0xF0, 0x00, 0x30, 0x0C, // ## ########## ############## ## ## 0x30, 0xFF, 0xFF, 0xCC, 0xE0, 0x00, 0x30, 0x0C, // ## ################## ## ### ## ## 0x60, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x60, 0x1C, // ## ######## #### ## ### 0x40, 0x00, 0x00, 0x00, 0x30, 0x00, 0x60, 0x18, // # ## ## ## 0xC0, 0x00, 0x00, 0x00, 0x18, 0x00, 0xC0, 0x30, // ## ## ## ## 0xC0, 0x00, 0x00, 0x00, 0x1C, 0x01, 0xC0, 0x30, // ## ### ### ## 0xC0, 0x00, 0x00, 0x00, 0x1C, 0x07, 0x80, 0x70, // ## ### #### ### 0xC0, 0x00, 0x00, 0x00, 0x0E, 0x7F, 0x00, 0x60, // ## ### ####### ## 0xC0, 0x00, 0x00, 0x0F, 0x0F, 0xF8, 0x00, 0xE0, // ## #### ######### ### 0xC0, 0x00, 0x40, 0x1F, 0x8F, 0xF0, 0x01, 0xC0, // ## # ###### ######## ### 0xC0, 0x7F, 0xE0, 0x39, 0x8E, 0x00, 0x03, 0x80, // ## ########## ### ## ### ### 0xE0, 0x7F, 0x80, 0x70, 0x0C, 0x00, 0x07, 0x00, // ### ######## ### ## ### 0xE0, 0x3F, 0x80, 0xC0, 0x0C, 0x00, 0x0C, 0x00, // ### ####### ## ## ## 0xF0, 0x1F, 0x00, 0xC0, 0x0C, 0x00, 0x38, 0x00, // #### ##### ## ## ### 0xD8, 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xF0, 0x00, // ## ## ### ## ## #### 0xD8, 0x0E, 0x01, 0xC0, 0x0C, 0x07, 0xC0, 0x00, // ## ## ### ### ## ##### 0xC8, 0x0E, 0x03, 0xF0, 0x0C, 0xFE, 0x00, 0x00, // ## # ### ###### ## ####### 0xC8, 0x0C, 0x03, 0xF8, 0x0C, 0xF0, 0x00, 0x00, // ## # ## ####### ## #### 0x6C, 0x0C, 0x07, 0x00, 0x0F, 0x80, 0x00, 0x00, // ## ## ## ### ##### 0x7C, 0x0C, 0x07, 0x00, 0x1F, 0x00, 0x00, 0x00, // ##### ## ### ##### 0x3C, 0x0C, 0x07, 0x00, 0x38, 0x00, 0x00, 0x00, // #### ## ### ### 0x1C, 0x0C, 0x0F, 0x00, 0x78, 0x00, 0x00, 0x00, // ### ## #### #### 0x1E, 0x1E, 0x0D, 0xFF, 0xF8, 0x00, 0x00, 0x00, // #### #### ## ############## 0x07, 0xF3, 0xF8, 0x7F, 0xF0, 0x00, 0x00, 0x00, // ####### ####### ########### }; const unsigned char PROGMEM cat7 [] =//w62 h51? { 0x00, 0x1E, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, // #### ### 0x00, 0x3F, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x00, // ###### ######## 0x00, 0xF9, 0x80, 0x78, 0xF0, 0x00, 0x00, 0x00, // ##### ## #### #### 0x01, 0xC0, 0xC1, 0xF0, 0x38, 0x00, 0x00, 0x00, // ### ## ##### ### 0x07, 0x80, 0x7F, 0xE0, 0x1C, 0x00, 0x00, 0x00, // #### ########## ### 0x07, 0x00, 0x3F, 0xC0, 0x0E, 0x00, 0x00, 0x00, // ### ######## ### 0x0E, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, // ### ## ## 0x1C, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, // ### # 0x38, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00, // ### ### ## 0x3E, 0x00, 0x78, 0x00, 0x7F, 0x00, 0x00, 0x00, // ##### #### ####### 0x77, 0x00, 0x30, 0x00, 0xE1, 0x80, 0x00, 0x00, // ### ### ## ### ## 0x73, 0x80, 0x30, 0x01, 0xC1, 0x80, 0x00, 0x00, // ### ### ## ### ## 0x65, 0xC6, 0x01, 0x83, 0x81, 0x80, 0x00, 0x00, // ## # ### ## ## ### ## 0xEE, 0xCC, 0x00, 0xC7, 0x79, 0x80, 0x00, 0x00, // ### ### ## ## ## ### #### ## 0xE7, 0xEC, 0x30, 0xCF, 0xF8, 0x80, 0x00, 0x00, // ### ###### ## ## ## ######### # 0xC4, 0xEE, 0x71, 0xCF, 0xB0, 0x80, 0x00, 0x00, // ## # ### ### ### ### ##### ## # 0xC0, 0x2F, 0xDF, 0xCC, 0x00, 0xC0, 0x00, 0x00, // ## # ###### ####### ## ## 0xC0, 0x0F, 0xCF, 0xC8, 0x00, 0xC0, 0x00, 0x00, // ## ###### ###### # ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x00, // ## ## ## ## 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x00, // ## ## ## ## 0x60, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x30, // ## ## ## ## ## 0x30, 0x0C, 0x00, 0xC0, 0x03, 0x00, 0x00, 0xF8, // ## ## ## ## ##### 0x1C, 0x0C, 0x00, 0xC0, 0x07, 0x00, 0x01, 0x98, // ### ## ## ### ## ## 0x0F, 0x0C, 0x00, 0xC0, 0x3E, 0x00, 0x03, 0x1C, // #### ## ## ##### ## ### 0x07, 0xFF, 0x8F, 0xFF, 0xF8, 0x00, 0x06, 0x0C, // ############ ################# ## ## 0x07, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x0C, 0x0C, // ############################## ## ## 0x0E, 0x01, 0xFC, 0x03, 0xC0, 0x00, 0x18, 0x0C, // ### ####### #### ## ## 0x0C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x30, 0x1C, // ## #### ## ### 0x1C, 0x00, 0x00, 0x00, 0x78, 0x00, 0x60, 0x18, // ### #### ## ## 0x18, 0x00, 0x00, 0x00, 0x3C, 0x00, 0xC0, 0x18, // ## #### ## ## 0x38, 0x00, 0x00, 0x00, 0x1C, 0x01, 0x80, 0x30, // ### ### ## ## 0x38, 0x00, 0x00, 0x00, 0x1E, 0x03, 0x00, 0x70, // ### #### ## ### 0x38, 0x00, 0x00, 0x3C, 0x1E, 0x0E, 0x00, 0xE0, // ### #### #### ### ### 0x70, 0xFC, 0x00, 0x7E, 0x1E, 0x7C, 0x01, 0x80, // ### ###### ###### #### ##### ## 0x70, 0xF8, 0x00, 0xE2, 0x0F, 0xF0, 0x03, 0x00, // ### ##### ### # ######## ## 0x70, 0x78, 0x01, 0xC0, 0x0F, 0xC0, 0x06, 0x00, // ### #### ### ###### ## 0x70, 0x38, 0x03, 0x00, 0x0C, 0x00, 0x08, 0x00, // ### ### ## ## # 0x30, 0x18, 0x03, 0x00, 0x0C, 0x00, 0x3C, 0x00, // ## ## ## ## #### 0x30, 0x18, 0x03, 0x00, 0x30, 0x00, 0xF8, 0x00, // ## ## ## ## ##### 0x30, 0x18, 0x07, 0x00, 0x30, 0x07, 0xE0, 0x00, // ## ## ### ## ###### 0x38, 0x18, 0x0F, 0xC0, 0x30, 0x3F, 0x80, 0x00, // ### ## ###### ## ####### 0x1C, 0x18, 0x1F, 0xE0, 0x73, 0xFC, 0x00, 0x00, // ### ## ######## ### ######## 0x1C, 0x38, 0x1C, 0x00, 0xFF, 0xF0, 0x00, 0x00, // ### ### ### ############ 0x0F, 0x38, 0x0C, 0x01, 0xFF, 0xC0, 0x00, 0x00, // #### ### ## ########### 0x07, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, // ################################## 0x00, 0x7E, 0x01, 0xFF, 0xC0, 0x00, 0x00, 0x00, // ###### ########### }; const unsigned char PROGMEM cat8 [] =//w60 h50 { 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, // ## 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, // ##### ###### 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x00, 0x00, 0x00, // ######## ######## 0x00, 0xF9, 0xC0, 0x1E, 0x70, 0x00, 0x00, 0x00, // ##### ### #### ### 0x01, 0xC0, 0xE0, 0x30, 0x38, 0x00, 0x00, 0x00, // ### ### ## ### 0x07, 0x00, 0x60, 0x60, 0x1C, 0x00, 0x00, 0x00, // ### ## ## ### 0x07, 0x00, 0x60, 0xE0, 0x0C, 0x00, 0x00, 0x00, // ### ## ### ## 0x0E, 0x00, 0x71, 0xC0, 0x0C, 0x00, 0x00, 0x00, // ### ### ### ## 0x1C, 0x00, 0x33, 0xC0, 0x0E, 0x00, 0x00, 0x00, // ### ## #### ### 0x1C, 0x00, 0x3F, 0x80, 0x06, 0x00, 0x00, 0x00, // ### ####### ## 0x3C, 0x00, 0x3F, 0x00, 0x07, 0x00, 0x00, 0x00, // #### ###### ### 0x38, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // ### ## 0x78, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, // #### ### 0x78, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // #### ## 0xF0, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // #### ## 0xEF, 0x00, 0x00, 0x03, 0xC1, 0xC0, 0x00, 0x00, // ### #### #### ### 0xDF, 0x80, 0x00, 0x07, 0xE1, 0xC0, 0x00, 0x00, // ## ###### ###### ### 0xF0, 0xC0, 0x78, 0x0C, 0x31, 0xC0, 0x00, 0x00, // #### ## #### ## ## ### 0xF9, 0xC0, 0x30, 0x0E, 0x30, 0xC0, 0x00, 0x00, // ##### ### ## ### ## ## 0xFF, 0xC0, 0x00, 0x0F, 0xF0, 0xC0, 0x00, 0x00, // ########## ######## ## 0xE0, 0xC6, 0x01, 0x8E, 0x30, 0xC0, 0x00, 0x00, // ### ## ## ## ### ## ## 0xC0, 0x0C, 0x30, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ## ## ## ## 0xC0, 0x0E, 0x79, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ### #### ### ## 0xC0, 0x0F, 0xCF, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ###### ###### ## 0xC0, 0x0F, 0x87, 0xC0, 0x00, 0xC0, 0x00, 0x00, // ## ##### ##### ## 0xC0, 0x0C, 0x00, 0xC0, 0x00, 0xC0, 0x07, 0x00, // ## ## ## ## ### 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0xC0, 0x0F, 0x80, // ## ## ## ### ##### 0xC0, 0x0C, 0x00, 0xC0, 0x01, 0xC0, 0x38, 0xC0, // ## ## ## ### ### ## 0xE0, 0x0C, 0x00, 0xC0, 0x01, 0xC0, 0x30, 0xE0, // ### ## ## ### ## ### 0x70, 0x0C, 0x00, 0xC0, 0x03, 0x80, 0x60, 0x60, // ### ## ## ### ## ## 0x3C, 0x04, 0x00, 0xC0, 0x07, 0x80, 0x60, 0x70, // #### # ## #### ## ### 0x1E, 0x06, 0x03, 0x80, 0x3E, 0x00, 0xC0, 0x30, // #### ## ### ##### ## ## 0x0F, 0x87, 0x03, 0x03, 0xFC, 0x00, 0xC0, 0x70, // ##### ### ## ######## ## ### 0x0F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0xC0, 0xE0, // ################################# ## ### 0x03, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0xE0, 0xE0, // ################################ ### ### 0x06, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x60, 0xC0, // ## ##### ## ## 0x0E, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x60, 0xC0, // ### ### ## ## 0x0E, 0x00, 0x00, 0x00, 0x06, 0x00, 0xC0, 0xC0, // ### ## ## ## 0x0C, 0x00, 0x00, 0x00, 0x07, 0x00, 0xC0, 0xC0, // ## ### ## ## 0x0C, 0x00, 0x00, 0x0F, 0x03, 0x81, 0xC1, 0xC0, // ## #### ### ### ### 0x18, 0x03, 0x80, 0x1F, 0xC3, 0x83, 0xC1, 0x80, // ## ### ####### ### #### ## 0x18, 0x0F, 0x80, 0x38, 0x63, 0xFF, 0x81, 0x80, // ## ##### ### ## ########### ## 0x38, 0x0F, 0x80, 0x30, 0x03, 0xFF, 0x01, 0x00, // ### ##### ## ########## # 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x03, 0x00, // ## ## ## ## ## 0x30, 0x02, 0x00, 0x30, 0x03, 0x00, 0x07, 0x00, // ## # ## ## ### 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x0E, 0x00, // ## ## ## ## ### 0x30, 0x03, 0x00, 0x38, 0x03, 0x00, 0x1C, 0x00, // ## ## ### ## ### 0x30, 0x03, 0x00, 0xFC, 0x03, 0x00, 0x38, 0x00, // ## ## ###### ## ### 0x30, 0x03, 0x01, 0xFE, 0x03, 0x01, 0xF0, 0x00, // ## ## ######## ## ##### 0x3C, 0x03, 0x01, 0xE0, 0x0F, 0xFF, 0x80, 0x00, // #### ## #### ############# 0x1E, 0x03, 0x80, 0xC0, 0x0F, 0xFE, 0x00, 0x00, // #### ### ## ########### 0x07, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x00, // ################################ 0x00, 0xF8, 0x3E, 0x1F, 0xC0, 0x00, 0x00, 0x00, // ##### ##### ####### }; const unsigned char PROGMEM cat9 [] =//w58 h48 { 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ## 0x00, 0x0F, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x00, // #### ##### 0x00, 0x3D, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x00, // #### # ######## 0x00, 0x79, 0x80, 0x38, 0xF0, 0x00, 0x00, 0x00, // #### ## ### #### 0x00, 0xC0, 0xC0, 0xF0, 0x38, 0x00, 0x00, 0x00, // ## ## #### ### 0x03, 0x80, 0x40, 0xE0, 0x1C, 0x00, 0x00, 0x00, // ### # ### ### 0x07, 0x00, 0x61, 0xC0, 0x0C, 0x00, 0x00, 0x00, // ### ## ### ## 0x0E, 0x00, 0x33, 0x80, 0x06, 0x00, 0x00, 0x00, // ### ## ### ## 0x0C, 0x00, 0x3F, 0x00, 0x06, 0x00, 0x00, 0x00, // ## ###### ## 0x18, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, // ## ## ## 0x18, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, // ## ### 0x30, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // ## ## 0x30, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0x60, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0x60, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0x4F, 0x00, 0x00, 0x03, 0xC0, 0xC0, 0x00, 0x00, // # #### #### ## 0xDF, 0x80, 0x30, 0x07, 0xE0, 0xC0, 0x00, 0x00, // ## ###### ## ###### ## 0xF9, 0xC0, 0x78, 0x0E, 0x70, 0xC0, 0x00, 0x00, // ##### ### #### ### ### ## 0xF0, 0xC0, 0x30, 0x0C, 0x30, 0xC0, 0x00, 0x00, // #### ## ## ## ## ## 0xF0, 0xC0, 0x00, 0x0C, 0x30, 0xC0, 0xF8, 0x00, // #### ## ## ## ## ##### 0xF9, 0xC6, 0x01, 0x8E, 0x70, 0xC0, 0xFC, 0x00, // ##### ### ## ## ### ### ## ###### 0xDF, 0x8C, 0x30, 0xC7, 0xE0, 0xC1, 0x87, 0x00, // ## ###### ## ## ## ###### ## ## ### 0xCF, 0x0C, 0x78, 0xC3, 0xC0, 0xC3, 0x03, 0x80, // ## #### ## #### ## #### ## ## ### 0xC0, 0x07, 0xCF, 0x80, 0x00, 0xC3, 0x01, 0x80, // ## ##### ##### ## ## ## 0xC0, 0x01, 0xCE, 0x00, 0x00, 0xC1, 0x01, 0x80, // ## ### ### ## # ## 0xE0, 0x00, 0x00, 0x00, 0x00, 0xC1, 0x80, 0x80, // ### ## ## # 0x60, 0x00, 0x00, 0x00, 0x01, 0xC1, 0x80, 0x80, // ## ### ## # 0x70, 0x00, 0x00, 0x00, 0x03, 0xC0, 0xC0, 0x80, // ### #### ## # 0x38, 0x00, 0x00, 0x00, 0x0F, 0x80, 0xC0, 0xC0, // ### ##### ## ## 0x0F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0xC0, 0xC0, // #### ###### ## ## 0x07, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x60, 0xC0, // ###### ######## ## ## 0x03, 0xFF, 0xFF, 0xFF, 0xEF, 0x00, 0x60, 0xC0, // ############################# #### ## ## 0x01, 0xFF, 0xFF, 0xFF, 0xC3, 0x80, 0xC0, 0xC0, // ########################### ### ## ## 0x00, 0x80, 0x00, 0x00, 0x01, 0xC0, 0xC0, 0x80, // # ### ## # 0x00, 0x80, 0x00, 0x00, 0x00, 0xE1, 0xC0, 0x80, // # ### ### # 0x00, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x81, 0x80, // ## ######## ## 0x00, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x01, 0x80, // ## ####### ## 0x00, 0xC0, 0x00, 0x00, 0xF0, 0x3C, 0x03, 0x00, // ## #### #### ## 0x00, 0xC0, 0x70, 0x01, 0xF8, 0x30, 0x06, 0x00, // ## ### ###### ## ## 0x00, 0xC0, 0xF8, 0x03, 0x88, 0x30, 0x0C, 0x00, // ## ##### ### # ## ## 0x00, 0xC0, 0xFC, 0x03, 0x00, 0x30, 0x1C, 0x00, // ## ###### ## ## ### 0x01, 0xC0, 0x30, 0x03, 0x00, 0x30, 0x38, 0x00, // ### ## ## ## ### 0x01, 0xC0, 0x30, 0x03, 0x80, 0x30, 0xE0, 0x00, // ### ## ### ## ### 0x01, 0x80, 0x30, 0x0F, 0xC0, 0x3F, 0xC0, 0x00, // ## ## ###### ######## 0x01, 0xC0, 0x30, 0x1F, 0xC0, 0x7F, 0x80, 0x00, // ### ## ####### ######## 0x00, 0xC0, 0x30, 0x1E, 0x00, 0xE0, 0x00, 0x00, // ## ## #### ### 0x00, 0xE0, 0x30, 0x0C, 0x01, 0xC0, 0x00, 0x00, // ### ## ## ### 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, // ################################ 0x00, 0x3F, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, // ############################# }; const unsigned char PROGMEM cat10 [] =//w60 h44 { 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // # 0x00, 0x1F, 0x00, 0x07, 0x80, 0x00, 0x00, 0x00, // ##### #### 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x00, 0x00, 0x00, // ####### ###### 0x00, 0x79, 0xC0, 0x3C, 0xE0, 0x00, 0x00, 0x00, // #### ### #### ### 0x00, 0xE0, 0xC0, 0x78, 0x78, 0x00, 0x00, 0x00, // ### ## #### #### 0x01, 0xC0, 0xE0, 0xF0, 0x3C, 0x00, 0x00, 0x00, // ### ### #### #### 0x03, 0x80, 0x71, 0xE0, 0x1C, 0x00, 0x00, 0x00, // ### ### #### ### 0x07, 0x00, 0x7B, 0xC0, 0x0E, 0x00, 0x00, 0x00, // ### #### #### ### 0x06, 0x00, 0x7F, 0x80, 0x07, 0x00, 0x00, 0x00, // ## ######## ### 0x0C, 0x00, 0x3F, 0x00, 0x03, 0x00, 0x00, 0x00, // ## ###### ## 0x18, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, // ## ## ## 0x18, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // ## ## 0x30, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // ## ## 0x30, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, // ## ## 0x60, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0x60, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, // ## ### 0x6F, 0x00, 0x00, 0x03, 0xC0, 0xC0, 0x00, 0x00, // ## #### #### ## 0x5F, 0x80, 0x00, 0x07, 0xE0, 0xC0, 0x00, 0x00, // # ###### ###### ## 0xF9, 0xC0, 0x78, 0x0E, 0x70, 0xC0, 0x00, 0x00, // ##### ### #### ### ### ## 0xF0, 0xC0, 0x30, 0x0C, 0x30, 0xC0, 0x00, 0x00, // #### ## ## ## ## ## 0xF0, 0xC6, 0x03, 0x0C, 0x30, 0xC0, 0x1E, 0x00, // #### ## ## ## ## ## ## #### 0xF9, 0xCE, 0x01, 0xCE, 0x70, 0xC0, 0x3E, 0x00, // ##### ### ### ### ### ### ## ##### 0xDF, 0x8C, 0x30, 0xC7, 0xE0, 0xC0, 0x63, 0x80, // ## ###### ## ## ## ###### ## ## ### 0xCF, 0x0C, 0x78, 0xC3, 0xC0, 0xC0, 0x60, 0xC0, // ## #### ## #### ## #### ## ## ## 0xC0, 0x0F, 0xCF, 0x80, 0x00, 0xC0, 0x40, 0x40, // ## ###### ##### ## # # 0xE0, 0x07, 0x86, 0x00, 0x01, 0xC0, 0x40, 0x60, // ### #### ## ### # ## 0xE0, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x40, 0x60, // ### ### # ## 0xE0, 0x00, 0x00, 0x00, 0x01, 0x80, 0x60, 0x30, // ### ## ## ## 0x70, 0x00, 0x00, 0x00, 0x03, 0x80, 0x70, 0x30, // ### ### ### ## 0x7C, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x30, 0x30, // ##### #### ## ## 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x18, 0x30, // ###### ###### ## ## 0x0F, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x18, 0x30, // ######## ########### ## ## 0x07, 0xFF, 0xFF, 0xFF, 0xE3, 0xC0, 0x30, 0x30, // ############################## #### ## ## 0x00, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x30, // ########################## ### ### ## 0x00, 0x40, 0x00, 0x00, 0x00, 0x71, 0xC0, 0x30, // # ### ### ## 0x00, 0xC0, 0x00, 0x00, 0x00, 0x3B, 0xC0, 0x60, // ## ### #### ## 0x00, 0xC0, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0xC0, // ## #### ###### ## 0x00, 0xC0, 0x70, 0x01, 0xF8, 0x30, 0x00, 0xC0, // ## ### ###### ## ## 0x00, 0xC0, 0xF8, 0x03, 0x88, 0x30, 0x03, 0x80, // ## ##### ### # ## ### 0x00, 0xC0, 0xF8, 0x03, 0x00, 0x30, 0x07, 0x00, // ## ##### ## ## ### 0x00, 0xC0, 0x70, 0x03, 0x00, 0x30, 0x0F, 0x00, // ## ### ## ## #### 0x00, 0xC0, 0x30, 0x07, 0x00, 0x30, 0x78, 0x00, // ## ## ### ## #### 0x00, 0xC0, 0x30, 0x0F, 0xC0, 0x3F, 0xF0, 0x00, // ## ## ###### ########## 0x00, 0xC0, 0x30, 0x1F, 0xC0, 0x7F, 0x00, 0x00, // ## ## ####### ####### 0x00, 0xC0, 0x30, 0x1E, 0x00, 0xE0, 0x00, 0x00, // ## ## #### ### 0x00, 0x40, 0x38, 0x0C, 0x01, 0xC0, 0x00, 0x00, // # ### ## ### 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, // ############################### }; //MEOW =^.^= kot vor try brightenes from CIS RGB leds (thisone lighting a acryl stick in scanner) uint8_t contraent=50; void displaystart(void) { tft.begin(); ts.begin(); tft.fillScreen(ILI9341_BLACK); tft.setRotation(2); FastLED.addLeds(leds, screeny); FastLED.setBrightness(255); leds[3] = CRGB::Red; FastLED.show(); } #define MOS1 PB12 //510R_>DB237->irf4905 p-channel -> 6rotors #define MOS2 PB13 //2 #define MOS3 PB14 #define MOS4 PB15 //4 #define MOS5 PA8 //11 #define MOS6 PA9 //12 #define MOS7 PA10 //13 #define MOS8 PB5 //14 #define npn1 PB6 //5 #define npn2 PB7 //6 #define npn3 PC13 //7 #define npn4 PC14 //8 #define npn5 PC15 //9 #define npn6 PB10 //10 PB1?? #define tempoben PA1 #define tempmitte PA2 #define tempmittedick PA3 #define tempsupply PB0 #define tempfanin PB1 #define Tmulti PA0 #define Tfix1 PA12 #define Tfix2 PA15 uint8_t ledmeng=4; int8_t onpress[8]; uint16_t dutywidth=240; uint8_t steps=6; uint32_t rainbow[129] = {0xff0000,0xff0d00,0xff1a00,0xff2700,0xff3300,0xff4000,0xff4d00,0xff5a00,0xff6400,0xff6d00,0xff7700,0xff8100,0xff8a00,0xff9400,0xff9900,0xff9e00,0xffa300,0xffa700,0xffac00,0xffb100,0xffb600,0xffbb00,0xffbf00,0xffc400,0xffc900,0xffce00,0xffd200,0xffd700,0xfcde00,0xfae400,0xf7eb00,0xf4f200,0xf2f800,0xefff00,0xeaff00,0xe6ff00,0xe1ff00,0xddff00,0xd8ff00,0xd4ff00,0xcfff00,0xc7ff00,0xbfff00,0xb7ff00,0xafff00,0xa7ff00,0x9fff00,0x97ff00,0x8eff00,0x84ff00,0x7bff00,0x72ff00,0x68ff00,0x5fff00,0x51ff06,0x44ff0b,0x36ff11,0x29ff17,0x1bff1d,0x0eff22,0x00ff28,0x00ff3a,0x00ff4b,0x00ff5d,0x00ff6e,0x00ff80,0x00ff91,0x00ffa3,0x00ffab,0x00ffb3,0x00ffbb,0x00ffc3,0x00ffcb,0x00ffd3,0x00ffdb,0x00ffe0,0x00ffe6,0x00ffeb,0x00fff0,0x00fff6,0x00fffb,0x00f6fc,0x00edfc,0x00e4fd,0x00dbfd,0x00d2fe,0x00c9fe,0x00c0ff,0x00b6ff,0x00adff,0x00a3ff,0x009aff,0x0090ff,0x0087ff,0x007dff,0x0968ff,0x1253ff,0x1c3fff,0x252aff,0x2e15ff,0x3700ff,0x3c00ff,0x4000ff,0x4500ff,0x4a00ff,0x4f00ff,0x5300ff,0x5800ff,0x6200ff,0x6b00ff,0x7500ff,0x7f00ff,0x8900ff,0x9200ff,0x9c00ff,0x9f00ff,0xa300ff,0xa600ff,0xa900ff,0xad00ff,0xb000ff,0xa800f4,0xa000e8,0x9800dd,0x9100d1,0x8900c6,0x8100ba,0x7900af}; uint8_t r,g,b; uint16_t toben=380; uint16_t tmite=380; uint16_t tdick=380; uint16_t tsupp=380; uint16_t tfans=380; void setup() { delay(100); pinMode(MOS1, OUTPUT); pinMode(MOS2, OUTPUT); pinMode(MOS3, OUTPUT); pinMode(MOS4, OUTPUT); pinMode(MOS4, OUTPUT); pinMode(MOS5, OUTPUT); pinMode(MOS7, OUTPUT); pinMode(MOS8, OUTPUT); //24 rotors //12turbines// 8channel + 4xrotor in 2x serversupply 12V56A 730W cooling pinMode(npn1, OUTPUT); pinMode(npn2, OUTPUT); pinMode(npn3, OUTPUT); pinMode(npn4, OUTPUT); pinMode(npn5, OUTPUT); pinMode(npn6, OUTPUT); // 6xBD237 for pulsing 12V2A pinMode(Tfix1, INPUT); pinMode(Tfix2, INPUT); delay(100); displaystart(); } uint16_t zeit1; void loop() { zeitreise(); //tft.drawLine(random(0,340),random(0,240),random(0,340),random(0,240),rainbow[random(0,20)*6]); tft.fillScreen(ILI9341_BLACK); textso(10,20,String(analogRead(Tmulti)),2,100); malgraph(0,200); messmal(); } void textso(uint8_t xhier,uint8_t yhier,String dentext,uint8_t sisze,uint8_t colorz){tft.setCursor(xhier,yhier); tft.setTextSize(sisze); tft.setTextColor(rainbow[colorz]); tft.print(dentext);} uint8_t sensorzeugs[240][6];uint8_t kalibri=280; void messmal(void) { if ((analogRead(tempoben)/5) > toben) {toben++;}else{toben--;} if ((analogRead(tempmitte)/5) > tmite) {tmite++;}else{tmite--;} if ((analogRead(tempmittedick)/5) > tdick) {tdick++;}else{tdick--;} if ((analogRead(tempsupply)/5) > tsupp) {tsupp++;}else{tsupp--;} if ((analogRead(tempfanin)/5) > tfans) {tfans++;}else{tfans--;} sensorzeugs[200][0]=toben-kalibri; sensorzeugs[200][1]=tmite-kalibri; sensorzeugs[200][2]=tdick-kalibri; sensorzeugs[200][3]=tsupp-kalibri; sensorzeugs[200][4]=tfans-kalibri; } void malgraph(uint8_t xda,uint8_t yda){ tft.drawFastVLine(xda+5,yda,120,(0,0,255)); tft.drawFastHLine(xda+5,yda+115,230,(0,0,255)); for (uint8_t fixline=1; fixline <120; fixline++) { if((fixline%4)==0){ tft.drawFastHLine(xda+4,yda+fixline-5,1,(0,0,255));} if((fixline%20)==0){ tft.drawFastHLine(xda+2,yda+fixline-5,230,(0,0,255));} } for (uint8_t fixline2=0; fixline2 <240; fixline2++) { if((fixline2%4)==0){ tft.drawFastVLine(xda+5+fixline2,yda+115,2,(0,0,255));} if((fixline2%20)==0){ tft.drawFastVLine(xda+5+fixline2,yda,119,(0,0,255));} } for (uint8_t rutsch=0; rutsch <230; rutsch++) {for (uint8_t alle=0; alle<5; alle++) { swap(sensorzeugs[rutsch][alle],sensorzeugs[rutsch+1][alle]); tft.drawPixel(xda+5+rutsch,yda+sensorzeugs[rutsch][alle],rainbow[alle*25]); }} textso(xda+7,yda-100,String(toben)+"temp1",2,20); textso(xda+7,yda-80,String(tmite)+"temp2",2,40); textso(xda+7,yda-60,String(tdick)+"temp3",2,60); textso(xda+7,yda-40,String(tsupp)+"temp4",2,80); textso(xda+7,yda-20,String(tfans)+"temp5",2,100); } long maintime=millis(); long maintime2=micros(); long maintime3=micros();long beaty=micros(); long timez=micros(); long flash=micros(); void zeitreise(void){ while ((millis()- maintime) >= 5){zeit1++; /*istinput();*/maintime = millis(); } //fader(); while ((micros()- beaty) >= 100) {beaty=micros();} while ((micros()- timez) >= 300) {timez = micros();} while ((micros()-flash) >= 1000) {flash = micros();} } /* TFT ilili9341 taster resuistor value mp using one analogfGPU for lots of tasters * O6 O7 O8 O9 * ________________ * O5 | | O10 * O4 | | O11 * | | * O3 | LCD | O12 * | | * O2 | | O13 * O1 | | O14 * ---------------- * O1=3852 || O2 3637 || O3 3446 || O4 3280 || O5 3275 * O6=2980 || O7 2850 || O8 2730 || O9 2620 * O10= 2520 || O11 2430 || O12 2342 || O13 2562 || O14 2186 * O1 O2 O3 O4 O14 O15 *3V3-o____________________________________ PA0 GPIO * | | | | | | | *221R-o-221R-o-221R-o-221R-o-....-o-221R-o-221R-o-3571R-o-GND */ uint8_t toleranz=30; uint16_t tastervalue[15] = {3852,3637,3446,3280,3275,2980,2850,2730,2620,2520,2430,2342,2562,2186}; uint16_t tmess=0; void istinput(void){ if (zeit1 >=1) { tmess=digitalRead(Tmulti); if (digitalRead(Tfix1) == HIGH && onpress[0] ==0) { onpress[0] =1; } if (onpress[0] == 1) { onpress[1]++;} if (onpress[1] >= 3) { onpress[1] =0; onpress[0]=0; } if (digitalRead(Tfix2) == HIGH && onpress[2] ==0) { onpress[2] =1; } if (onpress[2] == 1) { onpress[3]++;} if (onpress[3] >= 40) { onpress[3] =0; onpress[2]=0; } if (tmess> (tastervalue[0]-toleranz) && tmess < (tastervalue[0]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[1]-toleranz) && tmess < (tastervalue[1]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[2]-toleranz) && tmess < (tastervalue[2]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[3]-toleranz) && tmess < (tastervalue[3]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[4]-toleranz) && tmess < (tastervalue[4]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[5]-toleranz) && tmess < (tastervalue[5]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[6]-toleranz) && tmess < (tastervalue[6]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[7]-toleranz) && tmess < (tastervalue[7]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[8]-toleranz) && tmess < (tastervalue[8]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[9]-toleranz) && tmess < (tastervalue[9]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[10]-toleranz) && tmess < (tastervalue[10]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[11]-toleranz) && tmess < (tastervalue[11]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[12]-toleranz) && tmess < (tastervalue[12]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[13]-toleranz) && tmess < (tastervalue[13]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (tmess> (tastervalue[14]-toleranz) && tmess < (tastervalue[14]+toleranz) && onpress[4] ==0) {onpress[4] =1; } if (onpress[4] == 1) { onpress[5]++;} if (onpress[5] >= 10) { onpress[5] =0; onpress[4]=0; } zeit1=0; }} int rgbdlm =0; int x10=0; int rgbc=0; long leinmovcolor =0; int wenig=0; //thanks to adafruit for PROGMAN algoritm int rainbowcolor3 =0; void wuselBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint32_t colorspeed, int8_t chaos, boolean colormove) { int16_t i, j, byteWidth = (w + 7) / 8; uint8_t byte; for(j=0; j= 128) { rainbowcolor3 =1;} if (colormove == true) {colory(rainbow[rainbowcolor3]); tft.drawPixel(x+i+random(-chaos,chaos),y+i+random(-chaos,chaos), tft.color565(r,g,b));} if (colormove == false) {colory(colorspeed); tft.drawPixel(x+i+random(-chaos,chaos),y+i+random(-chaos,chaos), tft.color565(r,g,b));} } } } void wuselfillrect(int16_t eckex, int16_t eckey,int16_t breit, int16_t hoch,uint32_t colorspeed, int8_t chaos, boolean colormove) { for( int ry = eckex; ry < (hoch); ry++) { wuselline(eckex,eckey+ry,eckex+breit,eckey+ry,colorspeed,chaos,colormove); } } void wuselrect(int16_t eckex, int16_t eckey,int16_t breit, int16_t hoch,uint32_t colorspeed, int8_t chaos, boolean colormove) { wuselline(eckex,eckey,eckex+breit,eckey,colorspeed,chaos,colormove); wuselline(eckex+breit,eckey,eckex+breit,eckey+hoch,colorspeed,chaos,colormove); wuselline(eckex+breit,eckey+hoch,eckex,eckey+hoch,colorspeed,chaos,colormove); wuselline(eckex,eckey+hoch,eckex,eckey,colorspeed,chaos,colormove); } int rainbowcolor =0; int rainbowcolor2 =0; int colorslows=0; int colorslows2=0; //Bresenham's algorithm - thx wikpedia (and adafruit) but the marderchenmod void wuselline(int16_t x0, int16_t y0,int16_t x1, int16_t y1,uint32_t colorspeed, int8_t chaos, boolean colormove) { //if colormove =false, colorspeed = color ( 0xFF205B etc.) int16_t steep = abs(y1 - y0) > abs(x1 - x0); if (steep) {swap(x0, y0);swap(x1, y1);} if (x0 > x1) {swap(x0, x1);swap(y0, y1);} int16_t dx, dy;dx = x1 - x0;dy = abs(y1 - y0); int16_t x10=x0; int16_t err = dx / 2; int16_t err2 = dx / 2;int y10 =y0; int16_t ystep; if (y0 < y1) {ystep = 1;} else {ystep = -1;} for (; x0<=x1; x0++) {colorslows2++; if (colorslows2 >50) {rainbowcolor +=colorspeed; colorslows2=0;} if (rainbowcolor >= (128-colorspeed)) { rainbowcolor =1;} if (steep) { if (colormove == true) { colory(rainbow[rainbowcolor2]); tft.drawPixel(y0, x0, tft.color565(r,g,b));}if (colormove == false) { colory(colorspeed); tft.drawPixel(y0, x0,tft.color565(r,g,b));} } else { if (colormove == true) { colory(rainbow[rainbowcolor2]); tft.drawPixel(x0, y0, tft.color565(r,g,b));}if (colormove == false) { colory(colorspeed); tft.drawPixel(x0, y0, tft.color565(r,g,b));}} err -= dy; if (err < 0) {y0 += ystep;err += dx;}} for (; x10<=x1; x10++) {colorslows++; if (colorslows >50) {rainbowcolor2 +=chaos; colorslows=0;} if (rainbowcolor2 >= (128-chaos)) { rainbowcolor2 =1;} if (steep) {if (colormove == true) {colory(rainbow[rainbowcolor2]); tft.drawPixel(x10+random(-chaos,chaos),y10+random(-chaos,chaos), tft.color565(r,g,b)); } if (colormove == false) { colory(colorspeed); tft.drawPixel(x10+random(-chaos,chaos),y10+random(-chaos,chaos), tft.color565(r,g,b)); } } else { if (colormove == true) {colory(rainbow[rainbowcolor2]); tft.drawPixel(x10+random(-chaos,chaos),y10+random(-chaos,chaos), tft.color565(r,g,b));} if (colormove == false) {colory(colorspeed); tft.drawPixel(x10+random(-chaos,chaos),y10+random(-chaos,chaos),tft.color565(r,g,b));}} err2 -= dy; if (err2 < 0) {y10 += ystep; err2 += dx;}} } void WS2812rainbow(){ leds[7] = ColorFromPalette( currentPalette, 255, 120, currentBlending); //links oben leds[8] = ColorFromPalette( currentPalette, 255, 120, currentBlending); //rechts oben } void colory(uint32_t colorz) { String hexcolor = String(colorz); int number = hexcolor.toInt(); r = number >> 16; g = number >> 8 & 0xFF; b = number & 0xFF; } int spaze=12; boolean fine=false; uint16_t touchcach[8]; void knufftouch(void) { leds[8] =0xffffff; //rechts oben for (int8_t nenhaufen =0; nenhaufen <3; nenhaufen++) { ts.read_XY(xy); touchcach[nenhaufen]=(xy[0]+xy[1])/2; } for (int8_t vergleich =0; vergleich <2; vergleich++) { if( touchcach[vergleich]<= (touchcach[vergleich+1]+spaze) && touchcach[vergleich]>= (touchcach[vergleich+1]-spaze) ) {fine=true;} else {fine=false;} } if (fine ==true) { ttt[0] =320-( xy[1]/9.95-45); //offset x ttt[1] =240-( xy[0]/13.4-33); //offset Y fine=false; } } void schaltzeugs(void) { // applysteps(); //noLED(); /* for (int16_t laag=0; laag <=dutywidth; laag++) { if (laag == 0) {noLED(); statiaus();} if (laag <= (dutywidth-1) && laag >=1) { if (laag == (dutywidth-leds[0][2])) { digitalWrite(rot1, LOW);} if (laag == (dutywidth-leds[0][3])) { digitalWrite(grun1, LOW);} if (laag == (dutywidth-leds[0][4])) { digitalWrite(blau1, LOW);} if (laag == (dutywidth-leds[1][2])) { digitalWrite(rot2, LOW);} if (laag == (dutywidth-leds[1][3])) { digitalWrite(grun2, LOW);} if (laag == (dutywidth-leds[1][4])) { digitalWrite(blau2, LOW);} if (laag == (dutywidth-leds[2][2])) { digitalWrite(rot3, LOW);} if (laag == (dutywidth-leds[2][3])) { digitalWrite(grun3, LOW);} if (laag == (dutywidth-leds[2][4])) { digitalWrite(blau3, LOW);} // if (laag == (dutywidth-leds[3][2])) { digitalWrite(rot4, HIGH);} if (laag == (dutywidth-leds[3][3])) { digitalWrite(grun4, LOW);} if (laag == (dutywidth-leds[3][4])) { digitalWrite(blau4, LOW);} if (laag == (dutywidth-roetz)) { digitalWrite(rot0603, LOW);} if (laag == (dutywidth-guenz)) { digitalWrite(grun0603, LOW);} if (laag == (dutywidth-blauz)) { digitalWrite(blau0603, LOW);} /* if (laag == (dutywidth0-info[0])) { digitalWrite(LED1, LOW);} if (laag == (dutywidth-info[1])) { digitalWrite(LED2, LOW);} if (laag == (6dutywidth-info[2])) { digitalWrite(LED3, LOW);} if (laag == (dutywidth-info[3])) { digitalWrite(LED4, LOW);} if (laag == (dutywidth-info[4])) { digitalWrite(LED5, LOW);} if (laag == (dutywidth-info[5])) { digitalWrite(LED6, LOW);}} if (laag >=dutywidth) {statiaus(); noLED();}//noLEDs();} } */ } void noLED(void) {digitalWrite(MOS1,HIGH); digitalWrite(MOS2,HIGH); digitalWrite(MOS3,HIGH); digitalWrite(MOS4,HIGH); digitalWrite(MOS5,HIGH); digitalWrite(MOS6,HIGH); digitalWrite(MOS7,HIGH); digitalWrite(MOS8,HIGH); } void statiaus(void) {digitalWrite(npn1,HIGH); digitalWrite(npn2,HIGH); digitalWrite(npn3,HIGH); digitalWrite(npn4,HIGH); digitalWrite(npn5,HIGH); digitalWrite(npn6,HIGH);} // // [MEOW] more rainbowpower! this RGB matrix is near maximum from cheap singlechip brightpowder with used ~1Watt/chip(color) only brightest chip aviable from awesome cute producer4 Luminus are brighter (purrr brightest signlechip led producer worldwide just to expensive for a marten)