fix lookup table for ABCDEFGdot displays

This commit is contained in:
Patrick Moessler 2024-01-20 02:32:14 +01:00
parent ceb8270435
commit 358f54e776

View file

@ -11,101 +11,102 @@ static const char *const TAG = "spi_74hc595_display";
static const uint8_t SPI_74HC595_DISPLAY_UNKNOWN_CHAR = 0b11111111; static const uint8_t SPI_74HC595_DISPLAY_UNKNOWN_CHAR = 0b11111111;
const uint8_t SPI_74HC595_DISPLAY_ASCII_TO_RAW[95] PROGMEM = { const uint8_t SPI_74HC595_DISPLAY_ASCII_TO_RAW[95] PROGMEM = {
0b00000000, // ' ', ord 0x20 //.GFEDCBA
0b10110000, // '!', ord 0x21 0b00000000, // ' ', ord 0x20
0b00100010, // '"', ord 0x22 0b10000110, // '!', ord 0x21
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '#', ord 0x23 0b00100010, // '"', ord 0x22
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '$', ord 0x24 0b00110110, // '#', ord 0x23
0b01001001, // '%', ord 0x25 0b00101101, // '$', ord 0x24
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '&', ord 0x26 0b01001001, // '%', ord 0x25
0b00000010, // ''', ord 0x27 0b00011011, // '&', ord 0x26
0b01001110, // '(', ord 0x28 0b00100000, // ''', ord 0x27
0b01111000, // ')', ord 0x29 0b00111001, // '(', ord 0x28
0b01000000, // '*', ord 0x2A 0b00001111, // ')', ord 0x29
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '+', ord 0x2B 0b00000001, // '*', ord 0x2A
0b00010000, // ',', ord 0x2C 0b00010000, // '+', ord 0x2B
0b00000001, // '-', ord 0x2D 0b00000100, // ',', ord 0x2C
0b10000000, // '.', ord 0x2E 0b01000000, // '-', ord 0x2D
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '/', ord 0x2F 0b10000000, // '.', ord 0x2E
0b01111110, // '0', ord 0x30 0b01010010, // '/', ord 0x2F
0b00110000, // '1', ord 0x31 0b00111111, // '0', ord 0x30
0b01101101, // '2', ord 0x32 0b00000110, // '1', ord 0x31
0b01111001, // '3', ord 0x33 0b01011011, // '2', ord 0x32
0b00110011, // '4', ord 0x34 0b01001111, // '3', ord 0x33
0b01011011, // '5', ord 0x35 0b01100110, // '4', ord 0x34
0b01011111, // '6', ord 0x36 0b01101101, // '5', ord 0x35
0b01110000, // '7', ord 0x37 0b01111101, // '6', ord 0x36
0b01111111, // '8', ord 0x38 0b00000111, // '7', ord 0x37
0b01111011, // '9', ord 0x39 0b01111111, // '8', ord 0x38
0b01001000, // ':', ord 0x3A 0b01101111, // '9', ord 0x39
0b01011000, // ';', ord 0x3B 0b00001001, // ':', ord 0x3A
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '<', ord 0x3C 0b00001101, // ';', ord 0x3B
0b00001001, // '=', ord 0x3D 0b00011000, // '<', ord 0x3C
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '>', ord 0x3E 0b01001000, // '=', ord 0x3D
0b01100101, // '?', ord 0x3F 0b00001100, // '>', ord 0x3E
0b01101111, // '@', ord 0x40 0b01010011, // '?', ord 0x3F
0b01110111, // 'A', ord 0x41 0b01111011, // '@', ord 0x40
0b00011111, // 'B', ord 0x42 0b01110111, // 'A', ord 0x41
0b01001110, // 'C', ord 0x43 0b01111100, // 'B', ord 0x42
0b00111101, // 'D', ord 0x44 0b00111001, // 'C', ord 0x43
0b01001111, // 'E', ord 0x45 0b01011110, // 'D', ord 0x44
0b01000111, // 'F', ord 0x46 0b01111001, // 'E', ord 0x45
0b01011110, // 'G', ord 0x47 0b01110001, // 'F', ord 0x46
0b00110111, // 'H', ord 0x48 0b00111101, // 'G', ord 0x47
0b00110000, // 'I', ord 0x49 0b01110110, // 'H', ord 0x48
0b00111100, // 'J', ord 0x4A 0b00000110, // 'I', ord 0x49
0b00011110, // 'J', ord 0x4A
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'K', ord 0x4B SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'K', ord 0x4B
0b00001110, // 'L', ord 0x4C 0b00111000, // 'L', ord 0x4C
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'M', ord 0x4D 0b00110111, // 'M', ord 0x4D
0b00010101, // 'N', ord 0x4E 0b01010100, // 'N', ord 0x4E
0b01111110, // 'O', ord 0x4F 0b00111111, // 'O', ord 0x4F
0b01100111, // 'P', ord 0x50 0b01110011, // 'P', ord 0x50
0b11111110, // 'Q', ord 0x51 0b10111111, // 'Q', ord 0x51
0b00000101, // 'R', ord 0x52 0b01010000, // 'R', ord 0x52
0b01011011, // 'S', ord 0x53 0b01101101, // 'S', ord 0x53
0b00000111, // 'T', ord 0x54 0b01110000, // 'T', ord 0x54
0b00111110, // 'U', ord 0x55 0b00111110, // 'U', ord 0x55
0b00111110, // 'V', ord 0x56 0b00111110, // 'V', ord 0x56
0b00111111, // 'W', ord 0x57 0b01111110, // 'W', ord 0x57
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'X', ord 0x58 SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'X', ord 0x58
0b00100111, // 'Y', ord 0x59 0b01110010, // 'Y', ord 0x59
0b01101101, // 'Z', ord 0x5A 0b01011011, // 'Z', ord 0x5A
0b01001110, // '[', ord 0x5B 0b00111001, // '[', ord 0x5B
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '\', ord 0x5C 0b01100100, // '\', ord 0x5C
0b01111000, // ']', ord 0x5D 0b00001111, // ']', ord 0x5D
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // '^', ord 0x5E 0b00100011, // '^', ord 0x5E
0b00001000, // '_', ord 0x5F 0b00001000, // '_', ord 0x5F
0b00100000, // '`', ord 0x60 0b00000010, // '`', ord 0x60
0b01110111, // 'a', ord 0x61 0b01110111, // 'a', ord 0x61
0b00011111, // 'b', ord 0x62 0b01111100, // 'b', ord 0x62
0b00001101, // 'c', ord 0x63 0b01011000, // 'c', ord 0x63
0b00111101, // 'd', ord 0x64 0b01011110, // 'd', ord 0x64
0b01001111, // 'e', ord 0x65 0b01111001, // 'e', ord 0x65
0b01000111, // 'f', ord 0x66 0b01110001, // 'f', ord 0x66
0b01011110, // 'g', ord 0x67 0b00111101, // 'g', ord 0x67
0b00010111, // 'h', ord 0x68 0b01110100, // 'h', ord 0x68
0b00010000, // 'i', ord 0x69 0b00000100, // 'i', ord 0x69
0b00111100, // 'j', ord 0x6A 0b00011110, // 'j', ord 0x6A
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'k', ord 0x6B SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'k', ord 0x6B
0b00001110, // 'l', ord 0x6C 0b00111000, // 'l', ord 0x6C
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'm', ord 0x6D 0b00110111, // 'm', ord 0x6D
0b00010101, // 'n', ord 0x6E 0b01010100, // 'n', ord 0x6E
0b00011101, // 'o', ord 0x6F 0b01011100, // 'o', ord 0x6F
0b01100111, // 'p', ord 0x70 0b01110011, // 'p', ord 0x70
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'q', ord 0x71 0b01100111, // 'q', ord 0x71
0b00000101, // 'r', ord 0x72 0b01010000, // 'r', ord 0x72
0b01011011, // 's', ord 0x73 0b01101101, // 's', ord 0x73
0b00000111, // 't', ord 0x74 0b01110000, // 't', ord 0x74
0b00011100, // 'u', ord 0x75 0b00011100, // 'u', ord 0x75
0b00011100, // 'v', ord 0x76 0b00011100, // 'v', ord 0x76
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'w', ord 0x77 SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'w', ord 0x77
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'x', ord 0x78 SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'x', ord 0x78
0b00100111, // 'y', ord 0x79 0b01110010, // 'y', ord 0x79
SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'z', ord 0x7A SPI_74HC595_DISPLAY_UNKNOWN_CHAR, // 'z', ord 0x7A
0b00110001, // '{', ord 0x7B 0b01000110, // '{', ord 0x7B
0b00000110, // '|', ord 0x7C 0b00110000, // '|', ord 0x7C
0b00000111, // '}', ord 0x7D 0b01110000, // '}', ord 0x7D
0b01100011, // '~', ord 0x7E (degree symbol) 0b01100011, // '~', ord 0x7E (degree symbol)
}; };
float SPI_74HC595_DISPLAYComponent::get_setup_priority() const { return setup_priority::PROCESSOR; } float SPI_74HC595_DISPLAYComponent::get_setup_priority() const { return setup_priority::PROCESSOR; }