Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Adafruit_GFX
Revision 0:d708873b182d, committed 2022-05-12
- Comitter:
- leejieun
- Date:
- Thu May 12 02:00:18 2022 +0000
- Commit message:
- mission_0512;
Changed in this revision
diff -r 000000000000 -r d708873b182d Adafruit_GFX.lib --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Adafruit_GFX.lib Thu May 12 02:00:18 2022 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/eins/code/Adafruit_GFX/#73e927988ade
diff -r 000000000000 -r d708873b182d main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Thu May 12 02:00:18 2022 +0000 @@ -0,0 +1,474 @@ +#include "mbed.h" +#include "Adafruit_SSD1306.h" // Adafruit_GFX library + +#define NUM_CHAR 16 + +Serial pc(SERIAL_TX, SERIAL_RX); +DigitalOut greenLed(LED1); +DigitalOut redLed(PA_12); +AnalogOut myAnalogOut(PA_4); +AnalogIn lightSensor(PA_0); +Timer t1, t2; +Ticker t3, t4; +InterruptIn myButton(PC_13); +InterruptIn exButton(PC_11); + + + + + + + + +BusOut my7Seg(PA_8, PA_9, PA_10, PC_9, PC_8, PC_7, PC_6, PA_11); // 8bit data + // LSB, , MSB +uint8_t pic1Logo[64 * 128 / 8] = +{ +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0xFC,0xCC,0x0C,0x0C,0x1C,0x38,0x70,0x70, +0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x80,0x80,0x80,0x00,0x00,0x00, +0x00,0x01,0x01,0x07,0x0E,0x1C,0x38,0xF0,0xF0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x7C,0xFC,0xB6,0x32,0x02,0x7F,0xFE,0xF3,0xB3,0x81,0x81,0x81,0x81,0x83,0x87,0xFE, +0x78,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x03,0x1F,0xFF,0xE0,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x01,0x01,0x01,0x03,0x03,0x13,0x3F,0xFF,0xF3,0xF3,0xF3,0xFB,0xF9,0xF9,0xFC, +0xFC,0xFC,0xFE,0x7E,0x3F,0x1F,0x07,0x00,0x00,0x80,0xFF,0x3F,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0xF0,0x58,0x78,0x38,0x08,0x1C,0x1C,0x18,0x18,0x18,0x78,0xB0,0xE0, +0x80,0x00,0x00,0x00,0xE0,0xFC,0x1C,0x06,0x07,0x07,0x07,0x03,0x03,0x03,0x03,0x01, +0x01,0x00,0x00,0x00,0x00,0x80,0xE0,0xF0,0x3C,0x0F,0x01,0x00,0xC0,0xF0,0x78,0x38, +0x3C,0x0C,0x0C,0x0C,0x34,0x34,0x8C,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x03,0x06,0x1A,0x10,0x18,0x18,0x18,0x18,0x08,0x18,0x3C,0x7E,0x67, +0x63,0xE0,0xF0,0x7E,0x1F,0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xA0,0xF0,0xF0,0xF8, +0xB8,0x18,0x0C,0x0F,0x3F,0x7B,0x71,0x70,0x60,0x70,0x30,0x32,0x1B,0x1F,0x18,0x30, +0x30,0x20,0x20,0x70,0x38,0x0C,0x1D,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x80,0xC0,0x40,0x60,0x60,0x20,0x20,0x20,0x20,0x30,0x38,0x3C,0x3E, +0x36,0x23,0x63,0x46,0xC6,0x86,0x06,0x07,0x03,0x03,0x03,0x01,0x01,0x80,0xC0,0x41, +0x63,0x67,0x3E,0x3C,0x38,0x30,0x30,0x30,0x30,0x30,0x20,0x60,0x60,0xC0,0xC0,0xC0, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x03,0x07,0x06,0x04,0x0C,0x0C,0x0C,0x0C,0x0C,0x04,0x04,0x04,0x04, +0x04,0x06,0x06,0x06,0x07,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x0F,0x0E,0x14, +0x14,0x14,0x14,0x14,0x14,0x14,0x1C,0x0C,0x0C,0x0C,0x0C,0x04,0x04,0x06,0x03,0x01, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 +}; + +uint8_t pic2Logo[64 * 128 / 8] = +{ +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x80,0xE0,0x78,0x3C,0x0E,0x06,0x03,0x03,0x03,0x03,0x03,0x03,0x0E, +0x3C,0xF8,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0xF8,0xF8,0x08,0x0C,0x04,0x04,0x06,0x04,0x0C,0x0C,0x0C,0xBC,0xF8,0xE0, +0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0, +0xF0,0xFC,0xBE,0x1F,0x09,0x08,0xCC,0xCC,0xCC,0x08,0x18,0xB0,0xF0,0x38,0x18,0x08, +0x08,0xCF,0xCF,0xCE,0x08,0x18,0xF0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xE0,0xF0,0x98,0x08,0x04,0x04,0x04,0x04,0x04, +0x04,0x0C,0x5C,0xF8,0xE0,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x01,0x03,0x07,0x07,0x04,0x08,0x0C,0x0C,0x06,0x06,0x06,0x07,0x07,0x07, +0x0E,0x0E,0x0E,0x1C,0x18,0x38,0x30,0x70,0x70,0x60,0xE0,0xC0,0xC0,0x80,0x80,0xFF, +0xFF,0xFF,0x73,0xF3,0xE6,0xE6,0xE4,0xE4,0xE6,0xE6,0xE2,0xE3,0xE1,0xE3,0xE2,0xE6, +0xE6,0xE4,0xE4,0xFE,0xFE,0xFF,0x01,0x00,0x00,0x80,0x80,0x80,0xC0,0xC0,0xC0,0x60, +0x60,0x60,0x30,0x30,0x38,0x18,0x0C,0x0D,0x07,0x07,0x07,0x06,0x06,0x06,0x06,0x06, +0x06,0x06,0x06,0x03,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x03, +0x07,0x3F,0xF8,0xE0,0x81,0x01,0x03,0x07,0x07,0x07,0x0F,0x0F,0x0F,0x0F,0x0F,0x07, +0x07,0x07,0x03,0x03,0xFF,0xFF,0xFF,0x03,0x03,0x01,0x01,0x01,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x01,0x07,0x1E,0x38,0x70,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x1F,0xFF,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC1,0xF7,0x7F,0x3E,0x1C,0x1C,0x18, +0x18,0x08,0x18,0x38,0xF8,0xEF,0xCF,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xC0,0x60,0x60,0x20,0x20,0x20,0x30, +0x30,0x30,0x30,0x30,0x30,0x30,0x3C,0x3E,0x37,0x33,0xF0,0xE0,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0xC0,0xE0,0x21,0x27,0x3F,0x3E,0x3C,0x30,0x30,0x30,0x30,0x30,0x30, +0x30,0x30,0x30,0x30,0x70,0x60,0xE0,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x03,0x02,0x02,0x02,0x02,0x02,0x02,0x02, +0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x03,0x03,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x03,0x03,0x03,0x03,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02, +0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 +}; + +uint8_t pic3Logo[64 * 128 / 8] = +{ +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0xC0,0x40,0x60, +0x30,0x30,0x20,0x20,0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x80,0xC0,0xE0,0x70,0x38,0x1C,0x0C,0x0E,0x07,0x03,0x01,0x00,0x00,0x00, +0x00,0x00,0x00,0xFF,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xF0, +0x7C,0x0F,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xF8,0x8C,0x0C,0x06, +0x06,0x06,0x06,0x07,0x07,0x64,0xEC,0xFC,0xF4,0x04,0x64,0x7C,0xFC,0xF0,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF, +0xC0,0x00,0x00,0x00,0x07,0x1F,0x3E,0x7E,0x7C,0xFC,0xFC,0xF8,0xF8,0xF9,0xFB,0xFB, +0xFA,0xFA,0xFA,0xFA,0xF3,0xFF,0x3F,0x03,0x03,0x02,0x03,0x01,0x01,0x01,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0xF0,0xF0,0x10,0x18,0x18,0x0C,0x04,0x0C,0x1C,0x30,0x30,0x70,0xC0,0xC0,0x00,0x01, +0x0F,0x1F,0x3C,0x70,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x03, +0x03,0x03,0x03,0x07,0x07,0x07,0x06,0x3E,0xFC,0xE0,0x80,0x00,0x00,0x00,0xC0,0xC0, +0xE0,0x30,0x10,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x38,0x30,0xF0,0xE0,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x01,0x07,0x07,0x0E,0x1C,0x18,0x1C,0x14,0x1C,0x0C,0x0C,0x0D,0x0F,0x0F,0x0D,0x1C, +0x18,0x18,0x38,0x38,0x38,0x1C,0x0F,0x0F,0x07,0x86,0xCE,0xFC,0x7C,0x38,0x38,0x70, +0x50,0xE0,0xE0,0xE0,0xC0,0x80,0x80,0x00,0x00,0x07,0x9F,0xFE,0xF8,0x98,0x9A,0x3F, +0x1F,0x1E,0x0C,0x04,0x04,0x0C,0x0C,0x0C,0x04,0x04,0x05,0x07,0x07,0x03,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xF0,0xB0,0x90,0x98,0x88, +0x88,0x88,0x88,0x88,0x8C,0x8C,0x8C,0x8E,0x8F,0x8B,0x89,0x98,0x98,0x98,0xF0,0xE0, +0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x41,0xE3,0xB3,0xB3,0xBB,0x98,0x89,0x8B,0x8F, +0x8F,0x8E,0x8C,0x88,0x88,0x88,0x88,0x88,0x88,0x98,0x98,0xB0,0xF0,0x40,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01, +0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, +0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 +}; + + +/// +int location = 0; +/// + + +bool flagOne = 0; + +void OneSecond() { + flagOne = 1; +} + +int flagDown = 0; // 1: speed down +int flagUp = 0; // 1: speed up + +char rxData[5]; +bool flagRx = 0; +int dir = 1; // 1: increase, -1: decrease +bool flagT3 = 0; +bool modeT3 = 0; // 0: stop, 1: working + +bool currentMode = 1; +int currentPos = 0; + +void ReceiveInt() { + char inChar; + static char rxCount = 0; + static char rxBuf[4]; + + while(1 == pc.readable()) { + inChar = pc.getc(); + if ('<' == inChar){ + rxCount = 1; + } + else if (rxCount > 0 && rxCount < 5) { + rxBuf[rxCount-1] = inChar; + rxCount++; + } + else if (5 == rxCount && '>' == inChar) { + rxCount = 0; + flagRx = 1; + memcpy(rxData, rxBuf, 4); +// pc.putc(rxData[0]); +// pc.putc(rxData[1]); +// pc.putc(rxData[2]); +// pc.putc(rxData[3]); + +// pc.puts(rxData); + } + else { + rxCount = 0; + } + } +} + +void tickerFunc3() { + flagT3 = 1; +} + + +I2C I2C_Oled(PB_7, PA_15); // SDA, SCL +Adafruit_SSD1306_I2c myOled(I2C_Oled, PD_2, 0x78, 64, 128); // reset pin doesn't effect + + + +void Btn1Down() { +// pc.puts("1 pused\n"); // for debugging + t1.start(); +} + +void Btn1Up() { +// pc.puts("1 released\n"); // for debugging + if (t1.read() > 0 ) { + flagUp = 1; + } + t1.stop(); + t1.reset(); +} + +void Btn2Down() { +// pc.puts("2 pused\n"); // for debugging + t2.start(); +} + +void Btn2Up() { +// pc.puts("2 released\n"); // for debugging + if (t2.read() > 0) { + flagDown = 1; + } + t2.stop(); + t2.reset(); +} + +// +int main() +{ + pc.baud(115200); + pc.puts("\nStart!\n"); + + myButton.disable_irq(); // to avoid unexpected interrupt + exButton.disable_irq(); // to avoid unexpected interrupt + + pc.attach(&ReceiveInt, Serial::RxIrq); // RxIrq, TxIrq + + + + + myButton.fall(&Btn1Down); + myButton.rise(&Btn1Up); + exButton.fall(&Btn2Down); + exButton.rise(&Btn2Up); + + I2C_Oled.frequency(400000); // 400kHz clock + + myButton.enable_irq(); // enable IRQ + exButton.enable_irq(); // enable IRQ + + + + + I2C I2C_Oled(PB_7, PA_15); // SDA, SCL + I2C_Oled.frequency(400000); // 400kHz clock + Adafruit_SSD1306_I2c myOled(I2C_Oled, PD_2, 0x78, 64, 128); // reset pin doesn't effect + + myOled.splash(); // logo output + myOled.display(); + wait(0.5); + + myOled.clearDisplay(); // clear buffer + myOled.printf("%u x %u OLED Display\r\n", myOled.width(), myOled.height()); + myOled.display(); // show a image on the OLED + wait(1); + + myButton.enable_irq(); // enable IRQ + exButton.enable_irq(); // enable IRQ + + t3.attach(&tickerFunc3, 0.1); // ticker3 start + + time_t seconds = time(NULL); + + set_time(1651121217); // Set RTC time to 2022-4월-28, PM 1:46:57 + pc.printf("Time as a basic string = %s", ctime(&seconds)); + + char buffer[32]; + strftime(buffer, 32, "%I:%M %p\n", localtime(&seconds)); + pc.printf("1) Time as a custom formatted string = %s", buffer); + strftime(buffer, 32, "%y-%m-%d, %H:%M:%S\n", localtime(&seconds)); + pc.printf("2) Time as a custom formatted string = %s", buffer); + + char tmpCommand[3]; + int rxVal; + char val7Seg[NUM_CHAR] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71}; + + modeT3 = 1; + my7Seg = 0xFF; + + uint16_t n = 0; + + while(1) + { + if (1 == flagOne) { + flagOne = 0; + seconds = time(NULL); + + } + + if (t1.read() > 1.0f) { + flagUp = 2; + t1.stop(); + t1.reset(); + } + + if (t2.read() > 1.0f) { + flagDown = 2; + t2.stop(); + t2.reset(); + } + //myOled.clearDisplay(); + //myOled.drawBitmap(location, 0, pic2Logo, 128, 64, 1); + //myOled.display(); + + if (1 == flagDown && 1 == currentMode){ // check the external button action + flagDown = 0; + location = location - 10; + myOled.clearDisplay(); + myOled.drawBitmap(location, 0, pic1Logo, 128, 64, 1); + myOled.display(); + //wait(1); + } + else if (2 == flagDown && 1 == currentMode) { + flagDown = 0; + location = 0; + myOled.clearDisplay(); + myOled.drawBitmap(location, 0, pic2Logo, 128, 64, 1); + myOled.display(); + //wait(1); + } + + if (1 == flagUp && 1 == currentMode) { // check the internal button action + flagUp = 0; + location = location + 10; + myOled.clearDisplay(); + myOled.drawBitmap(location, 0, pic3Logo, 128, 64, 1); + myOled.display(); + //wait(1); + } + + else if (2 == flagUp) { + flagUp = 0; + location = 0; + //currentMode = !currentMode; + myOled.clearDisplay(); + myOled.drawBitmap(location, 0, pic2Logo, 128, 64, 1); + myOled.display(); + //wait(1); + } + + + + + + + + } +}
diff -r 000000000000 -r d708873b182d mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Thu May 12 02:00:18 2022 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/mbed_official/code/mbed/builds/65be27845400 \ No newline at end of file