To avoid the LOW_FREQUENCY_VALUE issue. Change the 32768 direct value as for it.

Fork of EFM32_SegmentLCD by Silicon Labs

Committer:
ura_pooh
Date:
Wed Dec 14 10:28:25 2016 +0000
Revision:
7:10a37bbb0698
Parent:
6:114aa75da77b
LOW FREQUENCY VALUE was not founded. So I changed to modify 32768  as the value.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Steven Cooreman 0:559902e88130 1 /**************************************************************************//**
Steven Cooreman 0:559902e88130 2 * @file
Steven Cooreman 1:5335eb33bfcb 3 * @brief Segment LCD Config for the EFM32 Wonder Gecko STK (STK_3800)
Steven Cooreman 0:559902e88130 4 * @version 3.20.5
Steven Cooreman 0:559902e88130 5 ******************************************************************************
Steven Cooreman 0:559902e88130 6 * @section License
Steven Cooreman 0:559902e88130 7 * <b>(C) Copyright 2014 Silicon Labs, http://www.silabs.com</b>
Steven Cooreman 0:559902e88130 8 *******************************************************************************
Steven Cooreman 0:559902e88130 9 *
Steven Cooreman 0:559902e88130 10 * This file is licensensed under the Silabs License Agreement. See the file
Steven Cooreman 0:559902e88130 11 * "Silabs_License_Agreement.txt" for details. Before using this software for
Steven Cooreman 0:559902e88130 12 * any purpose, you must agree to the terms of that agreement.
Steven Cooreman 0:559902e88130 13 *
Steven Cooreman 0:559902e88130 14 ******************************************************************************/
Steven Cooreman 0:559902e88130 15
Steven Cooreman 0:559902e88130 16 #ifndef __SEGMENTLCDCONFIG_H
Steven Cooreman 0:559902e88130 17 #define __SEGMENTLCDCONFIG_H
Steven Cooreman 0:559902e88130 18
Steven Cooreman 0:559902e88130 19 #include "em_lcd.h"
stevew817 6:114aa75da77b 20 #include "PinNames.h"
Steven Cooreman 0:559902e88130 21
Steven Cooreman 0:559902e88130 22 #ifdef __cplusplus
Steven Cooreman 0:559902e88130 23 extern "C" {
Steven Cooreman 0:559902e88130 24 #endif
Steven Cooreman 0:559902e88130 25
Steven Cooreman 0:559902e88130 26 /** Range of symbols available on display */
Steven Cooreman 0:559902e88130 27 typedef enum {
Steven Cooreman 0:559902e88130 28 LCD_SYMBOL_GECKO,
Steven Cooreman 0:559902e88130 29 LCD_SYMBOL_ANT,
Steven Cooreman 0:559902e88130 30 LCD_SYMBOL_PAD0,
Steven Cooreman 0:559902e88130 31 LCD_SYMBOL_PAD1,
Steven Cooreman 0:559902e88130 32 LCD_SYMBOL_EFM32,
Steven Cooreman 0:559902e88130 33 LCD_SYMBOL_MINUS,
Steven Cooreman 0:559902e88130 34 LCD_SYMBOL_COL3,
Steven Cooreman 0:559902e88130 35 LCD_SYMBOL_COL5,
Steven Cooreman 0:559902e88130 36 LCD_SYMBOL_COL10,
Steven Cooreman 0:559902e88130 37 LCD_SYMBOL_DEGC,
Steven Cooreman 0:559902e88130 38 LCD_SYMBOL_DEGF,
Steven Cooreman 0:559902e88130 39 LCD_SYMBOL_DP2,
Steven Cooreman 0:559902e88130 40 LCD_SYMBOL_DP3,
Steven Cooreman 0:559902e88130 41 LCD_SYMBOL_DP4,
Steven Cooreman 0:559902e88130 42 LCD_SYMBOL_DP5,
Steven Cooreman 0:559902e88130 43 LCD_SYMBOL_DP6,
Steven Cooreman 0:559902e88130 44 LCD_SYMBOL_DP10,
Steven Cooreman 0:559902e88130 45 } lcdSymbol;
Steven Cooreman 0:559902e88130 46
Steven Cooreman 0:559902e88130 47 #define LCD_SYMBOL_GECKO_COM 1
Steven Cooreman 0:559902e88130 48 #define LCD_SYMBOL_GECKO_SEG 12
Steven Cooreman 0:559902e88130 49 #define LCD_SYMBOL_ANT_COM 0
Steven Cooreman 0:559902e88130 50 #define LCD_SYMBOL_ANT_SEG 32
Steven Cooreman 0:559902e88130 51 #define LCD_SYMBOL_PAD0_COM 3
Steven Cooreman 0:559902e88130 52 #define LCD_SYMBOL_PAD0_SEG 39
Steven Cooreman 0:559902e88130 53 #define LCD_SYMBOL_PAD1_COM 2
Steven Cooreman 0:559902e88130 54 #define LCD_SYMBOL_PAD1_SEG 12
Steven Cooreman 0:559902e88130 55 #define LCD_SYMBOL_EFM32_COM 0
Steven Cooreman 0:559902e88130 56 #define LCD_SYMBOL_EFM32_SEG 28
Steven Cooreman 0:559902e88130 57 #define LCD_SYMBOL_MINUS_COM 3
Steven Cooreman 0:559902e88130 58 #define LCD_SYMBOL_MINUS_SEG 12
Steven Cooreman 0:559902e88130 59 #define LCD_SYMBOL_COL3_COM 4
Steven Cooreman 0:559902e88130 60 #define LCD_SYMBOL_COL3_SEG 12
Steven Cooreman 0:559902e88130 61 #define LCD_SYMBOL_COL5_COM 0
Steven Cooreman 0:559902e88130 62 #define LCD_SYMBOL_COL5_SEG 30
Steven Cooreman 0:559902e88130 63 #define LCD_SYMBOL_COL10_COM 5
Steven Cooreman 0:559902e88130 64 #define LCD_SYMBOL_COL10_SEG 39
Steven Cooreman 0:559902e88130 65 #define LCD_SYMBOL_DEGC_COM 0
Steven Cooreman 0:559902e88130 66 #define LCD_SYMBOL_DEGC_SEG 34
Steven Cooreman 0:559902e88130 67 #define LCD_SYMBOL_DEGF_COM 0
Steven Cooreman 0:559902e88130 68 #define LCD_SYMBOL_DEGF_SEG 35
Steven Cooreman 0:559902e88130 69 #define LCD_SYMBOL_DP2_COM 7
Steven Cooreman 0:559902e88130 70 #define LCD_SYMBOL_DP2_SEG 12
Steven Cooreman 0:559902e88130 71 #define LCD_SYMBOL_DP3_COM 5
Steven Cooreman 0:559902e88130 72 #define LCD_SYMBOL_DP3_SEG 12
Steven Cooreman 0:559902e88130 73 #define LCD_SYMBOL_DP4_COM 6
Steven Cooreman 0:559902e88130 74 #define LCD_SYMBOL_DP4_SEG 12
Steven Cooreman 0:559902e88130 75 #define LCD_SYMBOL_DP5_COM 7
Steven Cooreman 0:559902e88130 76 #define LCD_SYMBOL_DP5_SEG 29
Steven Cooreman 0:559902e88130 77 #define LCD_SYMBOL_DP6_COM 7
Steven Cooreman 0:559902e88130 78 #define LCD_SYMBOL_DP6_SEG 31
Steven Cooreman 0:559902e88130 79 #define LCD_SYMBOL_DP10_COM 4
Steven Cooreman 0:559902e88130 80 #define LCD_SYMBOL_DP10_SEG 39
Steven Cooreman 0:559902e88130 81
Steven Cooreman 0:559902e88130 82 /* LCD Controller Prescaler (divide LFACLK / 64) */
Steven Cooreman 0:559902e88130 83 /* LFACLK_LCDpre = 512 Hz */
Steven Cooreman 0:559902e88130 84 /* Set FDIV=0, means 512/1 = 512 Hz */
Steven Cooreman 0:559902e88130 85 /* With octaplex mode, 512/16 => 32 Hz Frame Rate */
Steven Cooreman 0:559902e88130 86 #define LCD_CMU_CLK_PRE cmuClkDiv_64
Steven Cooreman 0:559902e88130 87 #define LCD_CMU_CLK_DIV cmuClkDiv_1
Steven Cooreman 0:559902e88130 88
Steven Cooreman 0:559902e88130 89 #define LCD_BOOST_LEVEL lcdVBoostLevel3
Steven Cooreman 0:559902e88130 90
Steven Cooreman 0:559902e88130 91
Steven Cooreman 0:559902e88130 92 #define LCD_INIT_DEF \
Steven Cooreman 0:559902e88130 93 { true,\
Steven Cooreman 0:559902e88130 94 lcdMuxOctaplex,\
Steven Cooreman 0:559902e88130 95 lcdBiasOneFourth,\
Steven Cooreman 0:559902e88130 96 lcdWaveLowPower,\
Steven Cooreman 0:559902e88130 97 lcdVLCDSelVDD, \
Steven Cooreman 0:559902e88130 98 lcdConConfVLCD }
Steven Cooreman 0:559902e88130 99
Steven Cooreman 0:559902e88130 100 #define LCD_NUMBER_OFF() \
Steven Cooreman 0:559902e88130 101 do { \
Steven Cooreman 0:559902e88130 102 LCD_SegmentSetHigh(1, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 103 LCD_SegmentSetHigh(2, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 104 LCD_SegmentSetHigh(3, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 105 LCD_SegmentSetHigh(4, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 106 LCD_SegmentSetHigh(5, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 107 LCD_SegmentSetHigh(6, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 108 LCD_SegmentSetHigh(7, 0x00000078, 0x00000000); \
Steven Cooreman 0:559902e88130 109 } while (0)
Steven Cooreman 0:559902e88130 110
Steven Cooreman 0:559902e88130 111 #define LCD_ALPHA_NUMBER_OFF() \
Steven Cooreman 0:559902e88130 112 do { \
Steven Cooreman 0:559902e88130 113 LCD_SegmentSetLow(7, 0x500FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 114 LCD_SegmentSetLow(6, 0xF00FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 115 LCD_SegmentSetLow(5, 0xF00FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 116 LCD_SegmentSetLow(4, 0xF00FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 117 LCD_SegmentSetLow(3, 0xF00FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 118 LCD_SegmentSetLow(2, 0xF00FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 119 LCD_SegmentSetLow(1, 0xF00FE000, 0x00000000);\
Steven Cooreman 0:559902e88130 120 LCD_SegmentSetLow(0, 0xA0000000, 0x00000000);\
Steven Cooreman 0:559902e88130 121 LCD_SegmentSetHigh(7, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 122 LCD_SegmentSetHigh(6, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 123 LCD_SegmentSetHigh(5, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 124 LCD_SegmentSetHigh(4, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 125 LCD_SegmentSetHigh(3, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 126 LCD_SegmentSetHigh(2, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 127 LCD_SegmentSetHigh(1, 0x00000007, 0x00000000);\
Steven Cooreman 0:559902e88130 128 } while(0)
Steven Cooreman 0:559902e88130 129
Steven Cooreman 0:559902e88130 130 #define LCD_ALL_SEGMENTS_OFF() \
Steven Cooreman 0:559902e88130 131 do { \
Steven Cooreman 0:559902e88130 132 LCD_SegmentSetLow(0, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 133 LCD_SegmentSetLow(1, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 134 LCD_SegmentSetLow(2, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 135 LCD_SegmentSetLow(3, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 136 LCD_SegmentSetLow(4, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 137 LCD_SegmentSetLow(5, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 138 LCD_SegmentSetLow(6, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 139 LCD_SegmentSetLow(7, 0xF00FF000, 0x00000000);\
Steven Cooreman 0:559902e88130 140 LCD_SegmentSetHigh(0, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 141 LCD_SegmentSetHigh(1, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 142 LCD_SegmentSetHigh(2, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 143 LCD_SegmentSetHigh(3, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 144 LCD_SegmentSetHigh(4, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 145 LCD_SegmentSetHigh(5, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 146 LCD_SegmentSetHigh(6, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 147 LCD_SegmentSetHigh(7, 0x000000FF, 0x00000000);\
Steven Cooreman 0:559902e88130 148 } while(0)
Steven Cooreman 0:559902e88130 149
Steven Cooreman 0:559902e88130 150 #define LCD_ALL_SEGMENTS_ON() \
Steven Cooreman 0:559902e88130 151 do { \
Steven Cooreman 0:559902e88130 152 LCD_SegmentSetLow(0, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 153 LCD_SegmentSetLow(1, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 154 LCD_SegmentSetLow(2, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 155 LCD_SegmentSetLow(3, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 156 LCD_SegmentSetLow(4, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 157 LCD_SegmentSetLow(5, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 158 LCD_SegmentSetLow(6, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 159 LCD_SegmentSetLow(7, 0xF00FF000, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 160 LCD_SegmentSetHigh(0, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 161 LCD_SegmentSetHigh(1, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 162 LCD_SegmentSetHigh(2, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 163 LCD_SegmentSetHigh(3, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 164 LCD_SegmentSetHigh(4, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 165 LCD_SegmentSetHigh(5, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 166 LCD_SegmentSetHigh(6, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 167 LCD_SegmentSetHigh(7, 0x000000FF, 0xFFFFFFFF);\
Steven Cooreman 0:559902e88130 168 } while(0)
Steven Cooreman 0:559902e88130 169
Steven Cooreman 0:559902e88130 170 #define LCD_SEGMENTS_ENABLE() \
Steven Cooreman 0:559902e88130 171 do { \
Steven Cooreman 0:559902e88130 172 LCD_SegmentRangeEnable(lcdSegment12_15, true);\
Steven Cooreman 0:559902e88130 173 LCD_SegmentRangeEnable(lcdSegment16_19, true);\
Steven Cooreman 0:559902e88130 174 LCD_SegmentRangeEnable(lcdSegment28_31, true);\
Steven Cooreman 0:559902e88130 175 LCD_SegmentRangeEnable(lcdSegment32_35, true);\
Steven Cooreman 0:559902e88130 176 LCD_SegmentRangeEnable(lcdSegment36_39, true);\
Steven Cooreman 0:559902e88130 177 } while(0)
Steven Cooreman 0:559902e88130 178
Steven Cooreman 0:559902e88130 179 #define LCD_DISPLAY_ENABLE() \
Steven Cooreman 0:559902e88130 180 do { \
Steven Cooreman 0:559902e88130 181 ;\
Steven Cooreman 0:559902e88130 182 } while(0)
Steven Cooreman 0:559902e88130 183
Steven Cooreman 0:559902e88130 184 #define EFM_DISPLAY_DEF {\
Steven Cooreman 0:559902e88130 185 .Text = {\
Steven Cooreman 0:559902e88130 186 { /* 1 */\
Steven Cooreman 0:559902e88130 187 .com[0] = 1, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 188 .bit[0] = 13, .bit[1] = 14, .bit[2] = 14, .bit[3] = 14,\
Steven Cooreman 0:559902e88130 189 .com[4] = 7, .com[5] = 3, .com[6] = 4, .com[7] = 2,\
Steven Cooreman 0:559902e88130 190 .bit[4] = 13, .bit[5] = 13, .bit[6] = 13, .bit[7] = 13,\
Steven Cooreman 0:559902e88130 191 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 192 .bit[8] = 14, .bit[9] = 14, .bit[10] = 14, .bit[11] = 14,\
Steven Cooreman 0:559902e88130 193 .com[12] = 5, .com[13] = 6,\
Steven Cooreman 0:559902e88130 194 .bit[12] = 13, .bit[13] = 13\
Steven Cooreman 0:559902e88130 195 },\
Steven Cooreman 0:559902e88130 196 { /* 2 */\
Steven Cooreman 0:559902e88130 197 .com[0] = 1, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 198 .bit[0] = 15, .bit[1] = 16, .bit[2] = 16, .bit[3] = 16,\
Steven Cooreman 0:559902e88130 199 .com[4] = 7, .com[5] = 3, .com[6] = 4, .com[7] = 2,\
Steven Cooreman 0:559902e88130 200 .bit[4] = 15, .bit[5] = 15, .bit[6] = 15, .bit[7] = 15,\
Steven Cooreman 0:559902e88130 201 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 202 .bit[8] = 16, .bit[9] = 16, .bit[10] = 16, .bit[11] = 16,\
Steven Cooreman 0:559902e88130 203 .com[12] = 5, .com[13] = 6,\
Steven Cooreman 0:559902e88130 204 .bit[12] = 15, .bit[13] = 15\
Steven Cooreman 0:559902e88130 205 },\
Steven Cooreman 0:559902e88130 206 { /* 3 */\
Steven Cooreman 0:559902e88130 207 .com[0] = 1, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 208 .bit[0] = 17, .bit[1] = 18, .bit[2] = 18, .bit[3] = 18,\
Steven Cooreman 0:559902e88130 209 .com[4] = 7, .com[5] = 3, .com[6] = 4, .com[7] = 2,\
Steven Cooreman 0:559902e88130 210 .bit[4] = 17, .bit[5] = 17, .bit[6] = 17, .bit[7] = 17,\
Steven Cooreman 0:559902e88130 211 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 212 .bit[8] = 18, .bit[9] = 18, .bit[10] = 18, .bit[11] = 18,\
Steven Cooreman 0:559902e88130 213 .com[12] = 5, .com[13] = 6,\
Steven Cooreman 0:559902e88130 214 .bit[12] = 17, .bit[13] = 17\
Steven Cooreman 0:559902e88130 215 },\
Steven Cooreman 0:559902e88130 216 { /* 4 */\
Steven Cooreman 0:559902e88130 217 .com[0] = 1, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 218 .bit[0] = 19, .bit[1] = 28, .bit[2] = 28, .bit[3] = 28,\
Steven Cooreman 0:559902e88130 219 .com[4] = 7, .com[5] = 3, .com[6] = 4, .com[7] = 2,\
Steven Cooreman 0:559902e88130 220 .bit[4] = 19, .bit[5] = 19, .bit[6] = 19, .bit[7] = 19,\
Steven Cooreman 0:559902e88130 221 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 222 .bit[8] = 28, .bit[9] = 28, .bit[10] = 28, .bit[11] = 28,\
Steven Cooreman 0:559902e88130 223 .com[12] = 5, .com[13] = 6,\
Steven Cooreman 0:559902e88130 224 .bit[12] = 19, .bit[13] = 19\
Steven Cooreman 0:559902e88130 225 },\
Steven Cooreman 0:559902e88130 226 { /* 5 */\
Steven Cooreman 0:559902e88130 227 .com[0] = 0, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 228 .bit[0] = 29, .bit[1] = 30, .bit[2] = 30, .bit[3] = 30,\
Steven Cooreman 0:559902e88130 229 .com[4] = 6, .com[5] = 2, .com[6] = 3, .com[7] = 1,\
Steven Cooreman 0:559902e88130 230 .bit[4] = 29, .bit[5] = 29, .bit[6] = 29, .bit[7] = 29,\
Steven Cooreman 0:559902e88130 231 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 232 .bit[8] = 30, .bit[9] = 30, .bit[10] = 30, .bit[11] = 30,\
Steven Cooreman 0:559902e88130 233 .com[12] = 4, .com[13] = 5,\
Steven Cooreman 0:559902e88130 234 .bit[12] = 29, .bit[13] = 29\
Steven Cooreman 0:559902e88130 235 },\
Steven Cooreman 0:559902e88130 236 { /* 6 */\
Steven Cooreman 0:559902e88130 237 .com[0] = 0, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 238 .bit[0] = 31, .bit[1] = 32, .bit[2] = 32, .bit[3] = 32,\
Steven Cooreman 0:559902e88130 239 .com[4] = 6, .com[5] = 2, .com[6] = 3, .com[7] = 1,\
Steven Cooreman 0:559902e88130 240 .bit[4] = 31, .bit[5] = 31, .bit[6] = 31, .bit[7] = 31,\
Steven Cooreman 0:559902e88130 241 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 242 .bit[8] = 32, .bit[9] = 32, .bit[10] = 32, .bit[11] = 32,\
Steven Cooreman 0:559902e88130 243 .com[12] = 4, .com[13] = 5,\
Steven Cooreman 0:559902e88130 244 .bit[12] = 31, .bit[13] = 31\
Steven Cooreman 0:559902e88130 245 },\
Steven Cooreman 0:559902e88130 246 { /* 7 */\
Steven Cooreman 0:559902e88130 247 .com[0] = 1, .com[1] = 1, .com[2] = 5, .com[3] = 7,\
Steven Cooreman 0:559902e88130 248 .bit[0] = 33, .bit[1] = 34, .bit[2] = 34, .bit[3] = 34,\
Steven Cooreman 0:559902e88130 249 .com[4] = 7, .com[5] = 3, .com[6] = 4, .com[7] = 2,\
Steven Cooreman 0:559902e88130 250 .bit[4] = 33, .bit[5] = 33, .bit[6] = 33, .bit[7] = 33,\
Steven Cooreman 0:559902e88130 251 .com[8] = 3, .com[9] = 2, .com[10] = 4, .com[11] = 6,\
Steven Cooreman 0:559902e88130 252 .bit[8] = 34, .bit[9] = 34, .bit[10] = 34, .bit[11] = 34,\
Steven Cooreman 0:559902e88130 253 .com[12] = 5, .com[13] = 6,\
Steven Cooreman 0:559902e88130 254 .bit[12] = 33, .bit[13] = 33\
Steven Cooreman 0:559902e88130 255 },\
Steven Cooreman 0:559902e88130 256 },\
Steven Cooreman 0:559902e88130 257 .Number = {\
Steven Cooreman 0:559902e88130 258 {\
Steven Cooreman 0:559902e88130 259 .com[0] = 7, .com[1] = 5, .com[2] = 2, .com[3] = 1,\
Steven Cooreman 0:559902e88130 260 .bit[0] = 35, .bit[1] = 35, .bit[2] = 35, .bit[3] = 35,\
Steven Cooreman 0:559902e88130 261 .com[4] = 3, .com[5] = 6, .com[6] = 4,\
Steven Cooreman 0:559902e88130 262 .bit[4] = 35, .bit[5] = 35, .bit[6] = 35,\
Steven Cooreman 0:559902e88130 263 },\
Steven Cooreman 0:559902e88130 264 {\
Steven Cooreman 0:559902e88130 265 .com[0] = 7, .com[1] = 5, .com[2] = 2, .com[3] = 1,\
Steven Cooreman 0:559902e88130 266 .bit[0] = 36, .bit[1] = 36, .bit[2] = 36, .bit[3] = 36,\
Steven Cooreman 0:559902e88130 267 .com[4] = 3, .com[5] = 6, .com[6] = 4,\
Steven Cooreman 0:559902e88130 268 .bit[4] = 36, .bit[5] = 36, .bit[6] = 36,\
Steven Cooreman 0:559902e88130 269 },\
Steven Cooreman 0:559902e88130 270 {\
Steven Cooreman 0:559902e88130 271 .com[0] = 7, .com[1] = 5, .com[2] = 2, .com[3] = 1,\
Steven Cooreman 0:559902e88130 272 .bit[0] = 37, .bit[1] = 37, .bit[2] = 37, .bit[3] = 37,\
Steven Cooreman 0:559902e88130 273 .com[4] = 3, .com[5] = 6, .com[6] = 4,\
Steven Cooreman 0:559902e88130 274 .bit[4] = 37, .bit[5] = 37, .bit[6] = 37,\
Steven Cooreman 0:559902e88130 275 },\
Steven Cooreman 0:559902e88130 276 {\
Steven Cooreman 0:559902e88130 277 .com[0] = 7, .com[1] = 5, .com[2] = 2, .com[3] = 1,\
Steven Cooreman 0:559902e88130 278 .bit[0] = 38, .bit[1] = 38, .bit[2] = 38, .bit[3] = 38,\
Steven Cooreman 0:559902e88130 279 .com[4] = 3, .com[5] = 6, .com[6] = 4,\
Steven Cooreman 0:559902e88130 280 .bit[4] = 38, .bit[5] = 38, .bit[6] = 38,\
Steven Cooreman 0:559902e88130 281 },\
Steven Cooreman 0:559902e88130 282 },\
Steven Cooreman 0:559902e88130 283 .EMode = {\
Steven Cooreman 0:559902e88130 284 .com[0] = 0, .bit[0] = 39,\
Steven Cooreman 0:559902e88130 285 .com[1] = 1, .bit[1] = 39,\
Steven Cooreman 0:559902e88130 286 .com[2] = 7, .bit[2] = 39,\
Steven Cooreman 0:559902e88130 287 .com[3] = 2, .bit[3] = 39,\
Steven Cooreman 0:559902e88130 288 .com[4] = 6, .bit[4] = 39,\
Steven Cooreman 0:559902e88130 289 },\
Steven Cooreman 0:559902e88130 290 .ARing = {\
Steven Cooreman 0:559902e88130 291 .com[0] = 0, .bit[0] = 19,\
Steven Cooreman 0:559902e88130 292 .com[1] = 0, .bit[1] = 18,\
Steven Cooreman 0:559902e88130 293 .com[2] = 0, .bit[2] = 17,\
Steven Cooreman 0:559902e88130 294 .com[3] = 0, .bit[3] = 16,\
Steven Cooreman 0:559902e88130 295 .com[4] = 0, .bit[4] = 15,\
Steven Cooreman 0:559902e88130 296 .com[5] = 0, .bit[5] = 14,\
Steven Cooreman 0:559902e88130 297 .com[6] = 0, .bit[6] = 13,\
Steven Cooreman 0:559902e88130 298 .com[7] = 0, .bit[7] = 12,\
Steven Cooreman 0:559902e88130 299 },\
Steven Cooreman 0:559902e88130 300 .Battery = {\
Steven Cooreman 0:559902e88130 301 .com[0] = 0, .bit[0] = 33,\
Steven Cooreman 0:559902e88130 302 .com[1] = 0, .bit[1] = 37,\
Steven Cooreman 0:559902e88130 303 .com[2] = 0, .bit[2] = 36,\
Steven Cooreman 0:559902e88130 304 .com[3] = 0, .bit[3] = 38,\
Steven Cooreman 0:559902e88130 305 }\
Steven Cooreman 0:559902e88130 306 }
Steven Cooreman 0:559902e88130 307
Steven Cooreman 0:559902e88130 308 static const PinName outPins[] = {
Steven Cooreman 0:559902e88130 309 /* SEG28..39 */
Steven Cooreman 0:559902e88130 310 PA7, //LCD_SEG35
Steven Cooreman 0:559902e88130 311 PA8, //LCD_SEG36
Steven Cooreman 0:559902e88130 312 PA9, //LCD_SEG37
Steven Cooreman 0:559902e88130 313 PA10, //LCD_SEG38
Steven Cooreman 0:559902e88130 314 PA11, //LCD_SEG39
Steven Cooreman 0:559902e88130 315 PB0, //LCD_SEG32
Steven Cooreman 0:559902e88130 316 PB1, //LCD_SEG33
Steven Cooreman 0:559902e88130 317 PB2, //LCD_SEG34
Steven Cooreman 0:559902e88130 318 PD9, //LCD_SEG28
Steven Cooreman 0:559902e88130 319 PD10, //LCD_SEG29
Steven Cooreman 0:559902e88130 320 PD11, //LCD_SEG30
Steven Cooreman 0:559902e88130 321 PD12, //LCD_SEG31
Steven Cooreman 0:559902e88130 322 /* SEG12..19 */
Steven Cooreman 0:559902e88130 323 PA0, //LCD_SEG13
Steven Cooreman 0:559902e88130 324 PA1, //LCD_SEG14
Steven Cooreman 0:559902e88130 325 PA2, //LCD_SEG15
Steven Cooreman 0:559902e88130 326 PA3, //LCD_SEG16
Steven Cooreman 0:559902e88130 327 PA4, //LCD_SEG17
Steven Cooreman 0:559902e88130 328 PA5, //LCD_SEG18
Steven Cooreman 0:559902e88130 329 PA6, //LCD_SEG19
Steven Cooreman 0:559902e88130 330 PA15, //LCD_SEG12
Steven Cooreman 0:559902e88130 331 /* COM4..7 */
Steven Cooreman 0:559902e88130 332 PB3, //LCD_COM4
Steven Cooreman 0:559902e88130 333 PB4, //LCD_COM5
Steven Cooreman 0:559902e88130 334 PB5, //LCD_COM6
Steven Cooreman 0:559902e88130 335 PB6, //LCD_COM7
Steven Cooreman 0:559902e88130 336 /* COM0..3 */
Steven Cooreman 0:559902e88130 337 PE4, //LCD_COM0
Steven Cooreman 0:559902e88130 338 PE5, //LCD_COM1
Steven Cooreman 0:559902e88130 339 PE6, //LCD_COM2
Steven Cooreman 0:559902e88130 340 PE7 //LCD_COM3
Steven Cooreman 0:559902e88130 341 };
Steven Cooreman 0:559902e88130 342
Steven Cooreman 0:559902e88130 343 #ifdef __cplusplus
Steven Cooreman 0:559902e88130 344 }
Steven Cooreman 0:559902e88130 345 #endif
Steven Cooreman 0:559902e88130 346
Steven Cooreman 0:559902e88130 347 #endif