Library for TM1640 LED controller Initial version

Dependents:   mbed_TM1640

See here for more information.

Committer:
wim
Date:
Thu Jan 28 19:25:49 2016 +0000
Revision:
0:7e120ffa56d3
Library for TM1640 LED controller; Initial version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wim 0:7e120ffa56d3 1 /* mbed LED Font Library, for TM1640 LED controller
wim 0:7e120ffa56d3 2 * Copyright (c) 2016, v01: WH, Initial version, Test in LM1640
wim 0:7e120ffa56d3 3 *
wim 0:7e120ffa56d3 4 * Permission is hereby granted, free of charge, to any person obtaining a copy
wim 0:7e120ffa56d3 5 * of this software and associated documentation files (the "Software"), to deal
wim 0:7e120ffa56d3 6 * in the Software without restriction, including without limitation the rights
wim 0:7e120ffa56d3 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
wim 0:7e120ffa56d3 8 * copies of the Software, and to permit persons to whom the Software is
wim 0:7e120ffa56d3 9 * furnished to do so, subject to the following conditions:
wim 0:7e120ffa56d3 10 *
wim 0:7e120ffa56d3 11 * The above copyright notice and this permission notice shall be included in
wim 0:7e120ffa56d3 12 * all copies or substantial portions of the Software.
wim 0:7e120ffa56d3 13 *
wim 0:7e120ffa56d3 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
wim 0:7e120ffa56d3 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
wim 0:7e120ffa56d3 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
wim 0:7e120ffa56d3 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
wim 0:7e120ffa56d3 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
wim 0:7e120ffa56d3 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
wim 0:7e120ffa56d3 20 * THE SOFTWARE.
wim 0:7e120ffa56d3 21 */
wim 0:7e120ffa56d3 22 #include "Font_7Seg.h"
wim 0:7e120ffa56d3 23
wim 0:7e120ffa56d3 24 // Select one of the testboards for TM1640 LED controller
wim 0:7e120ffa56d3 25 #if (LM1640_TEST == 1)
wim 0:7e120ffa56d3 26
wim 0:7e120ffa56d3 27 //Mask for blending out and restoring Icons
wim 0:7e120ffa56d3 28 const char MASK_ICON_GRID[] = {
wim 0:7e120ffa56d3 29 LO(S7_ICON_GR1),
wim 0:7e120ffa56d3 30 LO(S7_ICON_GR2),
wim 0:7e120ffa56d3 31 LO(S7_ICON_GR3),
wim 0:7e120ffa56d3 32 LO(S7_ICON_GR4),
wim 0:7e120ffa56d3 33 LO(S7_ICON_GR5),
wim 0:7e120ffa56d3 34 LO(S7_ICON_GR6),
wim 0:7e120ffa56d3 35 LO(S7_ICON_GR7),
wim 0:7e120ffa56d3 36 LO(S7_ICON_GR8),
wim 0:7e120ffa56d3 37
wim 0:7e120ffa56d3 38 LO(S7_ICON_GR9),
wim 0:7e120ffa56d3 39 LO(S7_ICON_GR10),
wim 0:7e120ffa56d3 40 LO(S7_ICON_GR11),
wim 0:7e120ffa56d3 41 LO(S7_ICON_GR12),
wim 0:7e120ffa56d3 42 LO(S7_ICON_GR13),
wim 0:7e120ffa56d3 43 LO(S7_ICON_GR14),
wim 0:7e120ffa56d3 44 LO(S7_ICON_GR15),
wim 0:7e120ffa56d3 45 LO(S7_ICON_GR16)
wim 0:7e120ffa56d3 46 };
wim 0:7e120ffa56d3 47
wim 0:7e120ffa56d3 48 // ASCII Font definition table for transmission to TM1640
wim 0:7e120ffa56d3 49 //
wim 0:7e120ffa56d3 50 //#define FONT_7S_START 0x20
wim 0:7e120ffa56d3 51 //#define FONT_7S_END 0x7F
wim 0:7e120ffa56d3 52 //#define FONT_7S_NR_CHARS (FONT_7_END - FONT_7S_START + 1)
wim 0:7e120ffa56d3 53
wim 0:7e120ffa56d3 54 #if (SHOW_ASCII == 1)
wim 0:7e120ffa56d3 55 //display all ASCII characters
wim 0:7e120ffa56d3 56 const short FONT_7S[] = {
wim 0:7e120ffa56d3 57 C7_SPC, //32 0x20, Space
wim 0:7e120ffa56d3 58 C7_EXC,
wim 0:7e120ffa56d3 59 C7_QTE,
wim 0:7e120ffa56d3 60 C7_HSH,
wim 0:7e120ffa56d3 61 C7_DLR,
wim 0:7e120ffa56d3 62 C7_PCT,
wim 0:7e120ffa56d3 63 C7_AMP,
wim 0:7e120ffa56d3 64 C7_ACC,
wim 0:7e120ffa56d3 65 C7_LBR,
wim 0:7e120ffa56d3 66 C7_RBR,
wim 0:7e120ffa56d3 67 C7_MLT,
wim 0:7e120ffa56d3 68 C7_PLS,
wim 0:7e120ffa56d3 69 C7_CMA,
wim 0:7e120ffa56d3 70 C7_MIN,
wim 0:7e120ffa56d3 71 C7_DPT,
wim 0:7e120ffa56d3 72 C7_RS,
wim 0:7e120ffa56d3 73 C7_0, //48 0x30
wim 0:7e120ffa56d3 74 C7_1,
wim 0:7e120ffa56d3 75 C7_2,
wim 0:7e120ffa56d3 76 C7_3,
wim 0:7e120ffa56d3 77 C7_4,
wim 0:7e120ffa56d3 78 C7_5,
wim 0:7e120ffa56d3 79 C7_6,
wim 0:7e120ffa56d3 80 C7_7,
wim 0:7e120ffa56d3 81 C7_8,
wim 0:7e120ffa56d3 82 C7_9,
wim 0:7e120ffa56d3 83 C7_COL, //58 0x3A
wim 0:7e120ffa56d3 84 C7_SCL,
wim 0:7e120ffa56d3 85 C7_LT,
wim 0:7e120ffa56d3 86 C7_EQ,
wim 0:7e120ffa56d3 87 C7_GT,
wim 0:7e120ffa56d3 88 C7_QM,
wim 0:7e120ffa56d3 89 C7_AT, //64 0x40
wim 0:7e120ffa56d3 90 C7_A, //65 0x41, A
wim 0:7e120ffa56d3 91 C7_B,
wim 0:7e120ffa56d3 92 C7_C,
wim 0:7e120ffa56d3 93 C7_D,
wim 0:7e120ffa56d3 94 C7_E,
wim 0:7e120ffa56d3 95 C7_F,
wim 0:7e120ffa56d3 96 C7_G,
wim 0:7e120ffa56d3 97 C7_H,
wim 0:7e120ffa56d3 98 C7_I,
wim 0:7e120ffa56d3 99 C7_J,
wim 0:7e120ffa56d3 100 C7_K,
wim 0:7e120ffa56d3 101 C7_L,
wim 0:7e120ffa56d3 102 C7_M,
wim 0:7e120ffa56d3 103 C7_N,
wim 0:7e120ffa56d3 104 C7_O,
wim 0:7e120ffa56d3 105 C7_P,
wim 0:7e120ffa56d3 106 C7_Q,
wim 0:7e120ffa56d3 107 C7_R,
wim 0:7e120ffa56d3 108 C7_S,
wim 0:7e120ffa56d3 109 C7_T,
wim 0:7e120ffa56d3 110 C7_U,
wim 0:7e120ffa56d3 111 C7_V,
wim 0:7e120ffa56d3 112 C7_W,
wim 0:7e120ffa56d3 113 C7_X,
wim 0:7e120ffa56d3 114 C7_Y,
wim 0:7e120ffa56d3 115 C7_Z, //90 0x5A, Z
wim 0:7e120ffa56d3 116 C7_SBL, //91 0x5B
wim 0:7e120ffa56d3 117 C7_LS,
wim 0:7e120ffa56d3 118 C7_SBR,
wim 0:7e120ffa56d3 119 C7_PWR,
wim 0:7e120ffa56d3 120 C7_UDS,
wim 0:7e120ffa56d3 121 C7_ACC,
wim 0:7e120ffa56d3 122 C7_A, //97 0x61, A replacing a
wim 0:7e120ffa56d3 123 C7_B,
wim 0:7e120ffa56d3 124 C7_C,
wim 0:7e120ffa56d3 125 C7_D,
wim 0:7e120ffa56d3 126 C7_E,
wim 0:7e120ffa56d3 127 C7_F,
wim 0:7e120ffa56d3 128 C7_G,
wim 0:7e120ffa56d3 129 C7_H,
wim 0:7e120ffa56d3 130 C7_I,
wim 0:7e120ffa56d3 131 C7_J,
wim 0:7e120ffa56d3 132 C7_K,
wim 0:7e120ffa56d3 133 C7_L,
wim 0:7e120ffa56d3 134 C7_M,
wim 0:7e120ffa56d3 135 C7_N,
wim 0:7e120ffa56d3 136 C7_O,
wim 0:7e120ffa56d3 137 C7_P,
wim 0:7e120ffa56d3 138 C7_Q,
wim 0:7e120ffa56d3 139 C7_R,
wim 0:7e120ffa56d3 140 C7_S,
wim 0:7e120ffa56d3 141 C7_T,
wim 0:7e120ffa56d3 142 C7_U,
wim 0:7e120ffa56d3 143 C7_V,
wim 0:7e120ffa56d3 144 C7_W,
wim 0:7e120ffa56d3 145 C7_X,
wim 0:7e120ffa56d3 146 C7_Y,
wim 0:7e120ffa56d3 147 C7_Z, // 122 0x7A, Z replacing z
wim 0:7e120ffa56d3 148 C7_CBL, // 123 0x7B
wim 0:7e120ffa56d3 149 C7_OR,
wim 0:7e120ffa56d3 150 C7_CBR,
wim 0:7e120ffa56d3 151 C7_TLD,
wim 0:7e120ffa56d3 152 C7_DEL // 127
wim 0:7e120ffa56d3 153 };
wim 0:7e120ffa56d3 154
wim 0:7e120ffa56d3 155 #else
wim 0:7e120ffa56d3 156 //display only digits and hex characters
wim 0:7e120ffa56d3 157 const short FONT_7S[] = {
wim 0:7e120ffa56d3 158 C7_0, //48 0x30
wim 0:7e120ffa56d3 159 C7_1,
wim 0:7e120ffa56d3 160 C7_2,
wim 0:7e120ffa56d3 161 C7_3,
wim 0:7e120ffa56d3 162 C7_4,
wim 0:7e120ffa56d3 163 C7_5,
wim 0:7e120ffa56d3 164 C7_6,
wim 0:7e120ffa56d3 165 C7_7,
wim 0:7e120ffa56d3 166 C7_8,
wim 0:7e120ffa56d3 167 C7_9,
wim 0:7e120ffa56d3 168 C7_A, //65 0x41, A
wim 0:7e120ffa56d3 169 C7_B,
wim 0:7e120ffa56d3 170 C7_C,
wim 0:7e120ffa56d3 171 C7_D,
wim 0:7e120ffa56d3 172 C7_E,
wim 0:7e120ffa56d3 173 C7_F
wim 0:7e120ffa56d3 174 };// 127
wim 0:7e120ffa56d3 175 #endif
wim 0:7e120ffa56d3 176
wim 0:7e120ffa56d3 177 #endif