Hexiwear OLED Display Driver
Dependents: Hexi_OLED_TextImage_Example Hexi_OLED_Text_Example Hexi_OLED_Image_Example security-console-app ... more
OLED_types.h
- Committer:
- khuang
- Date:
- 2016-08-19
- Revision:
- 2:fc06b5b5bf6a
- Parent:
- 1:3b5be0ee5f0c
- Child:
- 5:a5b4b36a1aed
File content as of revision 2:fc06b5b5bf6a:
/** * \file OLED_types.h * \version 1.00 * \brief OLED-related data structures * * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, this list * of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright notice, this * list of conditions and the following disclaimer in the documentation and/or * other materials provided with the distribution. * * Neither the name of NXP, nor the names of its * contributors may be used to endorse or promote products derived from this * software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * visit: http://www.mikroe.com and http://www.nxp.com * * get support at: http://www.mikroe.com/forum and https://community.nxp.com * * Project HEXIWEAR, 2015 */ /** * OLED-related data structures * Project HEXIWEAR, 2015 */ #ifndef HG_OLED_TYPES #define HG_OLED_TYPES #include <stdint.h> typedef enum { OLED_TRANSITION_NONE, OLED_TRANSITION_TOP_DOWN, OLED_TRANSITION_DOWN_TOP, OLED_TRANSITION_LEFT_RIGHT, OLED_TRANSITION_RIGHT_LEFT } oled_transition_t; typedef enum { OLED_STATUS_SUCCESS, // success OLED_STATUS_ERROR, // fail OLED_STATUS_PROTOCOL_ERROR, // SPI failure OLED_STATUS_INIT_ERROR, // initialization error OLED_STATUS_DEINIT_ERROR // deinitialization error } oled_status_t; #if 0 typedef struct { /** * SPI relevant information */ genericSpiHandle_t protocol; } handleOLED_t; #endif typedef uint16_t* oled_pixel_t; typedef struct { uint32_t DCpin; uint32_t CSpin; uint32_t RSTpin; // uint32_t RWpin; uint32_t ENpin; } settingsOLED_t; typedef enum { OLED_TEXT_ALIGN_NONE = 0, OLED_TEXT_ALIGN_LEFT = 0x1, OLED_TEXT_ALIGN_RIGHT = 0x2, OLED_TEXT_ALIGN_CENTER = 0x3, OLED_TEXT_VALIGN_TOP = 0x10, OLED_TEXT_VALIGN_BOTTOM = 0x20, OLED_TEXT_VALIGN_CENTER = 0x30 } oled_text_align_t; typedef struct { uint8_t xCrd; uint8_t yCrd; uint8_t width; uint8_t height; oled_pixel_t areaBuffer; } oled_dynamic_area_t; typedef struct { const uint8_t* font; uint16_t fontColor; oled_text_align_t alignParam; const uint8_t* background; } oled_text_properties_t; /** color chart */ typedef enum { COLOR_BLACK = 0x0000, COLOR_BLUE_1 = 0x06FF, COLOR_BLUE = 0x001F, COLOR_RED = 0xF800, COLOR_GREEN = 0x07E0, COLOR_CYAN = 0x07FF, COLOR_MAGENTA = 0xF81F, COLOR_YELLOW = 0xFFE0, COLOR_GRAY = 0x528A, COLOR_WHITE = 0xFFFF } Color_t; typedef struct _init_cmd_tag { uint32_t cmd; uint8_t type; } init_cmd_t; #endif