Hexiwear oled display from KDS3

Dependencies:   Hexi_OLED_SSD1351

Committer:
i_am_kitsune
Date:
Wed Sep 13 04:39:40 2017 +0000
Revision:
0:cdbd5046f3d8
Hexiwear Display

Who changed what in which revision?

UserRevisionLine numberNew contents of line
i_am_kitsune 0:cdbd5046f3d8 1 #include "mbed.h"
i_am_kitsune 0:cdbd5046f3d8 2 #include "Hexi_OLED_SSD1351.h"
i_am_kitsune 0:cdbd5046f3d8 3 #include "string.h"
i_am_kitsune 0:cdbd5046f3d8 4
i_am_kitsune 0:cdbd5046f3d8 5 #define D {}
i_am_kitsune 0:cdbd5046f3d8 6
i_am_kitsune 0:cdbd5046f3d8 7 //#define DEBUG_LOGO
i_am_kitsune 0:cdbd5046f3d8 8 #define DEBUG_BUTTON
i_am_kitsune 0:cdbd5046f3d8 9 //#define DEBUG_WATCH
i_am_kitsune 0:cdbd5046f3d8 10 //#define DEBUG_APP
i_am_kitsune 0:cdbd5046f3d8 11 //#define DEBUG_WEATHER
i_am_kitsune 0:cdbd5046f3d8 12 //#define DEBUG_MOTION
i_am_kitsune 0:cdbd5046f3d8 13 //#define DEBUG_FLASHLIGHT
i_am_kitsune 0:cdbd5046f3d8 14 //#define DEBUG_NOTIFICATION
i_am_kitsune 0:cdbd5046f3d8 15
i_am_kitsune 0:cdbd5046f3d8 16
i_am_kitsune 0:cdbd5046f3d8 17 #ifdef DEBUG_LOGO
i_am_kitsune 0:cdbd5046f3d8 18 #include "logo.h"
i_am_kitsune 0:cdbd5046f3d8 19 #endif
i_am_kitsune 0:cdbd5046f3d8 20 #ifdef DEBUG_BUTTON
i_am_kitsune 0:cdbd5046f3d8 21 #include "button.h"
i_am_kitsune 0:cdbd5046f3d8 22 #endif
i_am_kitsune 0:cdbd5046f3d8 23 #ifdef DEBUG_WATCH
i_am_kitsune 0:cdbd5046f3d8 24 #include "watch.h"
i_am_kitsune 0:cdbd5046f3d8 25 #endif
i_am_kitsune 0:cdbd5046f3d8 26 #ifdef DEBUG_APP
i_am_kitsune 0:cdbd5046f3d8 27 #include "app.h"
i_am_kitsune 0:cdbd5046f3d8 28 #endif
i_am_kitsune 0:cdbd5046f3d8 29 #ifdef DEBUG_WEATHER
i_am_kitsune 0:cdbd5046f3d8 30 #include "weather.h"
i_am_kitsune 0:cdbd5046f3d8 31 #endif
i_am_kitsune 0:cdbd5046f3d8 32 #ifdef DEBUG_MOTION
i_am_kitsune 0:cdbd5046f3d8 33 #include "motion.h"
i_am_kitsune 0:cdbd5046f3d8 34 #endif
i_am_kitsune 0:cdbd5046f3d8 35 #ifdef DEBUG_FLASHLIGHT
i_am_kitsune 0:cdbd5046f3d8 36 #include "flashlight.h"
i_am_kitsune 0:cdbd5046f3d8 37 #endif
i_am_kitsune 0:cdbd5046f3d8 38 #ifdef DEBUG_NOTIFICATION
i_am_kitsune 0:cdbd5046f3d8 39 #include "notification.h"
i_am_kitsune 0:cdbd5046f3d8 40 #endif
i_am_kitsune 0:cdbd5046f3d8 41
i_am_kitsune 0:cdbd5046f3d8 42 DigitalOut led1(LED1);
i_am_kitsune 0:cdbd5046f3d8 43 SSD1351 oled(PTB22,PTB21,PTC13,PTB20,PTE6, PTD15); /* (MOSI,SCLK,POWER,CS,RST,DC) */
i_am_kitsune 0:cdbd5046f3d8 44
i_am_kitsune 0:cdbd5046f3d8 45 const uint8_t *image;
i_am_kitsune 0:cdbd5046f3d8 46
i_am_kitsune 0:cdbd5046f3d8 47 // main() runs in its own thread in the OS
i_am_kitsune 0:cdbd5046f3d8 48 int main()
i_am_kitsune 0:cdbd5046f3d8 49 {
i_am_kitsune 0:cdbd5046f3d8 50
i_am_kitsune 0:cdbd5046f3d8 51 while (true) {
i_am_kitsune 0:cdbd5046f3d8 52 led1 = !led1;
i_am_kitsune 0:cdbd5046f3d8 53
i_am_kitsune 0:cdbd5046f3d8 54
i_am_kitsune 0:cdbd5046f3d8 55 #ifdef DEBUG_LOGO
i_am_kitsune 0:cdbd5046f3d8 56 image = hexiwear_logo_bmp;
i_am_kitsune 0:cdbd5046f3d8 57 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 58 D Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 59 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 60 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 61 #endif
i_am_kitsune 0:cdbd5046f3d8 62
i_am_kitsune 0:cdbd5046f3d8 63 #ifdef DEBUG_BUTTON
i_am_kitsune 0:cdbd5046f3d8 64
i_am_kitsune 0:cdbd5046f3d8 65 image = buttonGroup_left_bmp;
i_am_kitsune 0:cdbd5046f3d8 66 oled.DrawImage(image,2,30);
i_am_kitsune 0:cdbd5046f3d8 67
i_am_kitsune 0:cdbd5046f3d8 68 image = buttonGroup_left_bmp;
i_am_kitsune 0:cdbd5046f3d8 69 oled.DrawImage(image,2,57);
i_am_kitsune 0:cdbd5046f3d8 70
i_am_kitsune 0:cdbd5046f3d8 71 D Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 72 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 73
i_am_kitsune 0:cdbd5046f3d8 74 image = buttonGroup_right_bmp;
i_am_kitsune 0:cdbd5046f3d8 75 oled.DrawImage(image,92,30);
i_am_kitsune 0:cdbd5046f3d8 76
i_am_kitsune 0:cdbd5046f3d8 77 image = buttonGroup_right_bmp;
i_am_kitsune 0:cdbd5046f3d8 78 oled.DrawImage(image,92,57);
i_am_kitsune 0:cdbd5046f3d8 79
i_am_kitsune 0:cdbd5046f3d8 80 D Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 81 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 82
i_am_kitsune 0:cdbd5046f3d8 83 image = button_start_bmp;
i_am_kitsune 0:cdbd5046f3d8 84 oled.DrawImage(image,50,81);
i_am_kitsune 0:cdbd5046f3d8 85
i_am_kitsune 0:cdbd5046f3d8 86 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 87 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 88
i_am_kitsune 0:cdbd5046f3d8 89 image = button_stop_bmp;
i_am_kitsune 0:cdbd5046f3d8 90 oled.DrawImage(image,50,81);
i_am_kitsune 0:cdbd5046f3d8 91
i_am_kitsune 0:cdbd5046f3d8 92 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 93 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 94
i_am_kitsune 0:cdbd5046f3d8 95 image = button_back_bmp;
i_am_kitsune 0:cdbd5046f3d8 96 oled.DrawImage(image,0,81);
i_am_kitsune 0:cdbd5046f3d8 97
i_am_kitsune 0:cdbd5046f3d8 98 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 99 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 100
i_am_kitsune 0:cdbd5046f3d8 101 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 102 #endif
i_am_kitsune 0:cdbd5046f3d8 103
i_am_kitsune 0:cdbd5046f3d8 104 #ifdef DEBUG_MOTION
i_am_kitsune 0:cdbd5046f3d8 105 image = gui_motionControl_cover_bmp;
i_am_kitsune 0:cdbd5046f3d8 106 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 107 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 108
i_am_kitsune 0:cdbd5046f3d8 109 image = gui_motionControl_acc_bmp;
i_am_kitsune 0:cdbd5046f3d8 110 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 111 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 112
i_am_kitsune 0:cdbd5046f3d8 113 image = gui_motionControl_gyro_bmp;
i_am_kitsune 0:cdbd5046f3d8 114 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 115 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 116 #endif
i_am_kitsune 0:cdbd5046f3d8 117
i_am_kitsune 0:cdbd5046f3d8 118 #ifdef DEBUG_FLASHLIGHT
i_am_kitsune 0:cdbd5046f3d8 119 image = flashlight_screen_bmp;
i_am_kitsune 0:cdbd5046f3d8 120 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 121 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 122
i_am_kitsune 0:cdbd5046f3d8 123 image = flashlight_off_bmp;
i_am_kitsune 0:cdbd5046f3d8 124 oled.DrawImage(image,24,23);
i_am_kitsune 0:cdbd5046f3d8 125 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 126
i_am_kitsune 0:cdbd5046f3d8 127 image = flashlight_on_bmp;
i_am_kitsune 0:cdbd5046f3d8 128 oled.DrawImage(image,24,23);
i_am_kitsune 0:cdbd5046f3d8 129 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 130 #endif
i_am_kitsune 0:cdbd5046f3d8 131
i_am_kitsune 0:cdbd5046f3d8 132 #ifdef DEBUG_NOTIFICATION
i_am_kitsune 0:cdbd5046f3d8 133
i_am_kitsune 0:cdbd5046f3d8 134 image = gui_notifications_screen_bmp;
i_am_kitsune 0:cdbd5046f3d8 135 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 136 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 137
i_am_kitsune 0:cdbd5046f3d8 138 oled.FillScreen(COLOR_WHITE);
i_am_kitsune 0:cdbd5046f3d8 139 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 140
i_am_kitsune 0:cdbd5046f3d8 141 image = gui_notifications_mainScreen_bmp;
i_am_kitsune 0:cdbd5046f3d8 142 oled.DrawImage(image,0,0);
i_am_kitsune 0:cdbd5046f3d8 143 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 144
i_am_kitsune 0:cdbd5046f3d8 145 oled.FillScreen(COLOR_WHITE);
i_am_kitsune 0:cdbd5046f3d8 146 oled.FillScreen(COLOR_BLACK);
i_am_kitsune 0:cdbd5046f3d8 147
i_am_kitsune 0:cdbd5046f3d8 148 image = gui_notifications_mail_white_bmp;
i_am_kitsune 0:cdbd5046f3d8 149 oled.DrawImage(image,13,9);
i_am_kitsune 0:cdbd5046f3d8 150
i_am_kitsune 0:cdbd5046f3d8 151 image = gui_notifications_sms_white_bmp;
i_am_kitsune 0:cdbd5046f3d8 152 oled.DrawImage(image,16,32);
i_am_kitsune 0:cdbd5046f3d8 153
i_am_kitsune 0:cdbd5046f3d8 154 image = gui_notifications_call_white_bmp;
i_am_kitsune 0:cdbd5046f3d8 155 oled.DrawImage(image,16,54);
i_am_kitsune 0:cdbd5046f3d8 156 Thread::wait(1000);
i_am_kitsune 0:cdbd5046f3d8 157 #endif
i_am_kitsune 0:cdbd5046f3d8 158
i_am_kitsune 0:cdbd5046f3d8 159
i_am_kitsune 0:cdbd5046f3d8 160 }
i_am_kitsune 0:cdbd5046f3d8 161 }
i_am_kitsune 0:cdbd5046f3d8 162