adapted for ST7567 (aitendo CH12864F-SPI)
Fork of st7565LCD by
jun imamura さんの st7565 SPI LCD ライブラリを st7567 (aitendo CH12864 SPI) LCD 用にちょっとだけ手をいれたもの。 st7565LCD.cpp 内で #define ST7567 とする。この定義を外せば元の ST7565 用となる。写真は FRDM-KL05Z での動作例。テスト用プログラムは jun imamura のものをそのまま使っている。
aitendo CH12864 SPI の説明には3.3〜5Vで動作するとあるが、ST7567R のドキュメントには 3.3V までとあるから 5V 動作はしないほうが良いだろう。また、手元の製品ではシルクでピンネームが入っていたが、Web ページの表とは異なっている。これはシルクのほうが誤り。aitendo の商品ページには Adafruit の ST7565 ライブラリでの動作例がでているが、これも同じように修正できる。
Diff: st7565LCDfont.h
- Revision:
- 0:f2eba6cbd093
diff -r 000000000000 -r f2eba6cbd093 st7565LCDfont.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/st7565LCDfont.h Tue Mar 18 09:26:16 2014 +0000 @@ -0,0 +1,259 @@ + + +// 5x7 LCD font 'flipped' for the ST7565 - public domain +static const uint8_t font[] = { + 0x0, 0x0, 0x0, 0x0, 0x0, // Ascii 0 + 0x7C, 0xDA, 0xF2, 0xDA, 0x7C, //ASC(01) + 0x7C, 0xD6, 0xF2, 0xD6, 0x7C, //ASC(02) + 0x38, 0x7C, 0x3E, 0x7C, 0x38, + 0x18, 0x3C, 0x7E, 0x3C, 0x18, + 0x38, 0xEA, 0xBE, 0xEA, 0x38, + 0x38, 0x7A, 0xFE, 0x7A, 0x38, + 0x0, 0x18, 0x3C, 0x18, 0x0, + 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, + 0x0, 0x18, 0x24, 0x18, 0x0, + 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, + 0xC, 0x12, 0x5C, 0x60, 0x70, + 0x64, 0x94, 0x9E, 0x94, 0x64, + 0x2, 0xFE, 0xA0, 0xA0, 0xE0, + 0x2, 0xFE, 0xA0, 0xA4, 0xFC, + 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, + 0xFE, 0x7C, 0x38, 0x38, 0x10, + 0x10, 0x38, 0x38, 0x7C, 0xFE, + 0x28, 0x44, 0xFE, 0x44, 0x28, + 0xFA, 0xFA, 0x0, 0xFA, 0xFA, + 0x60, 0x90, 0xFE, 0x80, 0xFE, + 0x0, 0x66, 0x91, 0xA9, 0x56, + 0x6, 0x6, 0x6, 0x6, 0x6, + 0x29, 0x45, 0xFF, 0x45, 0x29, + 0x10, 0x20, 0x7E, 0x20, 0x10, + 0x8, 0x4, 0x7E, 0x4, 0x8, + 0x10, 0x10, 0x54, 0x38, 0x10, + 0x10, 0x38, 0x54, 0x10, 0x10, + 0x78, 0x8, 0x8, 0x8, 0x8, + 0x30, 0x78, 0x30, 0x78, 0x30, + 0xC, 0x1C, 0x7C, 0x1C, 0xC, + 0x60, 0x70, 0x7C, 0x70, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xFA, 0x0, 0x0, + 0x0, 0xE0, 0x0, 0xE0, 0x0, + 0x28, 0xFE, 0x28, 0xFE, 0x28, + 0x24, 0x54, 0xFE, 0x54, 0x48, + 0xC4, 0xC8, 0x10, 0x26, 0x46, + 0x6C, 0x92, 0x6A, 0x4, 0xA, + 0x0, 0x10, 0xE0, 0xC0, 0x0, + 0x0, 0x38, 0x44, 0x82, 0x0, + 0x0, 0x82, 0x44, 0x38, 0x0, + 0x54, 0x38, 0xFE, 0x38, 0x54, + 0x10, 0x10, 0x7C, 0x10, 0x10, + 0x0, 0x1, 0xE, 0xC, 0x0, + 0x10, 0x10, 0x10, 0x10, 0x10, + 0x0, 0x0, 0x6, 0x6, 0x0, + 0x4, 0x8, 0x10, 0x20, 0x40, + 0x7C, 0x8A, 0x92, 0xA2, 0x7C, + 0x0, 0x42, 0xFE, 0x2, 0x0, + 0x4E, 0x92, 0x92, 0x92, 0x62, + 0x84, 0x82, 0x92, 0xB2, 0xCC, + 0x18, 0x28, 0x48, 0xFE, 0x8, + 0xE4, 0xA2, 0xA2, 0xA2, 0x9C, + 0x3C, 0x52, 0x92, 0x92, 0x8C, + 0x82, 0x84, 0x88, 0x90, 0xE0, + 0x6C, 0x92, 0x92, 0x92, 0x6C, + 0x62, 0x92, 0x92, 0x94, 0x78, + 0x0, 0x0, 0x28, 0x0, 0x0, + 0x0, 0x2, 0x2C, 0x0, 0x0, + 0x0, 0x10, 0x28, 0x44, 0x82, + 0x28, 0x28, 0x28, 0x28, 0x28, + 0x0, 0x82, 0x44, 0x28, 0x10, + 0x40, 0x80, 0x9A, 0x90, 0x60, + 0x7C, 0x82, 0xBA, 0x9A, 0x72, + 0x3E, 0x48, 0x88, 0x48, 0x3E, + 0xFE, 0x92, 0x92, 0x92, 0x6C, + 0x7C, 0x82, 0x82, 0x82, 0x44, + 0xFE, 0x82, 0x82, 0x82, 0x7C, + 0xFE, 0x92, 0x92, 0x92, 0x82, + 0xFE, 0x90, 0x90, 0x90, 0x80, + 0x7C, 0x82, 0x82, 0x8A, 0xCE, + 0xFE, 0x10, 0x10, 0x10, 0xFE, + 0x0, 0x82, 0xFE, 0x82, 0x0, + 0x4, 0x2, 0x82, 0xFC, 0x80, + 0xFE, 0x10, 0x28, 0x44, 0x82, + 0xFE, 0x2, 0x2, 0x2, 0x2, + 0xFE, 0x40, 0x38, 0x40, 0xFE, + 0xFE, 0x20, 0x10, 0x8, 0xFE, + 0x7C, 0x82, 0x82, 0x82, 0x7C, + 0xFE, 0x90, 0x90, 0x90, 0x60, + 0x7C, 0x82, 0x8A, 0x84, 0x7A, + 0xFE, 0x90, 0x98, 0x94, 0x62, + 0x64, 0x92, 0x92, 0x92, 0x4C, + 0xC0, 0x80, 0xFE, 0x80, 0xC0, + 0xFC, 0x2, 0x2, 0x2, 0xFC, + 0xF8, 0x4, 0x2, 0x4, 0xF8, + 0xFC, 0x2, 0x1C, 0x2, 0xFC, + 0xC6, 0x28, 0x10, 0x28, 0xC6, + 0xC0, 0x20, 0x1E, 0x20, 0xC0, + 0x86, 0x9A, 0x92, 0xB2, 0xC2, + 0x0, 0xFE, 0x82, 0x82, 0x82, + 0x40, 0x20, 0x10, 0x8, 0x4, + 0x0, 0x82, 0x82, 0x82, 0xFE, + 0x20, 0x40, 0x80, 0x40, 0x20, + 0x2, 0x2, 0x2, 0x2, 0x2, + 0x0, 0xC0, 0xE0, 0x10, 0x0, + 0x4, 0x2A, 0x2A, 0x1E, 0x2, + 0xFE, 0x14, 0x22, 0x22, 0x1C, + 0x1C, 0x22, 0x22, 0x22, 0x14, + 0x1C, 0x22, 0x22, 0x14, 0xFE, + 0x1C, 0x2A, 0x2A, 0x2A, 0x18, + 0x0, 0x10, 0x7E, 0x90, 0x40, + 0x18, 0x25, 0x25, 0x39, 0x1E, + 0xFE, 0x10, 0x20, 0x20, 0x1E, + 0x0, 0x22, 0xBE, 0x2, 0x0, + 0x4, 0x2, 0x2, 0xBC, 0x0, + 0xFE, 0x8, 0x14, 0x22, 0x0, + 0x0, 0x82, 0xFE, 0x2, 0x0, + 0x3E, 0x20, 0x1E, 0x20, 0x1E, + 0x3E, 0x10, 0x20, 0x20, 0x1E, + 0x1C, 0x22, 0x22, 0x22, 0x1C, + 0x3F, 0x18, 0x24, 0x24, 0x18, + 0x18, 0x24, 0x24, 0x18, 0x3F, + 0x3E, 0x10, 0x20, 0x20, 0x10, + 0x12, 0x2A, 0x2A, 0x2A, 0x24, + 0x20, 0x20, 0xFC, 0x22, 0x24, + 0x3C, 0x2, 0x2, 0x4, 0x3E, + 0x38, 0x4, 0x2, 0x4, 0x38, + 0x3C, 0x2, 0xC, 0x2, 0x3C, + 0x22, 0x14, 0x8, 0x14, 0x22, + 0x32, 0x9, 0x9, 0x9, 0x3E, + 0x22, 0x26, 0x2A, 0x32, 0x22, + 0x0, 0x10, 0x6C, 0x82, 0x0, + 0x0, 0x0, 0xEE, 0x0, 0x0, + 0x0, 0x82, 0x6C, 0x10, 0x0, + 0x40, 0x80, 0x40, 0x20, 0x40, + 0x3C, 0x64, 0xC4, 0x64, 0x3C, + 0x78, 0x85, 0x85, 0x86, 0x48, + 0x5C, 0x2, 0x2, 0x4, 0x5E, + 0x1C, 0x2A, 0x2A, 0xAA, 0x9A, + 0x84, 0xAA, 0xAA, 0x9E, 0x82, + 0x84, 0x2A, 0x2A, 0x1E, 0x82, + 0x84, 0xAA, 0x2A, 0x1E, 0x2, + 0x4, 0x2A, 0xAA, 0x9E, 0x2, + 0x30, 0x78, 0x4A, 0x4E, 0x48, + 0x9C, 0xAA, 0xAA, 0xAA, 0x9A, + 0x9C, 0x2A, 0x2A, 0x2A, 0x9A, + 0x9C, 0xAA, 0x2A, 0x2A, 0x1A, + 0x0, 0x0, 0xA2, 0x3E, 0x82, + 0x0, 0x40, 0xA2, 0xBE, 0x42, + 0x0, 0x80, 0xA2, 0x3E, 0x2, + 0xF, 0x94, 0x24, 0x94, 0xF, + 0xF, 0x14, 0xA4, 0x14, 0xF, + 0x3E, 0x2A, 0xAA, 0xA2, 0x0, + 0x4, 0x2A, 0x2A, 0x3E, 0x2A, + 0x3E, 0x50, 0x90, 0xFE, 0x92, + 0x4C, 0x92, 0x92, 0x92, 0x4C, + 0x4C, 0x12, 0x12, 0x12, 0x4C, + 0x4C, 0x52, 0x12, 0x12, 0xC, + 0x5C, 0x82, 0x82, 0x84, 0x5E, + 0x5C, 0x42, 0x2, 0x4, 0x1E, + 0x0, 0xB9, 0x5, 0x5, 0xBE, + 0x9C, 0x22, 0x22, 0x22, 0x9C, + 0xBC, 0x2, 0x2, 0x2, 0xBC, + 0x3C, 0x24, 0xFF, 0x24, 0x24, + 0x12, 0x7E, 0x92, 0xC2, 0x66, + 0xD4, 0xF4, 0x3F, 0xF4, 0xD4, + 0xFF, 0x90, 0x94, 0x6F, 0x4, + 0x3, 0x11, 0x7E, 0x90, 0xC0, + 0x4, 0x2A, 0x2A, 0x9E, 0x82, + 0x0, 0x0, 0x22, 0xBE, 0x82, + 0xC, 0x12, 0x12, 0x52, 0x4C, + 0x1C, 0x2, 0x2, 0x44, 0x5E, + 0x0, 0x5E, 0x50, 0x50, 0x4E, + 0xBE, 0xB0, 0x98, 0x8C, 0xBE, + 0x64, 0x94, 0x94, 0xF4, 0x14, + 0x64, 0x94, 0x94, 0x94, 0x64, + 0xC, 0x12, 0xB2, 0x2, 0x4, + 0x1C, 0x10, 0x10, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x1C, + 0xF4, 0x8, 0x13, 0x35, 0x5D, + 0xF4, 0x8, 0x14, 0x2C, 0x5F, + 0x0, 0x0, 0xDE, 0x0, 0x0, + 0x10, 0x28, 0x54, 0x28, 0x44, + 0x44, 0x28, 0x54, 0x28, 0x10, + 0x55, 0x0, 0xAA, 0x0, 0x55, + 0x55, 0xAA, 0x55, 0xAA, 0x55, + 0xAA, 0x55, 0xAA, 0x55, 0xAA, + 0x0, 0x0, 0x0, 0xFF, 0x0, + 0x8, 0x8, 0x8, 0xFF, 0x0, + 0x28, 0x28, 0x28, 0xFF, 0x0, + 0x8, 0x8, 0xFF, 0x0, 0xFF, + 0x8, 0x8, 0xF, 0x8, 0xF, + 0x28, 0x28, 0x28, 0x3F, 0x0, + 0x28, 0x28, 0xEF, 0x0, 0xFF, + 0x0, 0x0, 0xFF, 0x0, 0xFF, + 0x28, 0x28, 0x2F, 0x20, 0x3F, + 0x28, 0x28, 0xE8, 0x8, 0xF8, + 0x8, 0x8, 0xF8, 0x8, 0xF8, + 0x28, 0x28, 0x28, 0xF8, 0x0, + 0x8, 0x8, 0x8, 0xF, 0x0, + 0x0, 0x0, 0x0, 0xF8, 0x8, + 0x8, 0x8, 0x8, 0xF8, 0x8, + 0x8, 0x8, 0x8, 0xF, 0x8, + 0x0, 0x0, 0x0, 0xFF, 0x8, + 0x8, 0x8, 0x8, 0x8, 0x8, + 0x8, 0x8, 0x8, 0xFF, 0x8, + 0x0, 0x0, 0x0, 0xFF, 0x28, + 0x0, 0x0, 0xFF, 0x0, 0xFF, + 0x0, 0x0, 0xF8, 0x8, 0xE8, + 0x0, 0x0, 0x3F, 0x20, 0x2F, + 0x28, 0x28, 0xE8, 0x8, 0xE8, + 0x28, 0x28, 0x2F, 0x20, 0x2F, + 0x0, 0x0, 0xFF, 0x0, 0xEF, + 0x28, 0x28, 0x28, 0x28, 0x28, + 0x28, 0x28, 0xEF, 0x0, 0xEF, + 0x28, 0x28, 0x28, 0xE8, 0x28, + 0x8, 0x8, 0xF8, 0x8, 0xF8, + 0x28, 0x28, 0x28, 0x2F, 0x28, + 0x8, 0x8, 0xF, 0x8, 0xF, + 0x0, 0x0, 0xF8, 0x8, 0xF8, + 0x0, 0x0, 0x0, 0xF8, 0x28, + 0x0, 0x0, 0x0, 0x3F, 0x28, + 0x0, 0x0, 0xF, 0x8, 0xF, + 0x8, 0x8, 0xFF, 0x8, 0xFF, + 0x28, 0x28, 0x28, 0xFF, 0x28, + 0x8, 0x8, 0x8, 0xF8, 0x0, + 0x0, 0x0, 0x0, 0xF, 0x8, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xF, 0xF, 0xF, 0xF, 0xF, + 0xFF, 0xFF, 0xFF, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xFF, 0xFF, + 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, + 0x1C, 0x22, 0x22, 0x1C, 0x22, + 0x3E, 0x54, 0x54, 0x7C, 0x28, + 0x7E, 0x40, 0x40, 0x60, 0x60, + 0x40, 0x7E, 0x40, 0x7E, 0x40, + 0xC6, 0xAA, 0x92, 0x82, 0xC6, + 0x1C, 0x22, 0x22, 0x3C, 0x20, + 0x2, 0x7E, 0x4, 0x78, 0x4, + 0x60, 0x40, 0x7E, 0x40, 0x40, + 0x99, 0xA5, 0xE7, 0xA5, 0x99, + 0x38, 0x54, 0x92, 0x54, 0x38, + 0x32, 0x4E, 0x80, 0x4E, 0x32, + 0xC, 0x52, 0xB2, 0xB2, 0xC, + 0xC, 0x12, 0x1E, 0x12, 0xC, + 0x3D, 0x46, 0x5A, 0x62, 0xBC, + 0x7C, 0x92, 0x92, 0x92, 0x0, + 0x7E, 0x80, 0x80, 0x80, 0x7E, + 0x54, 0x54, 0x54, 0x54, 0x54, + 0x22, 0x22, 0xFA, 0x22, 0x22, + 0x2, 0x8A, 0x52, 0x22, 0x2, + 0x2, 0x22, 0x52, 0x8A, 0x2, + 0x0, 0x0, 0xFF, 0x80, 0xC0, + 0x7, 0x1, 0xFF, 0x0, 0x0, + 0x10, 0x10, 0xD6, 0xD6, 0x10, + 0x6C, 0x48, 0x6C, 0x24, 0x6C, + 0x60, 0xF0, 0x90, 0xF0, 0x60, + 0x0, 0x0, 0x18, 0x18, 0x0, + 0x0, 0x0, 0x8, 0x8, 0x0, + 0xC, 0x2, 0xFF, 0x80, 0x80, + 0x0, 0xF8, 0x80, 0x80, 0x78, + 0x0, 0x98, 0xB8, 0xE8, 0x48, + 0x0, 0x3C, 0x3C, 0x3C, 0x3C,}; \ No newline at end of file