update Library and Demo Animation.

Dependencies:   TFT_fonts mbed sharp_mlcd

Fork of Sharp_Memory_LCD_Test by ban4jp -

Committer:
ban4jp
Date:
Sat Sep 13 05:52:33 2014 +0000
Revision:
2:4d25eab8bff6
Parent:
0:eb868b2d7042
update Library and Demo Animation.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
masato 0:eb868b2d7042 1 #include "mbed.h"
masato 0:eb868b2d7042 2 #include "sharp_mlcd.h"
masato 0:eb868b2d7042 3
masato 0:eb868b2d7042 4 #include "Arial12x12.h"
masato 0:eb868b2d7042 5
ban4jp 2:4d25eab8bff6 6 #if defined(TARGET_NUCLEO_L152RE)
masato 0:eb868b2d7042 7 sharp_mlcd lcd("LCD");
masato 0:eb868b2d7042 8 Serial pc(USBTX, USBRX);
ban4jp 2:4d25eab8bff6 9 #else
ban4jp 2:4d25eab8bff6 10 sharp_mlcd lcd(D11, D13, D2, D4, D5, "LCD");
ban4jp 2:4d25eab8bff6 11 Serial pc(USBTX, USBRX);
ban4jp 2:4d25eab8bff6 12 #endif
masato 0:eb868b2d7042 13
masato 0:eb868b2d7042 14 const static
masato 0:eb868b2d7042 15 char mbedlogo128x48[768]
masato 0:eb868b2d7042 16 = {
masato 0:eb868b2d7042 17 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 18 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 19 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 20 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 21 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 22 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 23 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 24 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 25 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 26 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 27 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 28 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 29 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 30 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 31 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 32 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 33 0x00,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 34 0x00,0x00,0x03,0xc7,0x83,0xe0,0x3c,0x7c,0x00,0x7e,0x00,0x3e,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 35 0x00,0x00,0x03,0xdf,0xef,0xf8,0x3d,0xfe,0x01,0xff,0x80,0x7f,0xbc,0x00,0x00,0x00,
masato 0:eb868b2d7042 36 0x00,0x00,0x03,0xff,0xff,0xf8,0x3f,0xff,0x03,0xff,0xc0,0xff,0xfc,0x00,0x00,0x00,
masato 0:eb868b2d7042 37 0x00,0x00,0x03,0xf1,0xfc,0x7c,0x3f,0x0f,0x87,0xc3,0xe1,0xf0,0xfc,0x00,0x00,0x00,
masato 0:eb868b2d7042 38 0x00,0x00,0x03,0xe0,0xf8,0x3c,0x3e,0x07,0x87,0x81,0xe1,0xe0,0x7c,0x00,0x00,0x00,
masato 0:eb868b2d7042 39 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0x00,0xe3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 40 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0x00,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 41 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0xff,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 42 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0xff,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 43 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0xff,0xf3,0xc0,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 44 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0x03,0xcf,0x00,0x03,0xc0,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 45 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3e,0x03,0xcf,0x00,0x03,0xc0,0x7c,0x00,0x00,0x00,
masato 0:eb868b2d7042 46 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3e,0x07,0x87,0x80,0x01,0xe0,0x7c,0x00,0x00,0x00,
masato 0:eb868b2d7042 47 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3f,0x0f,0x87,0xc1,0xc1,0xf0,0xfc,0x00,0x00,0x00,
masato 0:eb868b2d7042 48 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3f,0xff,0x03,0xff,0xf0,0xff,0xfc,0x00,0x00,0x00,
masato 0:eb868b2d7042 49 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3d,0xfe,0x01,0xff,0xe0,0x7f,0xbc,0x00,0x00,0x00,
masato 0:eb868b2d7042 50 0x00,0x00,0x03,0xc0,0xf0,0x3c,0x3c,0xfc,0x00,0x7f,0x00,0x3f,0x3c,0x00,0x00,0x00,
masato 0:eb868b2d7042 51 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 52 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 53 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 54 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 55 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 56 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 57 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 58 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 59 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 60 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 61 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 62 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 63 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
masato 0:eb868b2d7042 64 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
masato 0:eb868b2d7042 65 };
masato 0:eb868b2d7042 66
masato 0:eb868b2d7042 67
masato 0:eb868b2d7042 68 const static struct Bitmap logo = {
masato 0:eb868b2d7042 69 128,
masato 0:eb868b2d7042 70 48,
masato 0:eb868b2d7042 71 16,
masato 0:eb868b2d7042 72 (char*)mbedlogo128x48,
masato 0:eb868b2d7042 73 };
masato 0:eb868b2d7042 74
masato 0:eb868b2d7042 75 const char target[] =
masato 0:eb868b2d7042 76 #if defined(TARGET_NUCLEO_L152RE)
masato 0:eb868b2d7042 77 "STM32 Nucleo L152RE"
ban4jp 2:4d25eab8bff6 78 #elif defined(TARGET_KL46Z)
ban4jp 2:4d25eab8bff6 79 "Freescale FRDM-KL46Z"
ban4jp 2:4d25eab8bff6 80 #elif defined(TARGET_KL25Z)
ban4jp 2:4d25eab8bff6 81 "Freescale FRDM-KL25Z"
masato 0:eb868b2d7042 82 #elif defined(TARGET_KL05Z)
masato 0:eb868b2d7042 83 "Freescale FRDM-KL05Z"
masato 0:eb868b2d7042 84 #else
masato 0:eb868b2d7042 85 "????"
masato 0:eb868b2d7042 86 #endif
masato 0:eb868b2d7042 87 ;
masato 0:eb868b2d7042 88
ban4jp 2:4d25eab8bff6 89 #include "picture.h"
ban4jp 2:4d25eab8bff6 90 extern const uint8_t picture[];
ban4jp 2:4d25eab8bff6 91 const struct Bitmap pic = {
ban4jp 2:4d25eab8bff6 92 400,
ban4jp 2:4d25eab8bff6 93 240,
ban4jp 2:4d25eab8bff6 94 400/8,
ban4jp 2:4d25eab8bff6 95 (char*)picture,
ban4jp 2:4d25eab8bff6 96 };
ban4jp 2:4d25eab8bff6 97
masato 0:eb868b2d7042 98 Ticker timer;
masato 0:eb868b2d7042 99
masato 0:eb868b2d7042 100 void attime() {
masato 0:eb868b2d7042 101 lcd.attime();
masato 0:eb868b2d7042 102 }
masato 0:eb868b2d7042 103
masato 0:eb868b2d7042 104 static const unsigned char logo16_glcd_bmp[] =
masato 0:eb868b2d7042 105 { 0x00, 0xc0, // B00000000, B11000000,
masato 0:eb868b2d7042 106 0x01, 0xc0, // B00000001, B11000000,
masato 0:eb868b2d7042 107 0x01, 0xc0, // B00000001, B11000000,
masato 0:eb868b2d7042 108 0x03, 0xe0, // B00000011, B11100000,
masato 0:eb868b2d7042 109 0xf3, 0xe0, // B11110011, B11100000,
masato 0:eb868b2d7042 110 0xfe, 0xf8, // B11111110, B11111000,
masato 0:eb868b2d7042 111 0x7e, 0xff, // B01111110, B11111111,
masato 0:eb868b2d7042 112 0x33, 0x9f, // B00110011, B10011111,
masato 0:eb868b2d7042 113 0x1f, 0xfc, // B00011111, B11111100,
masato 0:eb868b2d7042 114 0x0d, 0x70, // B00001101, B01110000,
masato 0:eb868b2d7042 115 0x1b, 0xa0, // B00011011, B10100000,
masato 0:eb868b2d7042 116 0x3f, 0xe0, // B00111111, B11100000,
masato 0:eb868b2d7042 117 0x3f, 0xf0, // B00111111, B11110000,
masato 0:eb868b2d7042 118 0x7c, 0xf0, // B01111100, B11110000,
masato 0:eb868b2d7042 119 0x70, 0x70, // B01110000, B01110000,
masato 0:eb868b2d7042 120 0x00, 0x30 }; // B00000000, B00110000 };
masato 0:eb868b2d7042 121
masato 0:eb868b2d7042 122 const static struct Bitmap snow = {
masato 0:eb868b2d7042 123 16,
masato 0:eb868b2d7042 124 16,
masato 0:eb868b2d7042 125 2,
masato 0:eb868b2d7042 126 (char*)logo16_glcd_bmp,
masato 0:eb868b2d7042 127 };
masato 0:eb868b2d7042 128
ban4jp 2:4d25eab8bff6 129 #define NUMFLAKES 48
masato 0:eb868b2d7042 130 #define XPOS 0
masato 0:eb868b2d7042 131 #define YPOS 1
masato 0:eb868b2d7042 132 #define DELTAY 2
masato 0:eb868b2d7042 133
masato 0:eb868b2d7042 134 void testdrawbitmap(struct Bitmap bitmap) {
ban4jp 2:4d25eab8bff6 135 int16_t icons[NUMFLAKES][3];
masato 0:eb868b2d7042 136 srand((unsigned int)time(NULL)); // srandom(666); // whatever seed
masato 0:eb868b2d7042 137 int i;
masato 0:eb868b2d7042 138
masato 0:eb868b2d7042 139 // initialize
masato 0:eb868b2d7042 140 for (uint8_t f=0; f< NUMFLAKES; f++) {
ban4jp 2:4d25eab8bff6 141 icons[f][XPOS] = (rand() % (lcd.width() + bitmap.xSize)) - bitmap.xSize / 2;
ban4jp 2:4d25eab8bff6 142 icons[f][YPOS] = (rand() % (lcd.height() + bitmap.ySize)) - bitmap.ySize;
ban4jp 2:4d25eab8bff6 143 icons[f][DELTAY] = rand() % 5 + 2;
masato 0:eb868b2d7042 144 #if 0
masato 0:eb868b2d7042 145 Serial.print("x: ");
masato 0:eb868b2d7042 146 Serial.print(icons[f][XPOS], DEC);
masato 0:eb868b2d7042 147 Serial.print(" y: ");
masato 0:eb868b2d7042 148 Serial.print(icons[f][YPOS], DEC);
masato 0:eb868b2d7042 149 Serial.print(" dy: ");
masato 0:eb868b2d7042 150 Serial.println(icons[f][DELTAY], DEC);
masato 0:eb868b2d7042 151 #endif
masato 0:eb868b2d7042 152 }
masato 0:eb868b2d7042 153 lcd.setmode(XOR);
masato 0:eb868b2d7042 154 i = 0;
masato 0:eb868b2d7042 155 while (1) {
masato 0:eb868b2d7042 156 // draw each icon
masato 0:eb868b2d7042 157 for (uint8_t f=0; f< NUMFLAKES; f++) {
masato 0:eb868b2d7042 158 lcd.print_bm(bitmap, icons[f][XPOS], icons[f][YPOS], 1);
masato 0:eb868b2d7042 159 }
masato 0:eb868b2d7042 160 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 161 //wait_ms(200); // delay(200);
masato 0:eb868b2d7042 162
masato 0:eb868b2d7042 163 // then erase it + move it
masato 0:eb868b2d7042 164 for (uint8_t f=0; f< NUMFLAKES; f++) {
masato 0:eb868b2d7042 165 lcd.print_bm(bitmap, icons[f][XPOS], icons[f][YPOS], 1);
masato 0:eb868b2d7042 166 // move it
masato 0:eb868b2d7042 167 icons[f][YPOS] += icons[f][DELTAY];
masato 0:eb868b2d7042 168 // if its gone, reinit
masato 0:eb868b2d7042 169 if (icons[f][YPOS] > lcd.height()) { // display.height()) {
ban4jp 2:4d25eab8bff6 170 icons[f][XPOS] = (rand() % (lcd.width() + bitmap.xSize)) - bitmap.xSize / 2;
ban4jp 2:4d25eab8bff6 171 icons[f][YPOS] = -bitmap.ySize;
ban4jp 2:4d25eab8bff6 172 icons[f][DELTAY] = rand() % 5 + 2;
masato 0:eb868b2d7042 173 }
masato 0:eb868b2d7042 174 }
masato 0:eb868b2d7042 175 if (i++ > 100) break;
masato 0:eb868b2d7042 176 }
masato 0:eb868b2d7042 177 lcd.setmode(NORMAL);
masato 0:eb868b2d7042 178 }
masato 0:eb868b2d7042 179
masato 0:eb868b2d7042 180
masato 0:eb868b2d7042 181 void testdrawline() {
ban4jp 2:4d25eab8bff6 182 for (int16_t i=0; i<lcd.width(); i+=7) {
masato 0:eb868b2d7042 183 lcd.line(0, 0, i, lcd.height()-1, 1);
masato 0:eb868b2d7042 184 lcd.copy_to_lcd();
masato 0:eb868b2d7042 185 }
ban4jp 2:4d25eab8bff6 186 for (int16_t i=1; i<lcd.height(); i+=7) {
masato 0:eb868b2d7042 187 lcd.line(0, 0, lcd.width()-1, i, 1);
masato 0:eb868b2d7042 188 lcd.copy_to_lcd();
masato 0:eb868b2d7042 189 }
ban4jp 2:4d25eab8bff6 190 wait_ms(150); // delay(150);
masato 0:eb868b2d7042 191 #if 0
masato 0:eb868b2d7042 192 lcd.cls();
masato 0:eb868b2d7042 193 for (int16_t i=0; i<lcd.width(); i+=4) {
masato 0:eb868b2d7042 194 lcd.line(0, lcd.height()-1, i, 0, 1);
masato 0:eb868b2d7042 195 lcd.copy_to_lcd();
masato 0:eb868b2d7042 196 }
masato 0:eb868b2d7042 197 for (int16_t i=lcd.height()-1; i>=0; i-=4) {
masato 0:eb868b2d7042 198 lcd.line(0, lcd.height()-1, lcd.width()-1, i, 1);
masato 0:eb868b2d7042 199 lcd.copy_to_lcd();
masato 0:eb868b2d7042 200 }
ban4jp 2:4d25eab8bff6 201 wait_ms(150); // delay(150);
masato 0:eb868b2d7042 202
masato 0:eb868b2d7042 203 lcd.cls();
masato 0:eb868b2d7042 204 for (int16_t i=lcd.width()-1; i>=0; i-=4) {
masato 0:eb868b2d7042 205 lcd.line(lcd.width()-1, lcd.height()-1, i, 0, 1);
masato 0:eb868b2d7042 206 lcd.copy_to_lcd();
masato 0:eb868b2d7042 207 }
masato 0:eb868b2d7042 208 for (int16_t i=lcd.height()-1; i>=0; i-=4) {
masato 0:eb868b2d7042 209 lcd.line(lcd.width()-1, lcd.height()-1, 0, i, 1);
masato 0:eb868b2d7042 210 lcd.copy_to_lcd();
masato 0:eb868b2d7042 211 }
ban4jp 2:4d25eab8bff6 212 wait_ms(150); // delay(150);
masato 0:eb868b2d7042 213
masato 0:eb868b2d7042 214 lcd.cls();
masato 0:eb868b2d7042 215 for (int16_t i=0; i<lcd.height(); i+=4) {
masato 0:eb868b2d7042 216 lcd.line(lcd.width()-1, 0, 0, i, 1);
masato 0:eb868b2d7042 217 lcd.copy_to_lcd();
masato 0:eb868b2d7042 218 }
masato 0:eb868b2d7042 219 for (int16_t i=0; i<lcd.width(); i+=4) {
masato 0:eb868b2d7042 220 lcd.line(lcd.width()-1, 0, i, lcd.height()-1, 1);
masato 0:eb868b2d7042 221 lcd.copy_to_lcd();
masato 0:eb868b2d7042 222 }
ban4jp 2:4d25eab8bff6 223 wait_ms(250);
masato 0:eb868b2d7042 224 #endif
masato 0:eb868b2d7042 225 }
masato 0:eb868b2d7042 226
masato 0:eb868b2d7042 227 int main() {
masato 0:eb868b2d7042 228 pc.printf("%s\r\n", target);
masato 0:eb868b2d7042 229 timer.attach(attime, 0.5);
masato 0:eb868b2d7042 230 lcd.setmode(NORMAL);
masato 0:eb868b2d7042 231 // lcd.set_font((unsigned char*)Arial24x23);
masato 0:eb868b2d7042 232 lcd.set_font((unsigned char*)Arial12x12);
masato 0:eb868b2d7042 233 lcd.set_auto_up(0);
masato 0:eb868b2d7042 234 while (1) {
masato 0:eb868b2d7042 235 lcd.cls();
masato 0:eb868b2d7042 236 lcd.locate(0,0);
ban4jp 2:4d25eab8bff6 237 pc.printf("\r\n %s!\r\n This is Sharp Memory LCD demo.", target);
ban4jp 2:4d25eab8bff6 238 lcd.printf("\r\n %s!\r\n This is Sharp Memory LCD demo.", target);
ban4jp 2:4d25eab8bff6 239 lcd.printf("\r\n\r\n columns: %d rows: %d", lcd.columns(), lcd.rows());
ban4jp 2:4d25eab8bff6 240
ban4jp 2:4d25eab8bff6 241 lcd.print_bm(logo, 260, 178, 1);
ban4jp 2:4d25eab8bff6 242 lcd.locate(260,172);
ban4jp 2:4d25eab8bff6 243 lcd.printf("Powerd by");
ban4jp 2:4d25eab8bff6 244
ban4jp 2:4d25eab8bff6 245 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 246
ban4jp 2:4d25eab8bff6 247 wait_ms(1000);
ban4jp 2:4d25eab8bff6 248 lcd.line(0, 0, lcd.width()-1, 0, 1);
ban4jp 2:4d25eab8bff6 249 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 250
ban4jp 2:4d25eab8bff6 251 wait_ms(1000);
ban4jp 2:4d25eab8bff6 252 lcd.line(lcd.width()-1, 0, lcd.width()-1, lcd.height()-1, 1);
ban4jp 2:4d25eab8bff6 253 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 254
ban4jp 2:4d25eab8bff6 255 wait_ms(1000);
ban4jp 2:4d25eab8bff6 256 lcd.line(0, lcd.height()-1, lcd.width()-1, lcd.height()-1, 1);
ban4jp 2:4d25eab8bff6 257 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 258
ban4jp 2:4d25eab8bff6 259 wait_ms(1000);
ban4jp 2:4d25eab8bff6 260 lcd.line(0, 0, 0, lcd.height()-1, 1);
ban4jp 2:4d25eab8bff6 261 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 262
ban4jp 2:4d25eab8bff6 263 wait_ms(3000);
ban4jp 2:4d25eab8bff6 264
ban4jp 2:4d25eab8bff6 265 lcd.cls();
ban4jp 2:4d25eab8bff6 266
ban4jp 2:4d25eab8bff6 267 lcd.locate(0,0);
ban4jp 2:4d25eab8bff6 268 lcd.printf("Copyright (c) 2014 Masato YAMANISHI or more authors, MIT License\r\n"); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 269 lcd.printf("\r\n"); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 270 lcd.printf("Permission is hereby granted, free of charge, to any person obtaining a copy of this software "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 271 lcd.printf("and associated documentation files (the \"Software\"), to deal in the Software without restriction, "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 272 lcd.printf("including without limitation the rights to use, copy, modify, merge, publish, distribute, "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 273 lcd.printf("sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 274 lcd.printf("furnished to do so, subject to the following conditions:\r\n"); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 275 lcd.printf("\r\n"); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 276 lcd.printf("The above copyright notice and this permission notice shall be included in all copies or "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 277 lcd.printf("substantial portions of the Software.\r\n"); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 278 lcd.printf("\r\n"); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 279 lcd.printf("THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 280 lcd.printf("BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 281 lcd.printf("NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 282 lcd.printf("DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, "); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 283 lcd.printf("OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."); lcd.copy_to_lcd(); wait_ms(50);
ban4jp 2:4d25eab8bff6 284
ban4jp 2:4d25eab8bff6 285 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 286
ban4jp 2:4d25eab8bff6 287 wait_ms(5000);
ban4jp 2:4d25eab8bff6 288
ban4jp 2:4d25eab8bff6 289 lcd.print_bm(pic, 0, 0, 0);
ban4jp 2:4d25eab8bff6 290 lcd.copy_to_lcd();
ban4jp 2:4d25eab8bff6 291
ban4jp 2:4d25eab8bff6 292 wait_ms(3000);
ban4jp 2:4d25eab8bff6 293
ban4jp 2:4d25eab8bff6 294 for (int i=0; i<240+1; i+=2) {
ban4jp 2:4d25eab8bff6 295 lcd.copy_to_lcd(i);
ban4jp 2:4d25eab8bff6 296 }
ban4jp 2:4d25eab8bff6 297
ban4jp 2:4d25eab8bff6 298 wait_ms(5000);
ban4jp 2:4d25eab8bff6 299
masato 0:eb868b2d7042 300 lcd.cls();
masato 0:eb868b2d7042 301 testdrawline();
ban4jp 2:4d25eab8bff6 302
ban4jp 2:4d25eab8bff6 303 wait_ms(5000);
ban4jp 2:4d25eab8bff6 304
masato 0:eb868b2d7042 305 lcd.cls();
masato 0:eb868b2d7042 306 testdrawbitmap(snow);
ban4jp 2:4d25eab8bff6 307
ban4jp 2:4d25eab8bff6 308 wait_ms(5000);
masato 0:eb868b2d7042 309 }
masato 0:eb868b2d7042 310 }