AQM1248A LCD + GT20L16J1Y Japanese font ROM with Nucleo

Dependencies:   GT20L16J1Y_font aqm1248a_lcd mbed

Fork of Nucleo_AQM1248A by Masato YAMANISHI

/media/uploads/masato/gt20l16j1y.jpg

STM32 Nucleo L152RE/mbed と Freescale FRDM-KL05Z で秋月 AQM1248A グラフィック LCD をドライブに日本語フォントROM、GT20L16J1Y_font を追加。雪だるまの人GT20L16J1Y_font ライブラリとUTF-8によるサンプルを流用。

フォントROMのほうはLCDとは別系統のSPIを使用。SPI 信号線にはプルアップ抵抗を付けている(裏面にチップ抵抗)。LCDドライバに組み込んで同じSPIを使うのもありかも。

STM32 Nucleo ボードの電源のページにも書いた通り、Nucleo ボードで USB で電源だけを供給する場合には SB1 をショートします。

Committer:
masato
Date:
Sun Apr 27 14:38:57 2014 +0000
Revision:
2:862f6ab24cfc
Parent:
0:69bb996225c1
Child:
3:93270b9f6a01
available FRDM-KL05Z

Who changed what in which revision?

UserRevisionLine numberNew contents of line
masato 0:69bb996225c1 1 #include "mbed.h"
masato 0:69bb996225c1 2 #include "aqm1248a_lcd.h"
masato 0:69bb996225c1 3
masato 0:69bb996225c1 4 aqm1248a_lcd lcd;
masato 0:69bb996225c1 5
masato 0:69bb996225c1 6 const static
masato 0:69bb996225c1 7 char mbedlogo128x48[768]
masato 0:69bb996225c1 8 = {
masato 0:69bb996225c1 9 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 10 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 11 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 12 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 13 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 14 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 15 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 16 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 17 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 18 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 19 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 20 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 21 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 22 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 23 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 24 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 25 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 26 0x00,0x00,0x03,0xc7,0x83,0xe0,0x3c,0x7c,0x00,0x7e,0x00,0x3e,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 27 0x00,0x00,0x03,0xdf,0xef,0xf8,0x3d,0xfe,0x01,0xff,0x80,0x7f,0xbc,0x00,0x00,0x00,
masato 0:69bb996225c1 28 0x00,0x00,0x03,0xff,0xff,0xf8,0x3f,0xff,0x03,0xff,0xc0,0xff,0xfc,0x00,0x00,0x00,
masato 0:69bb996225c1 29 0x00,0x00,0x03,0xf1,0xfc,0x7c,0x3f,0x0f,0x87,0xc3,0xe1,0xf0,0xfc,0x00,0x00,0x00,
masato 0:69bb996225c1 30 0x00,0x00,0x03,0xe0,0xf8,0x3c,0x3e,0x07,0x87,0x81,0xe1,0xe0,0x7c,0x00,0x00,0x00,
masato 0:69bb996225c1 31 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0x00,0xe3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 32 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0x00,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 33 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0xff,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 34 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0xff,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 35 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0xff,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 36 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0x00,0x03,0xc0,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 37 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3e,0x03,0xcf,0x00,0x03,0xc0,0x7c,0x00,0x00,0x00,
masato 0:69bb996225c1 38 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3e,0x07,0x87,0x80,0x01,0xe0,0x7c,0x00,0x00,0x00,
masato 0:69bb996225c1 39 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3f,0x0f,0x87,0xc1,0xc1,0xf0,0xfc,0x00,0x00,0x00,
masato 0:69bb996225c1 40 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3f,0xff,0x03,0xff,0xf0,0xff,0xfc,0x00,0x00,0x00,
masato 0:69bb996225c1 41 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3d,0xfe,0x01,0xff,0xe0,0x7f,0xbc,0x00,0x00,0x00,
masato 0:69bb996225c1 42 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0xfc,0x00,0x7f,0x00,0x3f,0x3c,0x00,0x00,0x00,
masato 0:69bb996225c1 43 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 44 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 45 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 46 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 47 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 48 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 49 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 50 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 51 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 52 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 53 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 54 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 55 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:69bb996225c1 56 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
masato 0:69bb996225c1 57 };
masato 0:69bb996225c1 58
masato 0:69bb996225c1 59
masato 0:69bb996225c1 60 const static struct Bitmap logo = {
masato 0:69bb996225c1 61 128,
masato 0:69bb996225c1 62 48,
masato 0:69bb996225c1 63 16,
masato 0:69bb996225c1 64 (char*)mbedlogo128x48,
masato 0:69bb996225c1 65 };
masato 0:69bb996225c1 66
masato 2:862f6ab24cfc 67 const char target[] =
masato 0:69bb996225c1 68 #if defined(TARGET_NUCLEO_L152RE)
masato 2:862f6ab24cfc 69 "STM32 Nucleo L152RE"
masato 2:862f6ab24cfc 70 #elif defined(TARGET_KL05Z)
masato 2:862f6ab24cfc 71 "Freescale FRDM-KL05Z"
masato 2:862f6ab24cfc 72 #else
masato 2:862f6ab24cfc 73 "????"
masato 0:69bb996225c1 74 #endif
masato 2:862f6ab24cfc 75 ;
masato 2:862f6ab24cfc 76
masato 2:862f6ab24cfc 77 int main() {
masato 2:862f6ab24cfc 78 printf("%s\r\n", target);
masato 0:69bb996225c1 79 lcd.setmode(NORMAL);
masato 0:69bb996225c1 80 // lcd.set_font((unsigned char*) Arial_9);
masato 0:69bb996225c1 81 lcd.set_contrast(25);
masato 0:69bb996225c1 82 while (1) {
masato 0:69bb996225c1 83 lcd.cls();
masato 0:69bb996225c1 84 lcd.locate(0,0);
masato 2:862f6ab24cfc 85 lcd.printf("\r\n %s!\r\n This is AQM1248A demo.", target);
masato 0:69bb996225c1 86
masato 0:69bb996225c1 87 wait(1);
masato 0:69bb996225c1 88 lcd.line(0, 0, lcd.width()-1, 0, 1);
masato 0:69bb996225c1 89 lcd.line(0, 0, lcd.width()-1, lcd.height()-1, 1);
masato 0:69bb996225c1 90 lcd.line(0, 0, 0, lcd.height()-1, 1);
masato 0:69bb996225c1 91 wait(1);
masato 0:69bb996225c1 92 lcd.circle(12, 32, 10, 1);
masato 0:69bb996225c1 93 lcd.fillcircle(24, 32, 10, 1);
masato 0:69bb996225c1 94 lcd.rect(36, 32, 48, 44, 1);
masato 0:69bb996225c1 95 lcd.fillrect(60, 32, 72, 44, 1);
masato 0:69bb996225c1 96 wait(1);
masato 0:69bb996225c1 97 lcd.print_bm(logo, 0, 0);
masato 0:69bb996225c1 98 // lcd.copy_to_lcd();
masato 2:862f6ab24cfc 99 lcd.printf("\r\n\r\n %s", target);
masato 2:862f6ab24cfc 100
masato 0:69bb996225c1 101 wait(12);
masato 0:69bb996225c1 102 }
masato 0:69bb996225c1 103 }