PT6311 VFD driver lib. Initial version, supports VFDEM2 DVD player display.
Font_16Seg.h@0:43499fc489c6, 2016-01-20 (annotated)
- Committer:
- wim
- Date:
- Wed Jan 20 19:05:43 2016 +0000
- Revision:
- 0:43499fc489c6
Initial version, VFDEM2.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
wim | 0:43499fc489c6 | 1 | /* mbed VFD Font Library, for Princeton PT6311 VFD controller as used in VFDEM2 |
wim | 0:43499fc489c6 | 2 | * Copyright (c) 2016, v01: WH, Initial version for VFDEM2 |
wim | 0:43499fc489c6 | 3 | * |
wim | 0:43499fc489c6 | 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy |
wim | 0:43499fc489c6 | 5 | * of this software and associated documentation files (the "Software"), to deal |
wim | 0:43499fc489c6 | 6 | * in the Software without restriction, including without limitation the rights |
wim | 0:43499fc489c6 | 7 | * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
wim | 0:43499fc489c6 | 8 | * copies of the Software, and to permit persons to whom the Software is |
wim | 0:43499fc489c6 | 9 | * furnished to do so, subject to the following conditions: |
wim | 0:43499fc489c6 | 10 | * |
wim | 0:43499fc489c6 | 11 | * The above copyright notice and this permission notice shall be included in |
wim | 0:43499fc489c6 | 12 | * all copies or substantial portions of the Software. |
wim | 0:43499fc489c6 | 13 | * |
wim | 0:43499fc489c6 | 14 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
wim | 0:43499fc489c6 | 15 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
wim | 0:43499fc489c6 | 16 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
wim | 0:43499fc489c6 | 17 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
wim | 0:43499fc489c6 | 18 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
wim | 0:43499fc489c6 | 19 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN |
wim | 0:43499fc489c6 | 20 | * THE SOFTWARE. |
wim | 0:43499fc489c6 | 21 | */ |
wim | 0:43499fc489c6 | 22 | #ifndef MBED_FONT_16SEG_H |
wim | 0:43499fc489c6 | 23 | #define MBED_FONT_16SEG_H |
wim | 0:43499fc489c6 | 24 | |
wim | 0:43499fc489c6 | 25 | // Select one of the testboards for Princeton PT6312 VFD controller |
wim | 0:43499fc489c6 | 26 | #include "PT6311_Config.h" |
wim | 0:43499fc489c6 | 27 | |
wim | 0:43499fc489c6 | 28 | #if (VFDEM2_TEST == 1) |
wim | 0:43499fc489c6 | 29 | //#if (1) |
wim | 0:43499fc489c6 | 30 | // Segment bit positions for 14 or 16 Segment display using the VFDEM2 mapping for PT6311 |
wim | 0:43499fc489c6 | 31 | // Modify this table for different 'bit-to-segment' mappings. The ASCII character defines and the FONT_16S const table below |
wim | 0:43499fc489c6 | 32 | // will be adapted automatically according to the bit-to-segment mapping. Obviously this will only work when the segment |
wim | 0:43499fc489c6 | 33 | // mapping is identical for every digit position. This will be the case unless the hardware designer really hates software developers. |
wim | 0:43499fc489c6 | 34 | // |
wim | 0:43499fc489c6 | 35 | // A1 A2 |
wim | 0:43499fc489c6 | 36 | // ---- ---- |
wim | 0:43499fc489c6 | 37 | // |H\ J| /K| |
wim | 0:43499fc489c6 | 38 | // F | \ | / | B |
wim | 0:43499fc489c6 | 39 | // |G1 \|/ G2| |
wim | 0:43499fc489c6 | 40 | // --- + --- |
wim | 0:43499fc489c6 | 41 | // | /|\ | |
wim | 0:43499fc489c6 | 42 | // E | / | \ | C |
wim | 0:43499fc489c6 | 43 | // |N/ M| \L| |
wim | 0:43499fc489c6 | 44 | // ---- ---- * DP |
wim | 0:43499fc489c6 | 45 | // D1 D2 |
wim | 0:43499fc489c6 | 46 | // |
wim | 0:43499fc489c6 | 47 | #define S16_D1 0x0004 // Assuming 2 part D segment |
wim | 0:43499fc489c6 | 48 | #define S16_D2 0x0004 |
wim | 0:43499fc489c6 | 49 | #define S16_E 0x0008 |
wim | 0:43499fc489c6 | 50 | #define S16_N 0x0010 |
wim | 0:43499fc489c6 | 51 | #define S16_M 0x0020 |
wim | 0:43499fc489c6 | 52 | #define S16_L 0x0040 |
wim | 0:43499fc489c6 | 53 | #define S16_C 0x0080 |
wim | 0:43499fc489c6 | 54 | #define S16_G2 0x0100 // 2 part G segment |
wim | 0:43499fc489c6 | 55 | #define S16_G1 0x0200 |
wim | 0:43499fc489c6 | 56 | #define S16_F 0x0400 |
wim | 0:43499fc489c6 | 57 | #define S16_H 0x0800 |
wim | 0:43499fc489c6 | 58 | #define S16_J 0x1000 |
wim | 0:43499fc489c6 | 59 | #define S16_K 0x2000 |
wim | 0:43499fc489c6 | 60 | #define S16_B 0x4000 |
wim | 0:43499fc489c6 | 61 | #define S16_A1 0x8000 // Assuming 2 part A segment |
wim | 0:43499fc489c6 | 62 | #define S16_A2 0x8000 |
wim | 0:43499fc489c6 | 63 | |
wim | 0:43499fc489c6 | 64 | #define S16_S 0x0000 // NA |
wim | 0:43499fc489c6 | 65 | |
wim | 0:43499fc489c6 | 66 | //Icons All Grids |
wim | 0:43499fc489c6 | 67 | //#define S16_DP 0x8000 // Assuming single DP segment |
wim | 0:43499fc489c6 | 68 | |
wim | 0:43499fc489c6 | 69 | //Icons Grid 1 |
wim | 0:43499fc489c6 | 70 | #define S16_CIR 0x0008 |
wim | 0:43499fc489c6 | 71 | #define S16_PIE_R 0x0010 |
wim | 0:43499fc489c6 | 72 | #define S16_PIE_G 0x0020 |
wim | 0:43499fc489c6 | 73 | #define S16_PIE_B 0x0040 |
wim | 0:43499fc489c6 | 74 | #define S16_STP 0x0080 |
wim | 0:43499fc489c6 | 75 | #define S16_PSE 0x0100 |
wim | 0:43499fc489c6 | 76 | #define S16_PLY 0x0200 |
wim | 0:43499fc489c6 | 77 | #define S16_RR 0x0400 |
wim | 0:43499fc489c6 | 78 | #define S16_LL 0x0800 |
wim | 0:43499fc489c6 | 79 | #define S16_PCM 0x1000 |
wim | 0:43499fc489c6 | 80 | #define S16_DTS 0x2000 |
wim | 0:43499fc489c6 | 81 | #define S16_MIC 0x4000 |
wim | 0:43499fc489c6 | 82 | #define S16_DLB 0x8000 |
wim | 0:43499fc489c6 | 83 | #define S16_ICON_GR1 (S16_CIR | S16_PIE_R | S16_PIE_G | S16_PIE_B | S16_STP | S16_PSE | S16_PLY | S16_RR | S16_LL | S16_PCM | S16_DTS | S16_MIC | S16_DLB) |
wim | 0:43499fc489c6 | 84 | |
wim | 0:43499fc489c6 | 85 | //Icons Grid 2 |
wim | 0:43499fc489c6 | 86 | #define S16_REC 0x0001 |
wim | 0:43499fc489c6 | 87 | #define S16_ICON_GR2 (S16_REC) |
wim | 0:43499fc489c6 | 88 | |
wim | 0:43499fc489c6 | 89 | //Icons Grid 3 |
wim | 0:43499fc489c6 | 90 | #define S16_PRG 0x0001 |
wim | 0:43499fc489c6 | 91 | #define S16_RND 0x0002 |
wim | 0:43499fc489c6 | 92 | #define S16_ICON_GR3 (S16_PRG | S16_RND) |
wim | 0:43499fc489c6 | 93 | |
wim | 0:43499fc489c6 | 94 | //Icons Grid 4 |
wim | 0:43499fc489c6 | 95 | #define S16_DP8 0x0001 |
wim | 0:43499fc489c6 | 96 | #define S16_COL8 0x0002 |
wim | 0:43499fc489c6 | 97 | #define S16_ICON_GR4 (S16_DP8 | S16_COL8) |
wim | 0:43499fc489c6 | 98 | |
wim | 0:43499fc489c6 | 99 | //Icons Grid 5 |
wim | 0:43499fc489c6 | 100 | #define S16_ANG 0x0001 |
wim | 0:43499fc489c6 | 101 | #define S16_ZM 0x0002 |
wim | 0:43499fc489c6 | 102 | #define S16_ICON_GR5 (S16_ANG | S16_ZM) |
wim | 0:43499fc489c6 | 103 | |
wim | 0:43499fc489c6 | 104 | //Icons Grid 6 |
wim | 0:43499fc489c6 | 105 | #define S16_PBC 0x0001 |
wim | 0:43499fc489c6 | 106 | #define S16_COL6 0x0002 |
wim | 0:43499fc489c6 | 107 | #define S16_ICON_GR6 (S16_PBC | S16_COL6) |
wim | 0:43499fc489c6 | 108 | |
wim | 0:43499fc489c6 | 109 | //Icons Grid 7 |
wim | 0:43499fc489c6 | 110 | #define S16_ICON_GR7 (0x0000) |
wim | 0:43499fc489c6 | 111 | |
wim | 0:43499fc489c6 | 112 | //Icons Grid 8 |
wim | 0:43499fc489c6 | 113 | #define S16_ICON_GR8 (0x0000) |
wim | 0:43499fc489c6 | 114 | |
wim | 0:43499fc489c6 | 115 | //Icons Grid 9 |
wim | 0:43499fc489c6 | 116 | #define S16_ICON_GR9 (0x0000) |
wim | 0:43499fc489c6 | 117 | |
wim | 0:43499fc489c6 | 118 | //Icons Grid 10 |
wim | 0:43499fc489c6 | 119 | #define S16_ICON_GR10 (0x0000) |
wim | 0:43499fc489c6 | 120 | |
wim | 0:43499fc489c6 | 121 | //Icons Grid 11 |
wim | 0:43499fc489c6 | 122 | #define S16_ICON_GR11 (0x0000) |
wim | 0:43499fc489c6 | 123 | |
wim | 0:43499fc489c6 | 124 | //Icons Grid 12 |
wim | 0:43499fc489c6 | 125 | #define S16_MP3 0x0008 |
wim | 0:43499fc489c6 | 126 | #define S16_CDDA 0x0010 |
wim | 0:43499fc489c6 | 127 | #define S16_SS 0x0020 |
wim | 0:43499fc489c6 | 128 | #define S16_VCD 0x0040 |
wim | 0:43499fc489c6 | 129 | #define S16_DVD 0x0080 |
wim | 0:43499fc489c6 | 130 | #define S16_ARW 0x0100 |
wim | 0:43499fc489c6 | 131 | #define S16_ONE 0x0200 |
wim | 0:43499fc489c6 | 132 | #define S16_ALL 0x0400 |
wim | 0:43499fc489c6 | 133 | #define S16_AA 0x0800 |
wim | 0:43499fc489c6 | 134 | #define S16_BB 0x1000 |
wim | 0:43499fc489c6 | 135 | #define S16_TTL 0x2000 |
wim | 0:43499fc489c6 | 136 | #define S16_CHP 0x4000 |
wim | 0:43499fc489c6 | 137 | #define S16_ICON_GR12 (S16_MP3 | S16_CDDA | S16_SS | S16_VCD | S16_DVD | S16_ARW | S16_ONE | S16_ALL | S16_AA | S16_BB | S16_TTL | S16_CHP) |
wim | 0:43499fc489c6 | 138 | |
wim | 0:43499fc489c6 | 139 | |
wim | 0:43499fc489c6 | 140 | //Mask for blending out and restoring Icons |
wim | 0:43499fc489c6 | 141 | extern const char MASK_ICON_GRID[][3]; |
wim | 0:43499fc489c6 | 142 | |
wim | 0:43499fc489c6 | 143 | //One mask pattern will be sufficient assuming that all digits use the same mapping. |
wim | 0:43499fc489c6 | 144 | //#define S16_ICON_MSK (S16_COL3) |
wim | 0:43499fc489c6 | 145 | |
wim | 0:43499fc489c6 | 146 | #endif |
wim | 0:43499fc489c6 | 147 | |
wim | 0:43499fc489c6 | 148 | |
wim | 0:43499fc489c6 | 149 | // ASCII Font definitions for segments in each character |
wim | 0:43499fc489c6 | 150 | // |
wim | 0:43499fc489c6 | 151 | //32 0x20 |
wim | 0:43499fc489c6 | 152 | #define C16_SPC (0x0000) //Space |
wim | 0:43499fc489c6 | 153 | #define C16_EXC (S16_B | S16_C) //! |
wim | 0:43499fc489c6 | 154 | #define C16_QTE (S16_B | S16_F) //" |
wim | 0:43499fc489c6 | 155 | #define C16_HSH (S16_B | S16_C | S16_D1 | S16_D2 | S16_G1 | S16_G2 | S16_J | S16_M) //# |
wim | 0:43499fc489c6 | 156 | #define C16_DLR (S16_A1 | S16_A2 | S16_C | S16_D1 | S16_D2 | S16_F | S16_G1 | S16_G2 | S16_J | S16_M | S16_S) //$ |
wim | 0:43499fc489c6 | 157 | #define C16_PCT (S16_C | S16_F | S16_K | S16_N | S16_S) //% |
wim | 0:43499fc489c6 | 158 | //#define C16_AMP (S16_A1 | S16_C | S16_D1 | S16_D2 | S16_E | S16_G1 | S16_J | S16_H | S16_L) // Not correct when J and M are linked |
wim | 0:43499fc489c6 | 159 | #define C16_AMP (S16_A1 | S16_A2 | S16_C | S16_D1 | S16_D2 | S16_H | S16_K | S16_L | S16_N | S16_S) //& |
wim | 0:43499fc489c6 | 160 | #define C16_ACC (S16_B) //' |
wim | 0:43499fc489c6 | 161 | #define C16_LBR (S16_K | S16_L) //( |
wim | 0:43499fc489c6 | 162 | #define C16_RBR (S16_H | S16_N) //) |
wim | 0:43499fc489c6 | 163 | #define C16_MLT (S16_G1 | S16_G2 | S16_J | S16_M | S16_K | S16_L | S16_H | S16_N | S16_S) //* |
wim | 0:43499fc489c6 | 164 | #define C16_PLS (S16_G1 | S16_G2 | S16_J | S16_M | S16_S) //+ |
wim | 0:43499fc489c6 | 165 | #define C16_CMA (S16_C) //, |
wim | 0:43499fc489c6 | 166 | #define C16_MIN (S16_G1 | S16_G2 | S16_S) //- |
wim | 0:43499fc489c6 | 167 | #define C16_DOT (S16_C) //. |
wim | 0:43499fc489c6 | 168 | #define C16_RS (S16_K | S16_N | S16_S) // / |
wim | 0:43499fc489c6 | 169 | //48 0x30 digits |
wim | 0:43499fc489c6 | 170 | #define C16_0 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F) |
wim | 0:43499fc489c6 | 171 | #define C16_1 (S16_B | S16_C) |
wim | 0:43499fc489c6 | 172 | #define C16_2 (S16_A1 | S16_A2 | S16_B | S16_D1 | S16_D2 | S16_E | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 173 | #define C16_3 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 174 | #define C16_4 (S16_B | S16_C | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 175 | #define C16_5 (S16_A1 | S16_A2 | S16_C | S16_D1 | S16_D2 | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 176 | #define C16_6 (S16_A1 | S16_A2 | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 177 | #define C16_7 (S16_A1 | S16_A2 | S16_B | S16_C) |
wim | 0:43499fc489c6 | 178 | #define C16_8 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 179 | #define C16_9 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 180 | //58 0x3A |
wim | 0:43499fc489c6 | 181 | #define C16_COL (S16_D1 | S16_D2 | S16_G1 | S16_G2 | S16_S) // : |
wim | 0:43499fc489c6 | 182 | #define C16_SCL (S16_D1 | S16_D2 | S16_G1 | S16_G2 | S16_S) // ; |
wim | 0:43499fc489c6 | 183 | #define C16_LT (S16_K | S16_L | S16_S) // < |
wim | 0:43499fc489c6 | 184 | #define C16_EQ (S16_D1 | S16_D2 | S16_G1 | S16_G2 | S16_S) // = |
wim | 0:43499fc489c6 | 185 | #define C16_GT (S16_H | S16_N | S16_S) // > |
wim | 0:43499fc489c6 | 186 | //#define C16_QM (S16_A1 | S16_A2 | S16_B | S16_G2 | S16_M) // Not correct when J and M are linked |
wim | 0:43499fc489c6 | 187 | #define C16_QM (S16_A1 | S16_A2 | S16_B | S16_G2 | S16_N | S16_S) // ? |
wim | 0:43499fc489c6 | 188 | //64 0x40 |
wim | 0:43499fc489c6 | 189 | //#define C16_AT (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_G1 | S16_M | S16_S) // Not correct when J and M are linked |
wim | 0:43499fc489c6 | 190 | #define C16_AT (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_G1 | S16_S) // @ |
wim | 0:43499fc489c6 | 191 | #define C16_A (S16_A1 | S16_A2 | S16_B | S16_C | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) // Upper case alphabet |
wim | 0:43499fc489c6 | 192 | #define C16_B (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_J | S16_M | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 193 | #define C16_C (S16_A1 | S16_A2 | S16_D1 | S16_D2 | S16_E | S16_F) |
wim | 0:43499fc489c6 | 194 | #define C16_D (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_J | S16_M | S16_S) |
wim | 0:43499fc489c6 | 195 | #define C16_E (S16_A1 | S16_A2 | S16_D1 | S16_D2 | S16_E | S16_F | S16_G1 | S16_S) |
wim | 0:43499fc489c6 | 196 | #define C16_F (S16_A1 | S16_A2 | S16_E | S16_F | S16_G1 | S16_S) |
wim | 0:43499fc489c6 | 197 | #define C16_G (S16_A1 | S16_A2 | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 198 | #define C16_H (S16_B | S16_C | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 199 | #define C16_I (S16_A1 | S16_A2 | S16_D1 | S16_D2 | S16_J | S16_M | S16_S) |
wim | 0:43499fc489c6 | 200 | #define C16_J (S16_B | S16_C | S16_D1 | S16_D2 | S16_E) |
wim | 0:43499fc489c6 | 201 | #define C16_K (S16_E | S16_F | S16_G1 | S16_K | S16_L | S16_S) |
wim | 0:43499fc489c6 | 202 | #define C16_L (S16_D1 | S16_D2 | S16_E | S16_F) |
wim | 0:43499fc489c6 | 203 | #define C16_M (S16_B | S16_C | S16_E | S16_F | S16_H | S16_K | S16_S) |
wim | 0:43499fc489c6 | 204 | #define C16_N (S16_B | S16_C | S16_E | S16_F | S16_H | S16_L | S16_S) |
wim | 0:43499fc489c6 | 205 | #define C16_O (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F) |
wim | 0:43499fc489c6 | 206 | #define C16_P (S16_A1 | S16_A2 | S16_B | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 207 | #define C16_Q (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_L) |
wim | 0:43499fc489c6 | 208 | #define C16_R (S16_A1 | S16_A2 | S16_B | S16_E | S16_F | S16_G1 | S16_G2 | S16_L | S16_S) |
wim | 0:43499fc489c6 | 209 | #define C16_S (S16_A1 | S16_A2 | S16_C | S16_D1 | S16_D2 | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 210 | #define C16_T (S16_A1 | S16_A2 | S16_J | S16_M | S16_S) |
wim | 0:43499fc489c6 | 211 | #define C16_U (S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F) |
wim | 0:43499fc489c6 | 212 | #define C16_V (S16_E | S16_F | S16_N | S16_K | S16_S) |
wim | 0:43499fc489c6 | 213 | #define C16_W (S16_B | S16_C | S16_E | S16_F | S16_L | S16_N | S16_S) |
wim | 0:43499fc489c6 | 214 | #define C16_X (S16_H | S16_K | S16_L | S16_N | S16_S) |
wim | 0:43499fc489c6 | 215 | //#define C16_Y (S16_H | S16_K | S16_M | S16_S) // Not correct when J and M are linked |
wim | 0:43499fc489c6 | 216 | #define C16_Y (S16_B | S16_C | S16_D1 | S16_D2 | S16_F | S16_G1 | S16_G2 | S16_S) |
wim | 0:43499fc489c6 | 217 | #define C16_Z (S16_A1 | S16_A2 | S16_D1 | S16_D2 | S16_K | S16_N | S16_S) |
wim | 0:43499fc489c6 | 218 | //91 0x5B |
wim | 0:43499fc489c6 | 219 | #define C16_SBL (S16_A1 | S16_D1 | S16_E | S16_F) // [ |
wim | 0:43499fc489c6 | 220 | #define C16_LS (S16_H | S16_L | S16_S) // left slash |
wim | 0:43499fc489c6 | 221 | #define C16_SBR (S16_A2 | S16_B | S16_C | S16_D2) // ] |
wim | 0:43499fc489c6 | 222 | #define C16_PWR (S16_L | S16_N | S16_S) // ^ |
wim | 0:43499fc489c6 | 223 | #define C16_UDS (S16_D1 | S16_D2) // _ |
wim | 0:43499fc489c6 | 224 | #define C16_DSH (S16_H) // ` |
wim | 0:43499fc489c6 | 225 | //97 0x61 |
wim | 0:43499fc489c6 | 226 | // a...z No defines provided. Just use the Upper case characters again |
wim | 0:43499fc489c6 | 227 | //122 |
wim | 0:43499fc489c6 | 228 | |
wim | 0:43499fc489c6 | 229 | //123 0x7B |
wim | 0:43499fc489c6 | 230 | #define C16_CBL (S16_G1 | S16_J | S16_M | S16_S) // { |
wim | 0:43499fc489c6 | 231 | #define C16_OR (S16_J | S16_M | S16_S) // | |
wim | 0:43499fc489c6 | 232 | #define C16_CBR (S16_G2 | S16_J | S16_M | S16_S) // } |
wim | 0:43499fc489c6 | 233 | #define C16_TLD (S16_B | S16_E | S16_G1 | S16_G2 | S16_S) // ~ |
wim | 0:43499fc489c6 | 234 | #define C16_DEL (0x0000) |
wim | 0:43499fc489c6 | 235 | |
wim | 0:43499fc489c6 | 236 | //User Defined Characters (some examples) |
wim | 0:43499fc489c6 | 237 | #define UDC16_SANDHR (S16_A1 | S16_A2 | S16_D1 | S16_D2 | S16_H | S16_K | S16_L | S16_N | S16_S) //Sandhour |
wim | 0:43499fc489c6 | 238 | #define UDC16_DGR (S16_A | S16_B | S16_F | S16_G) // degrees |
wim | 0:43499fc489c6 | 239 | |
wim | 0:43499fc489c6 | 240 | #if(0) |
wim | 0:43499fc489c6 | 241 | #define UDC16_WHEEL0 (S16_G1 | S16_G2 | S16_S) // - |
wim | 0:43499fc489c6 | 242 | #define UDC16_WHEEL1 (S16_H | S16_L | S16_S) /* \ */ |
wim | 0:43499fc489c6 | 243 | #define UDC16_WHEEL2 (S16_J | S16_M | S16_S) // | |
wim | 0:43499fc489c6 | 244 | #define UDC16_WHEEL3 (S16_K | S16_N | S16_S) // / |
wim | 0:43499fc489c6 | 245 | #define UDC16_WHEEL4 (S16_G1 | S16_G2 | S16_S) // - |
wim | 0:43499fc489c6 | 246 | #define UDC16_WHEEL5 (S16_H | S16_L | S16_S) /* \ */ |
wim | 0:43499fc489c6 | 247 | #define UDC16_WHEEL6 (S16_J | S16_M | S16_S) // | |
wim | 0:43499fc489c6 | 248 | #define UDC16_WHEEL7 (S16_K | S16_N | S16_S) // / |
wim | 0:43499fc489c6 | 249 | #else |
wim | 0:43499fc489c6 | 250 | #define UDC16_WHEEL0 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) // - |
wim | 0:43499fc489c6 | 251 | #define UDC16_WHEEL1 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_H | S16_L | S16_S) /* \ */ |
wim | 0:43499fc489c6 | 252 | #define UDC16_WHEEL2 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_J | S16_M | S16_S) // | |
wim | 0:43499fc489c6 | 253 | #define UDC16_WHEEL3 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_K | S16_N | S16_S) // / |
wim | 0:43499fc489c6 | 254 | #define UDC16_WHEEL4 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_G1 | S16_G2 | S16_S) // - |
wim | 0:43499fc489c6 | 255 | #define UDC16_WHEEL5 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_H | S16_L | S16_S) /* \ */ |
wim | 0:43499fc489c6 | 256 | #define UDC16_WHEEL6 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_J | S16_M | S16_S) // | |
wim | 0:43499fc489c6 | 257 | #define UDC16_WHEEL7 (S16_A1 | S16_A2 | S16_B | S16_C | S16_D1 | S16_D2 | S16_E | S16_F | S16_K | S16_N | S16_S) // / |
wim | 0:43499fc489c6 | 258 | #endif |
wim | 0:43499fc489c6 | 259 | |
wim | 0:43499fc489c6 | 260 | // Font data selection for transmission to PT6311 memory |
wim | 0:43499fc489c6 | 261 | #define LO(x) ( x & 0xFF) |
wim | 0:43499fc489c6 | 262 | #define MD(x) ((x >> 8) & 0xFF) |
wim | 0:43499fc489c6 | 263 | #define HI(x) ((x >> 16) & 0xFF) |
wim | 0:43499fc489c6 | 264 | |
wim | 0:43499fc489c6 | 265 | // ASCII Font definition table |
wim | 0:43499fc489c6 | 266 | // |
wim | 0:43499fc489c6 | 267 | #define FONT_16S_START 0x20 |
wim | 0:43499fc489c6 | 268 | #define FONT_16S_END 0x7F |
wim | 0:43499fc489c6 | 269 | //#define FONT_16S16_LR_CHARS (FONT_16S16_END - FONT_16S16_START + 1) |
wim | 0:43499fc489c6 | 270 | extern const short FONT_16S[]; |
wim | 0:43499fc489c6 | 271 | |
wim | 0:43499fc489c6 | 272 | |
wim | 0:43499fc489c6 | 273 | // Wheel animation definition table |
wim | 0:43499fc489c6 | 274 | extern const int WHEEL_ANI[]; |
wim | 0:43499fc489c6 | 275 | #endif |