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:
Wed Apr 23 14:44:22 2014 +0000
Revision:
0:69bb996225c1
Child:
2:862f6ab24cfc
tested on STM32 Nucleo L152RE

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 0:69bb996225c1 67 int main() {
masato 0:69bb996225c1 68 #if defined(TARGET_NUCLEO_L152RE)
masato 0:69bb996225c1 69 printf("nucleo\r\n");
masato 0:69bb996225c1 70 #endif
masato 0:69bb996225c1 71 lcd.setmode(NORMAL);
masato 0:69bb996225c1 72 // lcd.set_font((unsigned char*) Arial_9);
masato 0:69bb996225c1 73 lcd.set_contrast(25);
masato 0:69bb996225c1 74 while (1) {
masato 0:69bb996225c1 75 lcd.cls();
masato 0:69bb996225c1 76 lcd.locate(0,0);
masato 0:69bb996225c1 77 lcd.printf("\r\n Hello mbed Nucleo!\r\n This is AQM1248A demo.");
masato 0:69bb996225c1 78
masato 0:69bb996225c1 79 wait(1);
masato 0:69bb996225c1 80 lcd.line(0, 0, lcd.width()-1, 0, 1);
masato 0:69bb996225c1 81 lcd.line(0, 0, lcd.width()-1, lcd.height()-1, 1);
masato 0:69bb996225c1 82 lcd.line(0, 0, 0, lcd.height()-1, 1);
masato 0:69bb996225c1 83 wait(1);
masato 0:69bb996225c1 84 lcd.circle(12, 32, 10, 1);
masato 0:69bb996225c1 85 lcd.fillcircle(24, 32, 10, 1);
masato 0:69bb996225c1 86 lcd.rect(36, 32, 48, 44, 1);
masato 0:69bb996225c1 87 lcd.fillrect(60, 32, 72, 44, 1);
masato 0:69bb996225c1 88 wait(1);
masato 0:69bb996225c1 89 lcd.print_bm(logo, 0, 0);
masato 0:69bb996225c1 90 // lcd.copy_to_lcd();
masato 0:69bb996225c1 91 lcd.printf("\r\n\r\n STM32 Nucleo L152RE");
masato 0:69bb996225c1 92 wait(12);
masato 0:69bb996225c1 93 }
masato 0:69bb996225c1 94 }