Demo for MAXREFDES99

Dependencies:   MAX7219 mbed

Committer:
pradipv
Date:
Tue May 24 08:40:07 2016 +0000
Revision:
8:a6a0c9e280ae
Parent:
6:00aabe967e51
Child:
9:3c6d6c856e3d
version1.2 - Updated with code cleanup

Who changed what in which revision?

UserRevisionLine numberNew contents of line
j3 0:6b0161c3e440 1 /******************************************************************//**
j3 0:6b0161c3e440 2 * @file maxrefdes99.cpp
j3 0:6b0161c3e440 3 * Copyright (C) 2016 Maxim Integrated Products, Inc., All Rights Reserved.
j3 0:6b0161c3e440 4 *
j3 0:6b0161c3e440 5 * Permission is hereby granted, free of charge, to any person obtaining a
j3 0:6b0161c3e440 6 * copy of this software and associated documentation files (the "Software"),
j3 0:6b0161c3e440 7 * to deal in the Software without restriction, including without limitation
j3 0:6b0161c3e440 8 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
j3 0:6b0161c3e440 9 * and/or sell copies of the Software, and to permit persons to whom the
j3 0:6b0161c3e440 10 * Software is furnished to do so, subject to the following conditions:
j3 0:6b0161c3e440 11 *
j3 0:6b0161c3e440 12 * The above copyright notice and this permission notice shall be included
j3 0:6b0161c3e440 13 * in all copies or substantial portions of the Software.
j3 0:6b0161c3e440 14 *
j3 0:6b0161c3e440 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
j3 0:6b0161c3e440 16 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
j3 0:6b0161c3e440 17 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
j3 0:6b0161c3e440 18 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
j3 0:6b0161c3e440 19 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
j3 0:6b0161c3e440 20 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
j3 0:6b0161c3e440 21 * OTHER DEALINGS IN THE SOFTWARE.
j3 0:6b0161c3e440 22 *
j3 0:6b0161c3e440 23 * Except as contained in this notice, the name of Maxim Integrated
j3 0:6b0161c3e440 24 * Products, Inc. shall not be used except as stated in the Maxim Integrated
j3 0:6b0161c3e440 25 * Products, Inc. Branding Policy.
j3 0:6b0161c3e440 26 *
j3 0:6b0161c3e440 27 * The mere transfer of this software does not imply any licenses
j3 0:6b0161c3e440 28 * of trade secrets, proprietary technology, copyrights, patents,
j3 0:6b0161c3e440 29 * trademarks, maskwork rights, or any other form of intellectual
j3 0:6b0161c3e440 30 * property whatsoever. Maxim Integrated Products, Inc. retains all
j3 0:6b0161c3e440 31 * ownership rights.
j3 0:6b0161c3e440 32 **********************************************************************/
j3 0:6b0161c3e440 33
j3 0:6b0161c3e440 34
j3 0:6b0161c3e440 35 #include "maxrefdes99.h"
j3 0:6b0161c3e440 36
j3 0:6b0161c3e440 37
j3 0:6b0161c3e440 38 //5x7 character bit map
j3 0:6b0161c3e440 39 static const uint8_t font_5x7[95][6] = {
j3 0:6b0161c3e440 40 {0x00,0x00,0x00,0x00,0x00,0x00}, // SPACE
j3 0:6b0161c3e440 41 {0x00,0x00,0x00,0x4F,0x00,0x00}, // !
j3 0:6b0161c3e440 42 {0x00,0x00,0x07,0x00,0x07,0x00}, // "
j3 0:6b0161c3e440 43 {0x00,0x14,0x7F,0x14,0x7F,0x14}, // #
j3 0:6b0161c3e440 44 {0x00,0x24,0x2A,0x7F,0x2A,0x12}, // $
j3 0:6b0161c3e440 45 {0x00,0x23,0x13,0x08,0x64,0x62}, // %
j3 0:6b0161c3e440 46 {0x00,0x36,0x49,0x55,0x22,0x50}, // &
j3 0:6b0161c3e440 47 {0x00,0x00,0x05,0x03,0x00,0x00}, // '
j3 0:6b0161c3e440 48 {0x00,0x00,0x1C,0x22,0x41,0x00}, // (
j3 0:6b0161c3e440 49 {0x00,0x00,0x41,0x22,0x1C,0x00}, // )
j3 0:6b0161c3e440 50 {0x00,0x14,0x08,0x3E,0x08,0x14}, // *
j3 0:6b0161c3e440 51 {0x00,0x08,0x08,0x3E,0x08,0x08}, // +
j3 0:6b0161c3e440 52 {0x00,0x00,0x50,0x30,0x00,0x00}, // ,
j3 0:6b0161c3e440 53 {0x00,0x08,0x08,0x08,0x08,0x08}, // -
j3 0:6b0161c3e440 54 {0x00,0x00,0x60,0x60,0x00,0x00}, // .
j3 0:6b0161c3e440 55 {0x00,0x20,0x10,0x08,0x04,0x02}, // /
j3 0:6b0161c3e440 56 {0x00,0x3E,0x51,0x49,0x45,0x3E}, // 0
j3 0:6b0161c3e440 57 {0x00,0x00,0x42,0x7F,0x40,0x00}, // 1
j3 0:6b0161c3e440 58 {0x00,0x42,0x61,0x51,0x49,0x46}, // 2
j3 0:6b0161c3e440 59 {0x00,0x21,0x41,0x45,0x4B,0x31}, // 3
j3 0:6b0161c3e440 60 {0x00,0x18,0x14,0x12,0x7F,0x10}, // 4
j3 0:6b0161c3e440 61 {0x00,0x27,0x45,0x45,0x45,0x39}, // 5
j3 0:6b0161c3e440 62 {0x00,0x3C,0x4A,0x49,0x49,0x30}, // 6
j3 0:6b0161c3e440 63 {0x00,0x01,0x71,0x09,0x05,0x03}, // 7
j3 0:6b0161c3e440 64 {0x00,0x36,0x49,0x49,0x49,0x36}, // 8
j3 0:6b0161c3e440 65 {0x00,0x06,0x49,0x49,0x29,0x1E}, // 9
j3 0:6b0161c3e440 66 {0x00,0x36,0x36,0x00,0x00,0x00}, // :
j3 0:6b0161c3e440 67 {0x00,0x56,0x36,0x00,0x00,0x00}, // ;
j3 0:6b0161c3e440 68 {0x00,0x08,0x14,0x22,0x41,0x00}, // <
j3 0:6b0161c3e440 69 {0x00,0x14,0x14,0x14,0x14,0x14}, // =
j3 0:6b0161c3e440 70 {0x00,0x00,0x41,0x22,0x14,0x08}, // >
j3 0:6b0161c3e440 71 {0x00,0x02,0x01,0x51,0x09,0x06}, // ?
j3 0:6b0161c3e440 72 {0x00,0x30,0x49,0x79,0x41,0x3E}, // @
j3 0:6b0161c3e440 73 {0x00,0x7E,0x11,0x11,0x11,0x7E}, // A
j3 0:6b0161c3e440 74 {0x00,0x7F,0x49,0x49,0x49,0x36}, // B
j3 0:6b0161c3e440 75 {0x00,0x3E,0x41,0x41,0x41,0x22}, // C
j3 0:6b0161c3e440 76 {0x00,0x7F,0x41,0x41,0x22,0x1C}, // D
j3 0:6b0161c3e440 77 {0x00,0x7F,0x49,0x49,0x49,0x41}, // E
j3 0:6b0161c3e440 78 {0x00,0x7F,0x09,0x09,0x09,0x01}, // F
j3 0:6b0161c3e440 79 {0x00,0x3E,0x41,0x49,0x49,0x7A}, // G
j3 0:6b0161c3e440 80 {0x00,0x7F,0x08,0x08,0x08,0x7F}, // H
j3 0:6b0161c3e440 81 {0x00,0x00,0x41,0x7F,0x41,0x00}, // I
j3 0:6b0161c3e440 82 {0x00,0x20,0x40,0x41,0x3F,0x01}, // J
j3 0:6b0161c3e440 83 {0x00,0x7F,0x08,0x14,0x22,0x41}, // K
j3 0:6b0161c3e440 84 {0x00,0x7F,0x40,0x40,0x40,0x40}, // L
j3 0:6b0161c3e440 85 {0x00,0x7F,0x02,0x0C,0x02,0x7F}, // M
j3 0:6b0161c3e440 86 {0x00,0x7F,0x04,0x08,0x10,0x7F}, // N
j3 0:6b0161c3e440 87 {0x00,0x3E,0x41,0x41,0x41,0x3E}, // O
j3 0:6b0161c3e440 88 {0x00,0x7F,0x09,0x09,0x09,0x06}, // P
j3 0:6b0161c3e440 89 {0x00,0x3E,0x41,0x51,0x21,0x5E}, // Q
j3 0:6b0161c3e440 90 {0x00,0x7F,0x09,0x19,0x29,0x46}, // R
j3 0:6b0161c3e440 91 {0x00,0x46,0x49,0x49,0x49,0x31}, // S
j3 0:6b0161c3e440 92 {0x00,0x01,0x01,0x7F,0x01,0x01}, // T
j3 0:6b0161c3e440 93 {0x00,0x3F,0x40,0x40,0x40,0x3F}, // U
j3 0:6b0161c3e440 94 {0x00,0x1F,0x20,0x40,0x20,0x1F}, // V
j3 0:6b0161c3e440 95 {0x00,0x3F,0x40,0x30,0x40,0x3F}, // W
j3 0:6b0161c3e440 96 {0x00,0x63,0x14,0x08,0x14,0x63}, // X
j3 0:6b0161c3e440 97 {0x00,0x07,0x08,0x70,0x08,0x07}, // Y
j3 0:6b0161c3e440 98 {0x00,0x61,0x51,0x49,0x45,0x43}, // Z
j3 0:6b0161c3e440 99 {0x00,0x00,0x7F,0x41,0x41,0x00}, // [
j3 0:6b0161c3e440 100 {0x00,0x02,0x04,0x08,0x10,0x20}, // backslash
j3 0:6b0161c3e440 101 {0x00,0x00,0x41,0x41,0x7F,0x00}, // ]
j3 0:6b0161c3e440 102 {0x00,0x04,0x02,0x01,0x02,0x04}, // ^
j3 0:6b0161c3e440 103 {0x00,0x40,0x40,0x40,0x40,0x40}, // _
j3 0:6b0161c3e440 104 {0x00,0x00,0x01,0x02,0x04,0x00}, // `
j3 0:6b0161c3e440 105 {0x00,0x20,0x54,0x54,0x54,0x78}, // a
j3 0:6b0161c3e440 106 {0x00,0x7F,0x50,0x48,0x48,0x30}, // b
j3 0:6b0161c3e440 107 {0x00,0x38,0x44,0x44,0x44,0x20}, // c
j3 0:6b0161c3e440 108 {0x00,0x38,0x44,0x44,0x48,0x7F}, // d
j3 0:6b0161c3e440 109 {0x00,0x38,0x54,0x54,0x54,0x18}, // e
j3 0:6b0161c3e440 110 {0x00,0x08,0x7E,0x09,0x01,0x02}, // f
j3 0:6b0161c3e440 111 {0x00,0x0C,0x52,0x52,0x52,0x3E}, // g
j3 0:6b0161c3e440 112 {0x00,0x7F,0x08,0x04,0x04,0x78}, // h
j3 0:6b0161c3e440 113 {0x00,0x00,0x44,0x7D,0x40,0x00}, // i
j3 0:6b0161c3e440 114 {0x00,0x20,0x40,0x44,0x3D,0x00}, // j
j3 0:6b0161c3e440 115 {0x00,0x7F,0x10,0x28,0x44,0x00}, // k
j3 0:6b0161c3e440 116 {0x00,0x00,0x41,0x7F,0x40,0x00}, // l
j3 0:6b0161c3e440 117 {0x00,0x78,0x04,0x58,0x44,0x78}, // m
j3 0:6b0161c3e440 118 {0x00,0x7C,0x08,0x04,0x04,0x78}, // n
j3 0:6b0161c3e440 119 {0x00,0x38,0x44,0x44,0x44,0x38}, // o
j3 0:6b0161c3e440 120 {0x00,0x7C,0x14,0x14,0x14,0x08}, // p
j3 0:6b0161c3e440 121 {0x00,0x08,0x14,0x14,0x18,0x7C}, // q
j3 0:6b0161c3e440 122 {0x00,0x7C,0x08,0x04,0x04,0x08}, // r
j3 0:6b0161c3e440 123 {0x00,0x48,0x54,0x54,0x54,0x20}, // s
j3 0:6b0161c3e440 124 {0x00,0x04,0x3F,0x44,0x40,0x20}, // t
j3 0:6b0161c3e440 125 {0x00,0x3C,0x40,0x40,0x20,0x7C}, // u
j3 0:6b0161c3e440 126 {0x00,0x1C,0x20,0x40,0x20,0x1C}, // v
j3 0:6b0161c3e440 127 {0x00,0x3C,0x40,0x30,0x40,0x3C}, // w
j3 0:6b0161c3e440 128 {0x00,0x44,0x28,0x10,0x28,0x44}, // x
j3 0:6b0161c3e440 129 {0x00,0x0C,0x50,0x50,0x50,0x3C}, // y
j3 0:6b0161c3e440 130 {0x00,0x44,0x64,0x54,0x4C,0x44}, // z
j3 0:6b0161c3e440 131 {0x00,0x00,0x08,0x36,0x41,0x00}, // {
j3 0:6b0161c3e440 132 {0x00,0x00,0x00,0x7F,0x00,0x00}, // |
j3 0:6b0161c3e440 133 {0x00,0x00,0x41,0x36,0x08,0x00}, // }
j3 0:6b0161c3e440 134 {0x00,0x0C,0x02,0x0C,0x10,0x0C} // ~
j3 0:6b0161c3e440 135 };
j3 0:6b0161c3e440 136
pradipv 8:a6a0c9e280ae 137 /*******************************************************************************
pradipv 8:a6a0c9e280ae 138 * 16*16 character bit map for Aerial bold fonts
pradipv 8:a6a0c9e280ae 139 * These font data taken from the rinkydinkelectronic.com
pradipv 8:a6a0c9e280ae 140 * All fonts are considered Public Domain. This means that
pradipv 8:a6a0c9e280ae 141 * you are free to use them as you see fit in any project,
pradipv 8:a6a0c9e280ae 142 * commercial or not.
pradipv 8:a6a0c9e280ae 143 * Important note: Commercial projects will still need a
pradipv 8:a6a0c9e280ae 144 * commercial license for any libraries used
pradipv 8:a6a0c9e280ae 145 *********************************************************************************/
j3 0:6b0161c3e440 146
pradipv 3:41bdbc9b3cec 147 static const uint8_t Aerial_bold_font_16x16[95][32] = {
pradipv 3:41bdbc9b3cec 148
pradipv 6:00aabe967e51 149 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 150 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 151 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 152 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // SPACE
pradipv 6:00aabe967e51 153
pradipv 6:00aabe967e51 154 {0x0,0x0,0x0,0x0,0x0,0x0,0x3F,0x3F,
pradipv 6:00aabe967e51 155 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 156 0x0,0x0,0x0,0x0,0x0,0x0,0xEC,0xEC,
pradipv 6:00aabe967e51 157 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // !
pradipv 3:41bdbc9b3cec 158
pradipv 6:00aabe967e51 159 {0x0,0x0,0x0,0x0,0x0,0x3C,0x3C,0x0,
pradipv 6:00aabe967e51 160 0x0,0x3C,0x3C,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 161 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 162 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //"
pradipv 6:00aabe967e51 163
pradipv 6:00aabe967e51 164 {0x0,0x0,0x6,0x6,0x6,0xF,0x3F,0x36,
pradipv 6:00aabe967e51 165 0xF,0x3F,0x36,0x6,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 166 0x0,0x0,0x60,0x6C,0xFC,0xF0,0x6C,0xFC,
pradipv 6:00aabe967e51 167 0xF0,0x60,0x60,0x60,0x0,0x0,0x0,0x0},// #
pradipv 6:00aabe967e51 168
pradipv 6:00aabe967e51 169 {0x0,0x0,0x0,0x0,0xE,0x1F,0x33,0x7F,
pradipv 6:00aabe967e51 170 0x31,0x18,0x8,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 171 0x0,0x0,0x0,0x0,0x30,0x38,0x8C,0xFE,
pradipv 6:00aabe967e51 172 0xCC,0xF8,0x70,0x0,0x0,0x0,0x0,0x0}, //$
pradipv 3:41bdbc9b3cec 173
pradipv 6:00aabe967e51 174 {0x0,0x1E,0x3F,0x21,0x21,0x3F,0x1E,0x0,
pradipv 6:00aabe967e51 175 0x3,0x7,0x1C,0x38,0x20,0x0,0x0,0x0,
pradipv 6:00aabe967e51 176 0x0,0x0,0x0,0x0,0x4,0xC,0x38,0xF0,
pradipv 6:00aabe967e51 177 0xC0,0x0,0x78,0xFC,0x84,0x84,0xFC,0x78},//%
pradipv 6:00aabe967e51 178
pradipv 6:00aabe967e51 179 {0x0,0x0,0x0,0x0,0x1C,0x3F,0x33,0x33,
pradipv 6:00aabe967e51 180 0x33,0x3E,0x1C,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 181 0x0,0x0,0x0,0x70,0xF8,0x8C,0xC,0xCC,
pradipv 6:00aabe967e51 182 0xEC,0x78,0x38,0xF8,0x5C,0x8,0x0,0x0},//&
pradipv 6:00aabe967e51 183
pradipv 6:00aabe967e51 184 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3C,
pradipv 6:00aabe967e51 185 0x3C,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 186 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 187 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},//'
pradipv 3:41bdbc9b3cec 188
pradipv 6:00aabe967e51 189 {0x0,0x0,0x0,0x0,0x0,0xF,0x3F,0x70,
pradipv 6:00aabe967e51 190 0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 191 0x0,0x0,0x0,0x0,0x0,0xE0,0xF8,0x1C,
pradipv 6:00aabe967e51 192 0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0},//(
pradipv 3:41bdbc9b3cec 193
pradipv 6:00aabe967e51 194 {0x0,0x0,0x0,0x0,0x0,0x40,0x70,0x3F,
pradipv 6:00aabe967e51 195 0xF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 196 0x0,0x0,0x0,0x0,0x0,0x4,0x1C,0xF8,
pradipv 6:00aabe967e51 197 0xE0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //}
pradipv 6:00aabe967e51 198
pradipv 6:00aabe967e51 199 {0x0,0x0,0x3,0x3,0x1,0x1,0xF,0xF,
pradipv 6:00aabe967e51 200 0xF,0x1,0x1,0x3,0x3,0x0,0x0,0x0,
pradipv 6:00aabe967e51 201 0x0,0x0,0x0,0x10,0x30,0xF8,0xE0,0xC0,
pradipv 6:00aabe967e51 202 0xE0,0xF8,0x30,0x10,0x0,0x0,0x0,0x0},//*
pradipv 3:41bdbc9b3cec 203
pradipv 6:00aabe967e51 204 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 205 0x7,0x7,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 206 0x0,0x0,0x0,0x0,0x0,0xC0,0xC0,0xC0,
pradipv 6:00aabe967e51 207 0xF8,0xF8,0xC0,0xC0,0xC0,0x0,0x0,0x0},//+
pradipv 6:00aabe967e51 208
pradipv 6:00aabe967e51 209 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 210 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 211 0x0,0x0,0x0,0x0,0x0,0x0,0x32,0x3C,
pradipv 6:00aabe967e51 212 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //,
pradipv 3:41bdbc9b3cec 213
pradipv 6:00aabe967e51 214 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 215 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 216 0x0,0x0,0x0,0x0,0x0,0x0,0xC0,0xC0,
pradipv 6:00aabe967e51 217 0xC0,0xC0,0xC0,0x0,0x0,0x0,0x0,0x0},// -
pradipv 6:00aabe967e51 218
pradipv 6:00aabe967e51 219 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 220 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 221 0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x18,
pradipv 6:00aabe967e51 222 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // .
pradipv 3:41bdbc9b3cec 223
pradipv 6:00aabe967e51 224 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 225 0xF,0x3F,0x30,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 226 0x0,0x0,0x0,0x0,0x0,0x0,0xC,0xFC,
pradipv 6:00aabe967e51 227 0xF0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // /
pradipv 6:00aabe967e51 228
pradipv 6:00aabe967e51 229 {0x0,0x0,0x0,0x0,0xF,0x1F,0x38,0x30,
pradipv 6:00aabe967e51 230 0x30,0x38,0x1F,0xF,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 231 0x0,0x0,0x0,0x0,0xF0,0xF8,0x1C,0xC,
pradipv 6:00aabe967e51 232 0xC,0x1C,0xF8,0xF0,0x0,0x0,0x0,0x0}, // 0
pradipv 3:41bdbc9b3cec 233
pradipv 6:00aabe967e51 234 {0x0,0x0,0x0,0x0,0x6,0xC,0x18,0x3F,
pradipv 6:00aabe967e51 235 0x3F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 236 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFC,
pradipv 6:00aabe967e51 237 0xFC,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // 1
pradipv 6:00aabe967e51 238
pradipv 6:00aabe967e51 239 {0x0,0x0,0x0,0x0,0xC,0x1C,0x38,0x30,
pradipv 6:00aabe967e51 240 0x30,0x31,0x1F,0xE,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 241 0x0,0x0,0x0,0x0,0xC,0x1C,0x3C,0x6C,
pradipv 6:00aabe967e51 242 0xEC,0xCC,0x8C,0xC,0x0,0x0,0x0,0x0},// 2
pradipv 6:00aabe967e51 243
pradipv 6:00aabe967e51 244 {0x0,0x0,0x0,0x0,0x8,0x18,0x38,0x33,
pradipv 6:00aabe967e51 245 0x33,0x33,0x3F,0x1C,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 246 0x0,0x0,0x0,0x0,0x30,0x38,0x1C,0xC,
pradipv 6:00aabe967e51 247 0xC,0x9C,0xF8,0xF0,0x0,0x0,0x0,0x0}, // 3
pradipv 3:41bdbc9b3cec 248
pradipv 6:00aabe967e51 249 {0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x7,
pradipv 6:00aabe967e51 250 0x1C,0x3F,0x3F,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 251 0x0,0x0,0x0,0x0,0x70,0xF0,0xB0,0x30,
pradipv 6:00aabe967e51 252 0x30,0xFC,0xFC,0x30,0x0,0x0,0x0,0x0},//4
pradipv 3:41bdbc9b3cec 253
pradipv 6:00aabe967e51 254 {0x0,0x0,0x0,0x0,0x7,0x3F,0x3B,0x33,
pradipv 6:00aabe967e51 255 0x33,0x33,0x31,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 256 0x0,0x0,0x0,0x0,0xB0,0xB8,0x1C,0xC,
pradipv 6:00aabe967e51 257 0xC,0x9C,0xF8,0xF0,0x0,0x0,0x0,0x0}, //5
pradipv 6:00aabe967e51 258
pradipv 6:00aabe967e51 259 {0x0,0x0,0x0,0x0,0x7,0x1F,0x39,0x33,
pradipv 6:00aabe967e51 260 0x33,0x33,0x39,0x18,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 261 0x0,0x0,0x0,0x0,0xE0,0xF8,0x9C,0xC,
pradipv 6:00aabe967e51 262 0xC,0x8C,0xF8,0xF0,0x0,0x0,0x0,0x0}, //6
pradipv 3:41bdbc9b3cec 263
pradipv 6:00aabe967e51 264 {0x0,0x0,0x0,0x0,0x30,0x30,0x30,0x31,
pradipv 6:00aabe967e51 265 0x37,0x3E,0x38,0x30,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 266 0x0,0x0,0x0,0x0,0x0,0x0,0x3C,0xFC,
pradipv 6:00aabe967e51 267 0xE0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // 7
pradipv 6:00aabe967e51 268
pradipv 6:00aabe967e51 269 {0x0,0x0,0x0,0x0,0xE,0x1F,0x31,0x31,
pradipv 6:00aabe967e51 270 0x31,0x31,0x1F,0xE,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 271 0x0,0x0,0x0,0x0,0x70,0xF8,0x8C,0x8C,
pradipv 6:00aabe967e51 272 0x8C,0x8C,0xF8,0x70,0x0,0x0,0x0,0x0}, //8
pradipv 6:00aabe967e51 273
pradipv 6:00aabe967e51 274 {0x0,0x0,0x0,0x0,0xF,0x1F,0x31,0x30,
pradipv 6:00aabe967e51 275 0x30,0x39,0x1F,0x7,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 276 0x0,0x0,0x0,0x0,0x18,0x9C,0xCC,0xCC,
pradipv 6:00aabe967e51 277 0xCC,0x9C,0xF8,0xE0,0x0,0x0,0x0,0x0}, //9
pradipv 3:41bdbc9b3cec 278
pradipv 6:00aabe967e51 279 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,
pradipv 6:00aabe967e51 280 0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 281 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,
pradipv 6:00aabe967e51 282 0x30,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // :
pradipv 6:00aabe967e51 283
pradipv 6:00aabe967e51 284 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,
pradipv 6:00aabe967e51 285 0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 286 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x32,
pradipv 6:00aabe967e51 287 0x3C,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // ;
pradipv 6:00aabe967e51 288
pradipv 6:00aabe967e51 289 {0x0,0x0,0x0,0x0,0x1,0x1,0x3,0x3,
pradipv 6:00aabe967e51 290 0x6,0x6,0xC,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 291 0x0,0x0,0x0,0x80,0xC0,0xC0,0x60,0x60,
pradipv 6:00aabe967e51 292 0x30,0x30,0x18,0x0,0x0,0x0,0x0,0x0}, // <
pradipv 3:41bdbc9b3cec 293
pradipv 6:00aabe967e51 294 {0x0,0x0,0x0,0xC,0xC,0xC,0xC,0xC,
pradipv 6:00aabe967e51 295 0xC,0xC,0xC,0xC,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 296 0x0,0x0,0x0,0xC0,0xC0,0xC0,0xC0,0xC0,
pradipv 6:00aabe967e51 297 0xC0,0xC0,0xC0,0xC0,0x0,0x0,0x0,0x0}, // =
pradipv 6:00aabe967e51 298
pradipv 6:00aabe967e51 299 {0x0,0x0,0x0,0x0,0xC,0x6,0x6,0x3,
pradipv 6:00aabe967e51 300 0x3,0x1,0x1,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 301 0x0,0x0,0x0,0x0,0x18,0x30,0x30,0x60,
pradipv 6:00aabe967e51 302 0x60,0xC0,0xC0,0x80,0x0,0x0,0x0,0x0}, // >
pradipv 6:00aabe967e51 303
pradipv 6:00aabe967e51 304 {0x0,0x0,0x0,0x0,0xC,0x1C,0x38,0x30,
pradipv 6:00aabe967e51 305 0x31,0x33,0x1F,0xE,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 306 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xEC,
pradipv 6:00aabe967e51 307 0xEC,0x80,0x0,0x0,0x0,0x0,0x0,0x0}, // ?
pradipv 3:41bdbc9b3cec 308
pradipv 6:00aabe967e51 309 {0x0,0x0,0x7,0x18,0x27,0x6F,0x58,0x58,
pradipv 6:00aabe967e51 310 0x4F,0x5F,0x38,0x30,0x1F,0x0,0x0,0x0,
pradipv 6:00aabe967e51 311 0x0,0x0,0xC0,0x20,0x90,0xC8,0xC8,0x88,
pradipv 6:00aabe967e51 312 0xC8,0xC8,0x48,0x90,0x20,0x0,0x0,0x0}, //@
pradipv 3:41bdbc9b3cec 313
pradipv 6:00aabe967e51 314 {0x0,0x0,0x0,0x0,0x1,0xF,0x3E,0x30,
pradipv 6:00aabe967e51 315 0x3E,0xF,0x1,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 316 0x0,0x0,0x4,0x3C,0xF8,0xE0,0x60,0x60,
pradipv 6:00aabe967e51 317 0x60,0xE0,0xF8,0x3C,0x4,0x0,0x0,0x0}, // A
pradipv 6:00aabe967e51 318
pradipv 6:00aabe967e51 319 {0x0,0x0,0x0,0x3F,0x3F,0x31,0x31,0x31,
pradipv 6:00aabe967e51 320 0x31,0x31,0x3F,0x1E,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 321 0x0,0x0,0x0,0xFC,0xFC,0x8C,0x8C,0x8C,
pradipv 6:00aabe967e51 322 0x8C,0x8C,0x8C,0xF8,0x70,0x0,0x0,0x0}, // B
pradipv 3:41bdbc9b3cec 323
pradipv 6:00aabe967e51 324 {0x0,0x0,0x0,0x7,0x1F,0x1C,0x30,0x30,
pradipv 6:00aabe967e51 325 0x30,0x30,0x38,0x1C,0x8,0x0,0x0,0x0,
pradipv 6:00aabe967e51 326 0x0,0x0,0x0,0xE0,0xF8,0x38,0xC,0xC,
pradipv 6:00aabe967e51 327 0xC,0xC,0x1C,0x38,0x10,0x0,0x0,0x0}, // C
pradipv 6:00aabe967e51 328
pradipv 6:00aabe967e51 329 {0x0,0x0,0x0,0x3F,0x3F,0x30,0x30,0x30,
pradipv 6:00aabe967e51 330 0x30,0x30,0x18,0x1F,0x7,0x0,0x0,0x0,
pradipv 6:00aabe967e51 331 0x0,0x0,0x0,0xFC,0xFC,0xC,0xC,0xC,
pradipv 6:00aabe967e51 332 0xC,0xC,0x18,0xF8,0xE0,0x0,0x0,0x0}, // D
pradipv 6:00aabe967e51 333
pradipv 6:00aabe967e51 334 {0x0,0x0,0x0,0x0,0x3F,0x3F,0x31,0x31,
pradipv 6:00aabe967e51 335 0x31,0x31,0x31,0x31,0x31,0x0,0x0,0x0,
pradipv 6:00aabe967e51 336 0x0,0x0,0x0,0x0,0xFC,0xFC,0x8C,0x8C,
pradipv 6:00aabe967e51 337 0x8C,0x8C,0x8C,0x8C,0x8C,0x0,0x0,0x0}, // E
pradipv 3:41bdbc9b3cec 338
pradipv 6:00aabe967e51 339 {0x0,0x0,0x0,0x0,0x3F,0x3F,0x31,0x31,
pradipv 6:00aabe967e51 340 0x31,0x31,0x31,0x30,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 341 0x0,0x0,0x0,0x0,0xFC,0xFC,0x80,0x80,
pradipv 6:00aabe967e51 342 0x80,0x80,0x80,0x0,0x0,0x0,0x0,0x0}, // F
pradipv 3:41bdbc9b3cec 343
pradipv 6:00aabe967e51 344 {0x0,0x0,0x7,0x1F,0x1C,0x30,0x30,0x30,
pradipv 6:00aabe967e51 345 0x30,0x30,0x38,0x1C,0x8,0x0,0x0,0x0,
pradipv 6:00aabe967e51 346 0x0,0x0,0xE0,0xF8,0x38,0xC,0xC,0xC,
pradipv 6:00aabe967e51 347 0xCC,0xCC,0xDC,0xF8,0xF8,0x0,0x0,0x0}, //G
pradipv 6:00aabe967e51 348
pradipv 6:00aabe967e51 349 {0x0,0x0,0x0,0x3F,0x3F,0x1,0x1,0x1,
pradipv 6:00aabe967e51 350 0x1,0x1,0x1,0x3F,0x3F,0x0,0x0,0x0,
pradipv 6:00aabe967e51 351 0x0,0x0,0x0,0xFC,0xFC,0x80,0x80,0x80,
pradipv 6:00aabe967e51 352 0x80,0x80,0x80,0xFC,0xFC,0x0,0x0,0x0}, //H
pradipv 3:41bdbc9b3cec 353
pradipv 6:00aabe967e51 354 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3F,
pradipv 6:00aabe967e51 355 0x3F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 356 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFC,
pradipv 6:00aabe967e51 357 0xFC,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // I
pradipv 6:00aabe967e51 358
pradipv 6:00aabe967e51 359 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 360 0x0,0x0,0x3F,0x3F,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 361 0x0,0x0,0x0,0x0,0x30,0x38,0x1C,0xC,
pradipv 6:00aabe967e51 362 0xC,0x1C,0xF8,0xF0,0x0,0x0,0x0,0x0}, // J
pradipv 3:41bdbc9b3cec 363
pradipv 6:00aabe967e51 364 {0x0,0x0,0x0,0x3F,0x3F,0x0,0x1,0x3,
pradipv 6:00aabe967e51 365 0x7,0xD,0x18,0x30,0x20,0x0,0x0,0x0,
pradipv 6:00aabe967e51 366 0x0,0x0,0x0,0xFC,0xFC,0xC0,0x80,0x0,
pradipv 6:00aabe967e51 367 0x80,0xE0,0x70,0x3C,0xC,0x0,0x0,0x0}, //K
pradipv 6:00aabe967e51 368
pradipv 6:00aabe967e51 369 {0x0,0x0,0x0,0x0,0x3F,0x3F,0x0,0x0,
pradipv 6:00aabe967e51 370 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 371 0x0,0x0,0x0,0x0,0xFC,0xFC,0xC,0xC,
pradipv 6:00aabe967e51 372 0xC,0xC,0xC,0xC,0x0,0x0,0x0,0x0}, // L
pradipv 3:41bdbc9b3cec 373
pradipv 6:00aabe967e51 374 {0x0,0x0,0x3F,0x3F,0x3C,0xF,0x1,0x0,
pradipv 6:00aabe967e51 375 0x1,0xF,0x3C,0x3F,0x3F,0x0,0x0,0x0,
pradipv 6:00aabe967e51 376 0x0,0x0,0xFC,0xFC,0x0,0xC0,0xF8,0x3C,
pradipv 6:00aabe967e51 377 0xF8,0xC0,0x0,0xFC,0xFC,0x0,0x0,0x0}, // M
pradipv 6:00aabe967e51 378
pradipv 6:00aabe967e51 379 {0x0,0x0,0x0,0x3F,0x3F,0x1C,0xE,0x3,
pradipv 6:00aabe967e51 380 0x1,0x0,0x0,0x3F,0x3F,0x0,0x0,0x0,
pradipv 6:00aabe967e51 381 0x0,0x0,0x0,0xFC,0xFC,0x0,0x0,0x80,
pradipv 6:00aabe967e51 382 0xC0,0x70,0x38,0xFC,0xFC,0x0,0x0,0x0}, // N
pradipv 3:41bdbc9b3cec 383
pradipv 6:00aabe967e51 384 {0x0,0x0,0x7,0x1F,0x18,0x30,0x30,0x30,
pradipv 6:00aabe967e51 385 0x30,0x30,0x18,0x1F,0x7,0x0,0x0,0x0,
pradipv 6:00aabe967e51 386 0x0,0x0,0xE0,0xF8,0x18,0xC,0xC,0xC,
pradipv 6:00aabe967e51 387 0xC,0xC,0x18,0xF8,0xE0,0x0,0x0,0x0}, // O
pradipv 6:00aabe967e51 388
pradipv 6:00aabe967e51 389 {0x0,0x0,0x0,0x0,0x3F,0x3F,0x31,0x31,
pradipv 6:00aabe967e51 390 0x31,0x31,0x3B,0x1F,0xE,0x0,0x0,0x0,
pradipv 6:00aabe967e51 391 0x0,0x0,0x0,0x0,0xFC,0xFC,0x80,0x80,
pradipv 6:00aabe967e51 392 0x80,0x80,0x80,0x0,0x0,0x0,0x0,0x0}, // P
pradipv 6:00aabe967e51 393
pradipv 6:00aabe967e51 394 {0x0,0x0,0x7,0x1F,0x18,0x30,0x30,0x30,
pradipv 6:00aabe967e51 395 0x30,0x30,0x18,0x1F,0x7,0x0,0x0,0x0,
pradipv 6:00aabe967e51 396 0x0,0x0,0xE0,0xF8,0x18,0xC,0xC,0x2C,
pradipv 6:00aabe967e51 397 0x3C,0x18,0x3C,0xFE,0xE2,0x0,0x0,0x0},// Q
pradipv 3:41bdbc9b3cec 398
pradipv 6:00aabe967e51 399 {0x0,0x0,0x0,0x3F,0x3F,0x31,0x31,0x31,
pradipv 6:00aabe967e51 400 0x31,0x31,0x3B,0x1F,0xE,0x0,0x0,0x0,
pradipv 6:00aabe967e51 401 0x0,0x0,0x0,0xFC,0xFC,0x80,0x80,0x80,
pradipv 6:00aabe967e51 402 0xC0,0xE0,0x78,0x3C,0xC,0x4,0x0,0x0}, // R
pradipv 3:41bdbc9b3cec 403
pradipv 6:00aabe967e51 404 {0x0,0x0,0x0,0x0,0xE,0x1F,0x3B,0x33,
pradipv 6:00aabe967e51 405 0x31,0x31,0x39,0x1C,0xC,0x0,0x0,0x0,
pradipv 6:00aabe967e51 406 0x0,0x0,0x0,0x0,0x30,0x38,0x1C,0x8C,
pradipv 6:00aabe967e51 407 0x8C,0x8C,0xDC,0xF8,0x70,0x0,0x0,0x0}, //S
pradipv 6:00aabe967e51 408
pradipv 6:00aabe967e51 409 {0x0,0x0,0x0,0x30,0x30,0x30,0x30,0x3F,
pradipv 6:00aabe967e51 410 0x3F,0x30,0x30,0x30,0x30,0x0,0x0,0x0,
pradipv 6:00aabe967e51 411 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFC,
pradipv 6:00aabe967e51 412 0xFC,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //T
pradipv 3:41bdbc9b3cec 413
pradipv 6:00aabe967e51 414 {0x0,0x0,0x0,0x3F,0x3F,0x0,0x0,0x0,
pradipv 6:00aabe967e51 415 0x0,0x0,0x0,0x3F,0x3F,0x0,0x0,0x0,
pradipv 6:00aabe967e51 416 0x0,0x0,0x0,0xF0,0xF8,0x1C,0xC,0xC,
pradipv 6:00aabe967e51 417 0xC,0xC,0x1C,0xF8,0xF0,0x0,0x0,0x0}, //U
pradipv 6:00aabe967e51 418
pradipv 6:00aabe967e51 419 {0x0,0x0,0x20,0x3C,0x1F,0x3,0x0,0x0,
pradipv 6:00aabe967e51 420 0x0,0x3,0x1F,0x3C,0x20,0x0,0x0,0x0,
pradipv 6:00aabe967e51 421 0x0,0x0,0x0,0x0,0x80,0xE0,0xFC,0x1C,
pradipv 6:00aabe967e51 422 0xFC,0xE0,0x80,0x0,0x0,0x0,0x0,0x0},//V
pradipv 6:00aabe967e51 423
pradipv 6:00aabe967e51 424 {0x0,0x0,0x38,0x3F,0x7,0x0,0x7,0x3F,
pradipv 6:00aabe967e51 425 0x38,0x3F,0x7,0x0,0x7,0x3F,0x38,0x0,
pradipv 6:00aabe967e51 426 0x0,0x0,0x0,0xC0,0xFC,0x3C,0xFC,0xC0,
pradipv 6:00aabe967e51 427 0x0,0xC0,0xFC,0x3C,0xFC,0xC0,0x0,0x0}, // W
pradipv 3:41bdbc9b3cec 428
pradipv 6:00aabe967e51 429 {0x0,0x0,0x0,0x30,0x38,0x1E,0x7,0x3,
pradipv 6:00aabe967e51 430 0x7,0x1E,0x38,0x30,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 431 0x0,0x0,0x0,0xC,0x1C,0x78,0xE0,0xC0,
pradipv 6:00aabe967e51 432 0xE0,0x78,0x1C,0xC,0x0,0x0,0x0,0x0}, // X
pradipv 3:41bdbc9b3cec 433
pradipv 6:00aabe967e51 434 {0x0,0x0,0x0,0x30,0x38,0x1E,0x7,0x1,
pradipv 6:00aabe967e51 435 0x1,0x7,0x1E,0x38,0x30,0x0,0x0,0x0,
pradipv 6:00aabe967e51 436 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFC,
pradipv 6:00aabe967e51 437 0xFC,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // Y
pradipv 6:00aabe967e51 438
pradipv 6:00aabe967e51 439 {0x0,0x0,0x0,0x0,0x0,0x30,0x30,0x30,
pradipv 6:00aabe967e51 440 0x33,0x37,0x3E,0x38,0x30,0x0,0x0,0x0,
pradipv 6:00aabe967e51 441 0x0,0x0,0x0,0x0,0xC,0x1C,0x7C,0xEC,
pradipv 6:00aabe967e51 442 0xCC,0xC,0xC,0xC,0xC,0x0,0x0,0x0}, // Z
pradipv 3:41bdbc9b3cec 443
pradipv 6:00aabe967e51 444 {0x0,0x0,0x0,0x0,0x0,0x0,0x7F,0x7F,
pradipv 6:00aabe967e51 445 0x60,0x60,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 446 0x0,0x0,0x0,0x0,0x0,0x0,0xFE,0xFE,
pradipv 6:00aabe967e51 447 0x6,0x6,0x0,0x0,0x0,0x0,0x0,0x0}, // [
pradipv 6:00aabe967e51 448
pradipv 6:00aabe967e51 449 {0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x3F,
pradipv 6:00aabe967e51 450 0xF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 451 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 452 0xF0,0xFC,0xC,0x0,0x0,0x0,0x0,0x0}, // backslash
pradipv 6:00aabe967e51 453
pradipv 6:00aabe967e51 454 {0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x60,
pradipv 6:00aabe967e51 455 0x7F,0x7F,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 456 0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x6,
pradipv 6:00aabe967e51 457 0xFE,0xFE,0x0,0x0,0x0,0x0,0x0,0x0}, // ]
pradipv 3:41bdbc9b3cec 458
pradipv 6:00aabe967e51 459 {0x0,0x0,0x0,0x0,0x1,0xF,0x3E,0x70,
pradipv 6:00aabe967e51 460 0x70,0x3E,0xF,0x1,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 461 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 462 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // ^
pradipv 3:41bdbc9b3cec 463
pradipv 6:00aabe967e51 464 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 465 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 466 0x6,0x6,0x6,0x6,0x6,0x6,0x6,0x6,
pradipv 6:00aabe967e51 467 0x6,0x6,0x6,0x6,0x6,0x6,0x6,0x6}, // _
pradipv 6:00aabe967e51 468
pradipv 6:00aabe967e51 469 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,
pradipv 6:00aabe967e51 470 0x30,0x10,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 471 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 472 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // `
pradipv 3:41bdbc9b3cec 473
pradipv 6:00aabe967e51 474 {0x0,0x0,0x0,0x0,0x6,0xE,0xC,0xD,
pradipv 6:00aabe967e51 475 0xD,0xF,0x7,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 476 0x0,0x0,0x0,0x0,0x70,0xF8,0xD8,0x98,
pradipv 6:00aabe967e51 477 0x98,0xF0,0xF8,0x8,0x0,0x0,0x0,0x0}, // a
pradipv 6:00aabe967e51 478
pradipv 6:00aabe967e51 479 {0x0,0x0,0x0,0x0,0x7F,0x7F,0x6,0xC,
pradipv 6:00aabe967e51 480 0xC,0xE,0x7,0x3,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 481 0x0,0x0,0x0,0x0,0xF8,0xF8,0x30,0x18,
pradipv 6:00aabe967e51 482 0x18,0x38,0xF0,0xE0,0x0,0x0,0x0,0x0}, // b
pradipv 6:00aabe967e51 483
pradipv 6:00aabe967e51 484 {0x0,0x0,0x0,0x0,0x3,0x7,0xE,0xC,
pradipv 6:00aabe967e51 485 0xC,0xE,0x6,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 486 0x0,0x0,0x0,0x0,0xE0,0xF0,0x38,0x18,
pradipv 6:00aabe967e51 487 0x18,0x38,0x30,0x0,0x0,0x0,0x0,0x0}, //c
pradipv 3:41bdbc9b3cec 488
pradipv 6:00aabe967e51 489 {0x0,0x0,0x0,0x0,0x3,0x7,0xE,0xC,
pradipv 6:00aabe967e51 490 0xC,0x6,0x7F,0x7F,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 491 0x0,0x0,0x0,0x0,0xE0,0xF0,0x38,0x18,
pradipv 6:00aabe967e51 492 0x18,0x30,0xF8,0xF8,0x0,0x0,0x0,0x0}, // d
pradipv 3:41bdbc9b3cec 493
pradipv 6:00aabe967e51 494 {0x0,0x0,0x0,0x0,0x3,0x7,0xD,0xD,
pradipv 6:00aabe967e51 495 0xD,0x7,0x3,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 496 0x0,0x0,0x0,0x0,0xE0,0xF0,0xB8,0x98,
pradipv 6:00aabe967e51 497 0x98,0xB0,0xA0,0x0,0x0,0x0,0x0,0x0}, // e
pradipv 6:00aabe967e51 498
pradipv 6:00aabe967e51 499 {0x0,0x0,0x0,0x0,0xC,0x3F,0x7F,0x6C,
pradipv 6:00aabe967e51 500 0x6C,0x60,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 501 0x0,0x0,0x0,0x0,0x0,0xF8,0xF8,0x0,
pradipv 6:00aabe967e51 502 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // f
pradipv 3:41bdbc9b3cec 503
pradipv 6:00aabe967e51 504 {0x0,0x0,0x0,0x7,0xF,0x1C,0x18,0x18,
pradipv 6:00aabe967e51 505 0xC,0x1F,0x1F,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 506 0x0,0x0,0x0,0xCC,0xEE,0x76,0x36,0x36,
pradipv 6:00aabe967e51 507 0x66,0xFE,0xFC,0x0,0x0,0x0,0x0,0x0}, // g
pradipv 6:00aabe967e51 508
pradipv 6:00aabe967e51 509 {0x0,0x0,0x0,0x0,0x7F,0x7F,0x6,0xC,
pradipv 6:00aabe967e51 510 0xC,0xC,0xF,0x7,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 511 0x0,0x0,0x0,0x0,0xF8,0xF8,0x0,0x0,
pradipv 6:00aabe967e51 512 0x0,0x0,0xF8,0xF8,0x0,0x0,0x0,0x0}, //h
pradipv 6:00aabe967e51 513
pradipv 6:00aabe967e51 514 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x37,
pradipv 6:00aabe967e51 515 0x37,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 516 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF8,
pradipv 6:00aabe967e51 517 0xF8,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // i
pradipv 3:41bdbc9b3cec 518
pradipv 6:00aabe967e51 519 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x37,
pradipv 6:00aabe967e51 520 0x37,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 521 0x0,0x0,0x0,0x0,0x0,0x3,0x3,0xFF,
pradipv 6:00aabe967e51 522 0xFE,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // j
pradipv 3:41bdbc9b3cec 523
pradipv 6:00aabe967e51 524 {0x0,0x0,0x0,0x0,0x7F,0x7F,0x1,0x3,
pradipv 6:00aabe967e51 525 0x7,0xC,0x8,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 526 0x0,0x0,0x0,0x0,0xF8,0xF8,0xC0,0x80,
pradipv 6:00aabe967e51 527 0xE0,0xF8,0x18,0x0,0x0,0x0,0x0,0x0}, // k
pradipv 6:00aabe967e51 528
pradipv 6:00aabe967e51 529 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7F,
pradipv 6:00aabe967e51 530 0x7F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 531 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF8,
pradipv 6:00aabe967e51 532 0xF8,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // l
pradipv 3:41bdbc9b3cec 533
pradipv 6:00aabe967e51 534 {0x0,0x0,0xF,0xF,0x6,0xC,0xC,0xF,
pradipv 6:00aabe967e51 535 0x7,0x6,0xC,0xC,0xF,0x7,0x0,0x0,
pradipv 6:00aabe967e51 536 0x0,0x0,0xF8,0xF8,0x0,0x0,0x0,0xF8,
pradipv 6:00aabe967e51 537 0xF8,0x0,0x0,0x0,0xF8,0xF8,0x0,0x0},// m
pradipv 6:00aabe967e51 538
pradipv 6:00aabe967e51 539 0x0,0x0,0x0,0x0,0xF,0xF,0x6,0xC,
pradipv 6:00aabe967e51 540 0xC,0xC,0xF,0x7,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 541 0x0,0x0,0x0,0x0,0xF8,0xF8,0x0,0x0,
pradipv 6:00aabe967e51 542 0x0,0x0,0xF8,0xF8,0x0,0x0,0x0,0x0, // n
pradipv 6:00aabe967e51 543
pradipv 6:00aabe967e51 544 {0x0,0x0,0x0,0x0,0x3,0x7,0xE,0xC,
pradipv 6:00aabe967e51 545 0xC,0xE,0x7,0x3,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 546 0x0,0x0,0x0,0x0,0xE0,0xF0,0x38,0x18,
pradipv 6:00aabe967e51 547 0x18,0x38,0xF0,0xE0,0x0,0x0,0x0,0x0}, // o
pradipv 3:41bdbc9b3cec 548
pradipv 6:00aabe967e51 549 {0x0,0x0,0x0,0x0,0xF,0xF,0x6,0xC,
pradipv 6:00aabe967e51 550 0xC,0xE,0x7,0x3,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 551 0x0,0x0,0x0,0x0,0xFF,0xFF,0x30,0x18,
pradipv 6:00aabe967e51 552 0x18,0x38,0xF0,0xE0,0x0,0x0,0x0,0x0}, // p
pradipv 3:41bdbc9b3cec 553
pradipv 6:00aabe967e51 554 {0x0,0x0,0x0,0x0,0x3,0x7,0xE,0xC,
pradipv 6:00aabe967e51 555 0xC,0x6,0xF,0xF,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 556 0x0,0x0,0x0,0x0,0xE0,0xF0,0x38,0x18,
pradipv 6:00aabe967e51 557 0x18,0x30,0xFF,0xFF,0x0,0x0,0x0,0x0}, //q
pradipv 6:00aabe967e51 558
pradipv 6:00aabe967e51 559 {0x0,0x0,0x0,0x0,0x0,0x0,0xF,0xF,
pradipv 6:00aabe967e51 560 0x6,0xC,0xC,0xC,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 561 0x0,0x0,0x0,0x0,0x0,0x0,0xF8,0xF8,
pradipv 6:00aabe967e51 562 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //r
pradipv 3:41bdbc9b3cec 563
pradipv 6:00aabe967e51 564 {0x0,0x0,0x0,0x0,0x7,0xF,0xD,0xD,
pradipv 6:00aabe967e51 565 0xC,0xE,0x6,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 566 0x0,0x0,0x0,0x0,0x30,0xB8,0x98,0x98,
pradipv 6:00aabe967e51 567 0xD8,0xF8,0x70,0x0,0x0,0x0,0x0,0x0}, // s
pradipv 6:00aabe967e51 568
pradipv 6:00aabe967e51 569 {0x0,0x0,0x0,0x0,0x0,0xC,0x3F,0x7F,
pradipv 6:00aabe967e51 570 0xC,0xC,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 571 0x0,0x0,0x0,0x0,0x0,0x0,0xF0,0xF8,
pradipv 6:00aabe967e51 572 0x18,0x18,0x0,0x0,0x0,0x0,0x0,0x0}, // t
pradipv 6:00aabe967e51 573
pradipv 6:00aabe967e51 574 {0x0,0x0,0x0,0x0,0xF,0xF,0x0,0x0,
pradipv 6:00aabe967e51 575 0x0,0x0,0xF,0xF,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 576 0x0,0x0,0x0,0x0,0xF0,0xF8,0x18,0x18,
pradipv 6:00aabe967e51 577 0x18,0x30,0xF8,0xF8,0x0,0x0,0x0,0x0}, // u
pradipv 3:41bdbc9b3cec 578
pradipv 6:00aabe967e51 579 {0x0,0x0,0x0,0x0,0x0,0xE,0xF,0x1,
pradipv 6:00aabe967e51 580 0x0,0x1,0xF,0xE,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 581 0x0,0x0,0x0,0x0,0x0,0x0,0xC0,0xF8,
pradipv 6:00aabe967e51 582 0x38,0xF8,0xC0,0x0,0x0,0x0,0x0,0x0}, // v
pradipv 6:00aabe967e51 583
pradipv 6:00aabe967e51 584 {0x0,0x0,0xC,0xF,0x3,0x0,0x1,0xF,
pradipv 6:00aabe967e51 585 0xE,0xF,0x1,0x0,0x3,0xF,0xC,0x0,
pradipv 6:00aabe967e51 586 0x0,0x0,0x0,0xC0,0xF8,0x38,0xF8,0xC0,
pradipv 6:00aabe967e51 587 0x0,0xC0,0xF8,0x38,0xF8,0xC0,0x0,0x0}, // w
pradipv 6:00aabe967e51 588
pradipv 6:00aabe967e51 589 {0x0,0x0,0x0,0x0,0x0,0xC,0xE,0x7,
pradipv 6:00aabe967e51 590 0x1,0x7,0xE,0xC,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 591 0x0,0x0,0x0,0x0,0x0,0x18,0x38,0xF0,
pradipv 6:00aabe967e51 592 0xC0,0xF0,0x38,0x18,0x0,0x0,0x0,0x0}, // x
pradipv 3:41bdbc9b3cec 593
pradipv 6:00aabe967e51 594 {0x0,0x0,0x0,0x0,0xC,0xF,0x3,0x0,
pradipv 6:00aabe967e51 595 0x0,0x0,0x3,0xF,0xC,0x0,0x0,0x0,
pradipv 6:00aabe967e51 596 0x0,0x0,0x0,0x0,0x0,0x3,0xE3,0xFF,
pradipv 6:00aabe967e51 597 0x3E,0xF8,0xE0,0x0,0x0,0x0,0x0,0x0}, // y
pradipv 6:00aabe967e51 598
pradipv 6:00aabe967e51 599 {0x0,0x0,0x0,0x0,0x0,0x0,0xC,0xC,
pradipv 6:00aabe967e51 600 0xC,0xD,0xF,0xF,0xC,0x0,0x0,0x0,
pradipv 6:00aabe967e51 601 0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x78,
pradipv 6:00aabe967e51 602 0xF8,0xD8,0x98,0x18,0x18,0x0,0x0,0x0}, //z
pradipv 6:00aabe967e51 603
pradipv 6:00aabe967e51 604 {0x0,0x0,0x0,0x0,0x3,0x3,0x7F,0xFC,
pradipv 6:00aabe967e51 605 0xC0,0xC0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 606 0x0,0x0,0x0,0x0,0x0,0x0,0xFC,0xFE,
pradipv 6:00aabe967e51 607 0x6,0x6,0x0,0x0,0x0,0x0,0x0,0x0}, // {
pradipv 3:41bdbc9b3cec 608
pradipv 6:00aabe967e51 609 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFF,
pradipv 6:00aabe967e51 610 0xFF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 611 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFF,
pradipv 6:00aabe967e51 612 0xFF,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // |
pradipv 3:41bdbc9b3cec 613
pradipv 6:00aabe967e51 614 {0x0,0x0,0x0,0x0,0x0,0x0,0xC0,0xC0,
pradipv 6:00aabe967e51 615 0xFC,0x7F,0x3,0x3,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 616 0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x6,
pradipv 6:00aabe967e51 617 0xFE,0xFC,0x0,0x0,0x0,0x0,0x0,0x0}, // }
pradipv 6:00aabe967e51 618
pradipv 6:00aabe967e51 619 {0x0,0x0,0x0,0x0,0x18,0x30,0x30,0x30,
pradipv 6:00aabe967e51 620 0x38,0x18,0x18,0x18,0x30,0x0,0x0,0x0,
pradipv 6:00aabe967e51 621 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 622 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // ~
pradipv 6:00aabe967e51 623 };
pradipv 3:41bdbc9b3cec 624
pradipv 6:00aabe967e51 625 // Manually created 16*16 character bit map
pradipv 6:00aabe967e51 626 static const uint8_t Manual_font_16x16[95][32] = {
pradipv 6:00aabe967e51 627
pradipv 8:a6a0c9e280ae 628 // Note: Number 0-9, char A-Z and char a-z bit map data created manually, other
pradipv 6:00aabe967e51 629 // font bit map data taken from Aerial_bold font
pradipv 6:00aabe967e51 630
pradipv 6:00aabe967e51 631 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 632 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 633 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 634 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // SPACE
pradipv 3:41bdbc9b3cec 635
pradipv 6:00aabe967e51 636 {0x0,0x0,0x0,0x0,0x0,0x0,0x3F,0x3F,
pradipv 6:00aabe967e51 637 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 638 0x0,0x0,0x0,0x0,0x0,0x0,0xEC,0xEC,
pradipv 6:00aabe967e51 639 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // !
pradipv 3:41bdbc9b3cec 640
pradipv 6:00aabe967e51 641 {0x0,0x0,0x0,0x0,0x0,0x3C,0x3C,0x0,
pradipv 6:00aabe967e51 642 0x0,0x3C,0x3C,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 643 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 644 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //"
pradipv 3:41bdbc9b3cec 645
pradipv 6:00aabe967e51 646 {0x0,0x0,0x6,0x6,0x6,0xF,0x3F,0x36,
pradipv 6:00aabe967e51 647 0xF,0x3F,0x36,0x6,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 648 0x0,0x0,0x60,0x6C,0xFC,0xF0,0x6C,0xFC,
pradipv 6:00aabe967e51 649 0xF0,0x60,0x60,0x60,0x0,0x0,0x0,0x0},// #
pradipv 6:00aabe967e51 650
pradipv 6:00aabe967e51 651 {0x0,0x0,0x0,0x0,0xE,0x1F,0x33,0x7F,
pradipv 6:00aabe967e51 652 0x31,0x18,0x8,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 653 0x0,0x0,0x0,0x0,0x30,0x38,0x8C,0xFE,
pradipv 6:00aabe967e51 654 0xCC,0xF8,0x70,0x0,0x0,0x0,0x0,0x0}, //$
pradipv 3:41bdbc9b3cec 655
pradipv 6:00aabe967e51 656 {0x0,0x1E,0x3F,0x21,0x21,0x3F,0x1E,0x0,
pradipv 6:00aabe967e51 657 0x3,0x7,0x1C,0x38,0x20,0x0,0x0,0x0,
pradipv 6:00aabe967e51 658 0x0,0x0,0x0,0x0,0x4,0xC,0x38,0xF0,
pradipv 6:00aabe967e51 659 0xC0,0x0,0x78,0xFC,0x84,0x84,0xFC,0x78},//%
pradipv 3:41bdbc9b3cec 660
pradipv 6:00aabe967e51 661 {0x0,0x0,0x0,0x0,0x1C,0x3F,0x33,0x33,
pradipv 6:00aabe967e51 662 0x33,0x3E,0x1C,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 663 0x0,0x0,0x0,0x70,0xF8,0x8C,0xC,0xCC,
pradipv 6:00aabe967e51 664 0xEC,0x78,0x38,0xF8,0x5C,0x8,0x0,0x0},//&
pradipv 6:00aabe967e51 665
pradipv 6:00aabe967e51 666 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3C,
pradipv 6:00aabe967e51 667 0x3C,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 668 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 669 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},//'
pradipv 3:41bdbc9b3cec 670
pradipv 6:00aabe967e51 671 {0x0,0x0,0x0,0x0,0x0,0xF,0x3F,0x70,
pradipv 6:00aabe967e51 672 0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 673 0x0,0x0,0x0,0x0,0x0,0xE0,0xF8,0x1C,
pradipv 6:00aabe967e51 674 0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0},//(
pradipv 6:00aabe967e51 675
pradipv 6:00aabe967e51 676 {0x0,0x0,0x0,0x0,0x0,0x40,0x70,0x3F,
pradipv 6:00aabe967e51 677 0xF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 678 0x0,0x0,0x0,0x0,0x0,0x4,0x1C,0xF8,
pradipv 6:00aabe967e51 679 0xE0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //}
pradipv 3:41bdbc9b3cec 680
pradipv 6:00aabe967e51 681 {0x0,0x0,0x3,0x3,0x1,0x1,0xF,0xF,
pradipv 6:00aabe967e51 682 0xF,0x1,0x1,0x3,0x3,0x0,0x0,0x0,
pradipv 6:00aabe967e51 683 0x0,0x0,0x0,0x10,0x30,0xF8,0xE0,0xC0,
pradipv 6:00aabe967e51 684 0xE0,0xF8,0x30,0x10,0x0,0x0,0x0,0x0},//*
pradipv 3:41bdbc9b3cec 685
pradipv 6:00aabe967e51 686 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 687 0x7,0x7,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 688 0x0,0x0,0x0,0x0,0x0,0xC0,0xC0,0xC0,
pradipv 6:00aabe967e51 689 0xF8,0xF8,0xC0,0xC0,0xC0,0x0,0x0,0x0},//+
pradipv 6:00aabe967e51 690
pradipv 6:00aabe967e51 691 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 692 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 693 0x0,0x0,0x0,0x0,0x0,0x0,0x32,0x3C,
pradipv 6:00aabe967e51 694 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, //,
pradipv 3:41bdbc9b3cec 695
pradipv 6:00aabe967e51 696 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 697 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 698 0x0,0x0,0x0,0x0,0x0,0x0,0xC0,0xC0,
pradipv 6:00aabe967e51 699 0xC0,0xC0,0xC0,0x0,0x0,0x0,0x0,0x0},// -
pradipv 6:00aabe967e51 700
pradipv 6:00aabe967e51 701 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 702 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 703 0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x18,
pradipv 6:00aabe967e51 704 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // .
pradipv 3:41bdbc9b3cec 705
pradipv 6:00aabe967e51 706 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 707 0xF,0x3F,0x30,0x0,0x0,0x0,0x0,0x0,
pradipv 6:00aabe967e51 708 0x0,0x0,0x0,0x0,0x0,0x0,0xC,0xFC,
pradipv 6:00aabe967e51 709 0xF0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // /
pradipv 6:00aabe967e51 710
pradipv 6:00aabe967e51 711 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 6:00aabe967e51 712 0x61,0x63,0x66,0x7F,0x7F,0x3F,0x00,0x00,
pradipv 6:00aabe967e51 713 0x00,0x00,0xFE,0xFF,0xFF,0x33,0x63,0xC3,
pradipv 6:00aabe967e51 714 0x83,0x03,0x03,0xFF,0xFF,0x0FE,0x00,0x00}, // 0
pradipv 6:00aabe967e51 715
pradipv 6:00aabe967e51 716 {0x00,0x00,0x00,0x00,0x08,0x18,0x3F,0x7F,
pradipv 6:00aabe967e51 717 0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
pradipv 6:00aabe967e51 718 0x00,0x00,0x00,0x00,0x00,0x03,0xFF,0xFF,
pradipv 6:00aabe967e51 719 0xFF,0xFF,0x03,0x00,0x00,0x00,0x00,0x00 }, // 1
pradipv 6:00aabe967e51 720
pradipv 6:00aabe967e51 721 {0x00,0x00,0x30,0x70,0x60,0x60,0x60,0x60,
pradipv 6:00aabe967e51 722 0x61,0x63,0x66,0x7C,0x38,0x30,0x00,0x00,
pradipv 6:00aabe967e51 723 0x00,0x00,0x06,0x0E,0x1E,0x36,0x66,0xC6,
pradipv 6:00aabe967e51 724 0x86,0x06,0x06,0x06,0x06,0x06,0x00,0x00 }, // 2
pradipv 3:41bdbc9b3cec 725
pradipv 6:00aabe967e51 726 {0x00,0x00,0x30,0x70,0x60,0x60,0x60,0x60,
pradipv 6:00aabe967e51 727 0x61,0x63,0x66,0x7E,0x7C,0x38,0x00,0x00,
pradipv 6:00aabe967e51 728 0x00,0x00,0x0C,0x0E,0x06,0x06,0x06,0x06,
pradipv 6:00aabe967e51 729 0x86,0xC6,0x66,0x7E,0x3E,0x1C,0x00,0x00 }, // 3
pradipv 6:00aabe967e51 730
pradipv 8:a6a0c9e280ae 731 {0x00,0x00,0x00,0x01,0x03,0x06,0xC,0x18,
pradipv 8:a6a0c9e280ae 732 0x30,0x7F,0xFF,0xFF,0x00,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 733 0x00,0x00,0xE0,0xE0,0x60,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 734 0x60,0xFE,0xFE,0xFE,0x60,0x60,0x00,0x00 }, // 4
pradipv 6:00aabe967e51 735
pradipv 8:a6a0c9e280ae 736 {0x00,0x00,0x7F,0x7F,0x7F,0x61,0x61,0x61,
pradipv 8:a6a0c9e280ae 737 0x61,0x61,0x61,0x61,0x61,0x60,0x00,0x00,
pradipv 8:a6a0c9e280ae 738 0x00,0x00,0x04,0x86,0x86,0x86,0x86,0x86,
pradipv 8:a6a0c9e280ae 739 0x86,0x86,0x86,0xFE,0xFE,0xFC,0x00,0x00 }, // 5
pradipv 6:00aabe967e51 740
pradipv 8:a6a0c9e280ae 741 {0x00,0x00,0x3F,0x7F,0x7F,0x61,0x61,0x61,
pradipv 8:a6a0c9e280ae 742 0x61,0x61,0x61,0x61,0x61,0x20,0x00,0x00,
pradipv 8:a6a0c9e280ae 743 0x00,0x00,0xFC,0xFE,0xFE,0x86,0x86,0x86,
pradipv 8:a6a0c9e280ae 744 0x86,0x86,0x86,0xFE,0xFE,0xFC,0x00,0x00 }, // 6
pradipv 6:00aabe967e51 745
pradipv 8:a6a0c9e280ae 746 {0x00,0x00,0x00,0x30,0x30,0x30,0x30,0x30,
pradipv 8:a6a0c9e280ae 747 0x30,0x30,0x31,0x3F,0x3E,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 748 0x00,0x00,0x00,0x00,0x06,0x0C,0x18,0x30,
pradipv 8:a6a0c9e280ae 749 0x60,0xC0,0x80,0x00,0x00,0x00,0x00,0x00 }, // 7
pradipv 6:00aabe967e51 750
pradipv 8:a6a0c9e280ae 751 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 752 0x60,0x60,0x60,0x7F,0x7F,0x3F,0x00,0x00,
pradipv 8:a6a0c9e280ae 753 0x00,0x00,0x3E,0xFF,0xFF,0xC3,0xC3,0xC3,
pradipv 8:a6a0c9e280ae 754 0xC3,0xC3,0xC3,0xFF,0xFF,0x03E,0x00,0x00}, // 8
pradipv 3:41bdbc9b3cec 755
pradipv 8:a6a0c9e280ae 756 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 757 0x60,0x60,0x60,0x7F,0x7F,0x3F,0x00,0x00,
pradipv 8:a6a0c9e280ae 758 0x00,0x00,0x86,0xC7,0xC3,0xC3,0xC3,0xC3,
pradipv 8:a6a0c9e280ae 759 0xC3,0xC3,0xC3,0xFF,0xFF,0x0FE,0x00,0x00}, // 9
pradipv 6:00aabe967e51 760
pradipv 8:a6a0c9e280ae 761 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,
pradipv 8:a6a0c9e280ae 762 0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 763 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,
pradipv 8:a6a0c9e280ae 764 0x30,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // :
pradipv 6:00aabe967e51 765
pradipv 6:00aabe967e51 766 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,
pradipv 8:a6a0c9e280ae 767 0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 768 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x32,
pradipv 8:a6a0c9e280ae 769 0x3C,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // ;
pradipv 3:41bdbc9b3cec 770
pradipv 6:00aabe967e51 771 {0x0,0x0,0x0,0x0,0x1,0x1,0x3,0x3,
pradipv 8:a6a0c9e280ae 772 0x6,0x6,0xC,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 773 0x0,0x0,0x0,0x80,0xC0,0xC0,0x60,0x60,
pradipv 8:a6a0c9e280ae 774 0x30,0x30,0x18,0x0,0x0,0x0,0x0,0x0}, // <
pradipv 6:00aabe967e51 775
pradipv 6:00aabe967e51 776 {0x0,0x0,0x0,0xC,0xC,0xC,0xC,0xC,
pradipv 8:a6a0c9e280ae 777 0xC,0xC,0xC,0xC,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 778 0x0,0x0,0x0,0xC0,0xC0,0xC0,0xC0,0xC0,
pradipv 8:a6a0c9e280ae 779 0xC0,0xC0,0xC0,0xC0,0x0,0x0,0x0,0x0}, // =
pradipv 3:41bdbc9b3cec 780
pradipv 6:00aabe967e51 781 {0x0,0x0,0x0,0x0,0xC,0x6,0x6,0x3,
pradipv 8:a6a0c9e280ae 782 0x3,0x1,0x1,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 783 0x0,0x0,0x0,0x0,0x18,0x30,0x30,0x60,
pradipv 8:a6a0c9e280ae 784 0x60,0xC0,0xC0,0x80,0x0,0x0,0x0,0x0}, // >
pradipv 6:00aabe967e51 785
pradipv 6:00aabe967e51 786 {0x0,0x0,0x0,0x0,0xC,0x1C,0x38,0x30,
pradipv 8:a6a0c9e280ae 787 0x31,0x33,0x1F,0xE,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 788 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xEC,
pradipv 8:a6a0c9e280ae 789 0xEC,0x80,0x0,0x0,0x0,0x0,0x0,0x0}, // ?
pradipv 3:41bdbc9b3cec 790
pradipv 6:00aabe967e51 791 {0x0,0x0,0x7,0x18,0x27,0x6F,0x58,0x58,
pradipv 8:a6a0c9e280ae 792 0x4F,0x5F,0x38,0x30,0x1F,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 793 0x0,0x0,0xC0,0x20,0x90,0xC8,0xC8,0x88,
pradipv 8:a6a0c9e280ae 794 0xC8,0xC8,0x48,0x90,0x20,0x0,0x0,0x0}, //@
pradipv 6:00aabe967e51 795
pradipv 6:00aabe967e51 796 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 797 0x60,0x60,0x60,0x7F,0x7F,0x3F,0x00,0x00,
pradipv 8:a6a0c9e280ae 798 0x00,0x00,0xFF,0xFF,0xFF,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 799 0x60,0x60,0x60,0xFF,0xFF,0xFF,0x00,0x00 }, // A
pradipv 6:00aabe967e51 800
pradipv 6:00aabe967e51 801 {0x00,0x00,0x7F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 802 0x60,0x60,0x60,0x7F,0x07F,0x3E,0x00,0x00,
pradipv 8:a6a0c9e280ae 803 0x00,0x00,0xFF,0xFF,0xFF,0xC3,0xC3,0xC3,
pradipv 8:a6a0c9e280ae 804 0xC3,0xC3,0xC3,0xFF,0xFF,0x3E,0x00,0x00}, // B
pradipv 6:00aabe967e51 805
pradipv 6:00aabe967e51 806 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 807 0x60,0x60,0x60,0x70,0x30,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 808 0x00,0x00,0xFE,0xFF,0xFF,0x03,0x03,0x03,
pradipv 8:a6a0c9e280ae 809 0x03,0x03,0x03,0x07,0x06,0x00,0x00,0x00}, // C
pradipv 3:41bdbc9b3cec 810
pradipv 6:00aabe967e51 811 {0x00,0x00,0x7F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 812 0x60,0x60,0x60,0x70,0x3F,0x1F,0x00,0x00,
pradipv 8:a6a0c9e280ae 813 0x00,0x00,0xFF,0xFF,0xFF,0x03,0x03,0x03,
pradipv 8:a6a0c9e280ae 814 0x03,0x03,0x03,0x07,0xFE,0x0FC,0x00,0x00}, // D
pradipv 8:a6a0c9e280ae 815
pradipv 6:00aabe967e51 816 {0x00,0x00,0x07F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 817 0x60,0x60,0x60,0x60,0x60,0x060,0x00,0x00,
pradipv 8:a6a0c9e280ae 818 0x00,0x00,0xFF,0xFF,0xFF,0xC3,0xC3,0xC3,
pradipv 8:a6a0c9e280ae 819 0xC3,0xC3,0xC3,0xC3,0x03,0x03,0x00,0x00}, // E
pradipv 6:00aabe967e51 820
pradipv 6:00aabe967e51 821 {0x00,0x00,0x7F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 822 0x60,0x60,0x60,0x60,0x60,0x060,0x00,0x00,
pradipv 8:a6a0c9e280ae 823 0x00,0x00,0xFF,0xFF,0xFF,0xC0,0xC0,0xC0,
pradipv 8:a6a0c9e280ae 824 0xC0,0xC0,0xC0,0xC0,0x00,0x00,0x00,0x00}, // F
pradipv 3:41bdbc9b3cec 825
pradipv 6:00aabe967e51 826 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 827 0x60,0x60,0x60,0x78,0x38,0x18,0x00,0x00,
pradipv 8:a6a0c9e280ae 828 0x00,0x00,0xFE,0xFF,0xFF,0x03,0x03,0x03,
pradipv 8:a6a0c9e280ae 829 0x03,0x23,0x33,0x3F,0x3F,0x3F,0x00,0x00}, // G
pradipv 6:00aabe967e51 830
pradipv 6:00aabe967e51 831 {0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 832 0x00,0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,
pradipv 8:a6a0c9e280ae 833 0x00,0x00,0xFF,0xFF,0xFF,0xC0,0xC0,0xC0,
pradipv 8:a6a0c9e280ae 834 0xC0,0xC0,0xC0,0xFF,0xFF,0xFF,0x00,0x00 }, // H
pradipv 6:00aabe967e51 835
pradipv 6:00aabe967e51 836 {0x00,0x00,0x00,0x00,0x60,0x60,0x7F,0x7F,
pradipv 8:a6a0c9e280ae 837 0x7F,0x7F,0x60,0x60,0x00,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 838 0x00,0x00,0x00,0x00,0x03,0x03,0xFF,0xFF,
pradipv 8:a6a0c9e280ae 839 0xFF,0xFF,0x03,0x03,0x00,0x00,0x00,0x00 }, // I
pradipv 6:00aabe967e51 840
pradipv 6:00aabe967e51 841 {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 842 0x00,0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,
pradipv 8:a6a0c9e280ae 843 0x00,0x00,0x00,0x01E,0x1F,0x1F,0x03,0x03,
pradipv 8:a6a0c9e280ae 844 0x03,0x03,0x03,0xFF,0xFF,0xFE,0x00,0x00 }, // J
pradipv 3:41bdbc9b3cec 845
pradipv 6:00aabe967e51 846 {0x00,0x00,0x7F,0x7F,0x7F,0x03,0x03,0x06,
pradipv 8:a6a0c9e280ae 847 0x0C,0x18,0x30,0x60,0x60,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 848 0x00,0x00,0xFE,0xFE,0xFE,0xC0,0xC0,0x60,
pradipv 8:a6a0c9e280ae 849 0x30,0x18,0x0C,0x06,0x06,0x00,0x00,0x00 }, // K
pradipv 6:00aabe967e51 850
pradipv 6:00aabe967e51 851 {0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 852 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 853 0x00,0x00,0xFF,0xFF,0xFF,0x03,0x03,0x03,
pradipv 8:a6a0c9e280ae 854 0x03,0x03,0x03,0x03,0x03,0x00,0x00,0x00 }, // L
pradipv 3:41bdbc9b3cec 855
pradipv 6:00aabe967e51 856 {0x00,0x00,0x7F,0x7F,0x7F,0x1C,0x0E,0x07,
pradipv 8:a6a0c9e280ae 857 0x07,0x0E,0x1C,0x7F,0x7F,0x7F,0x00,0x00,
pradipv 8:a6a0c9e280ae 858 0x00,0x00,0xFC,0xFC,0xFC,0x00,0x00,0x80,
pradipv 8:a6a0c9e280ae 859 0x80,0x00,0x00,0xFC,0xFC,0xFC,0x00,0x00 }, // M
pradipv 6:00aabe967e51 860
pradipv 6:00aabe967e51 861 {0x00,0x00,0x7F,0x7F,0x7F,0x38,0x1C,0x07,
pradipv 8:a6a0c9e280ae 862 0x03,0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,
pradipv 8:a6a0c9e280ae 863 0x00,0x00,0xFC,0xFC,0xFC,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 864 0x80,0xE0,0x70,0xFC,0xFC,0xFC,0x00,0x00 }, // N
pradipv 3:41bdbc9b3cec 865
pradipv 6:00aabe967e51 866 {0x00,0x00,0x3F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 867 0x60,0x60,0x60,0x7F,0x7F,0x3F,0x00,0x00,
pradipv 8:a6a0c9e280ae 868 0x00,0x00,0xFE,0xFF,0xFF,0x03,0x03,0x03,
pradipv 8:a6a0c9e280ae 869 0x03,0x03,0x03,0xFF,0xFF,0x0FE,0x00,0x00}, // O
pradipv 6:00aabe967e51 870
pradipv 6:00aabe967e51 871 {0x00,0x00,0x07F,0x7F,0x7F,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 872 0x60,0x60,0x60,0x7F,0x7F,0x03F,0x00,0x00,
pradipv 8:a6a0c9e280ae 873 0x00,0x00,0xFF,0xFF,0xFF,0xC0,0xC0,0xC0,
pradipv 8:a6a0c9e280ae 874 0xC0,0xC0,0xC0,0xC0,0xC0,0x80,0x00,0x00}, // P
pradipv 6:00aabe967e51 875
pradipv 6:00aabe967e51 876 {0x00,0x00,0x3F,0x7F,0x60,0x60,0x60,0x60,
pradipv 8:a6a0c9e280ae 877 0x60,0x60,0x60,0x60,0x7F,0x3F,0x00,0x00,
pradipv 8:a6a0c9e280ae 878 0x00,0x00,0xF8,0xFC,0x0C,0x0C,0x0C,0x0C,
pradipv 8:a6a0c9e280ae 879 0x0C,0x0C,0x3C,0x3C,0xFE,0xFF,0x03,0x00}, // Q
pradipv 3:41bdbc9b3cec 880
pradipv 6:00aabe967e51 881 {0x00,0x00,0x07F,0x7F,0x7F,0x61,0x61,0x61,
pradipv 8:a6a0c9e280ae 882 0x61,0x61,0x61,0x7F,0x7F,0x03F,0x00,0x00,
pradipv 8:a6a0c9e280ae 883 0x00,0x00,0xFF,0xFF,0xFF,0xC0,0xE0,0xF0,
pradipv 8:a6a0c9e280ae 884 0xB8,0x9C,0x8E,0x87,0x83,0x03,0x00,0x00}, // R
pradipv 6:00aabe967e51 885
pradipv 6:00aabe967e51 886 {0x00,0x00,0x1E,0x3F,0x73,0x61,0x61,0x61,
pradipv 8:a6a0c9e280ae 887 0x61,0x61,0x61,0x70,0x30,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 888 0x00,0x00,0x0C,0x0C,0x86,0x86,0x86,0x86,
pradipv 8:a6a0c9e280ae 889 0x86,0x86,0xC6,0xFC,0x78,0x00,0x00,0x00}, // S
pradipv 6:00aabe967e51 890
pradipv 6:00aabe967e51 891 {0x00,0x00,0x10,0x30,0x30,0x30,0x30,0x3F,
pradipv 8:a6a0c9e280ae 892 0x3F,0x30,0x30,0x30,0x30,0x10,0x00,0x00,
pradipv 8:a6a0c9e280ae 893 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
pradipv 8:a6a0c9e280ae 894 0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, // T
pradipv 6:00aabe967e51 895
pradipv 6:00aabe967e51 896 {0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 897 0x00,0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,
pradipv 8:a6a0c9e280ae 898 0x00,0x00,0xFC,0xFE,0xFE,0x06,0x06,0x06,
pradipv 8:a6a0c9e280ae 899 0x06,0x06,0x06,0xFE,0xFE,0xFC,0x00,0x00 }, // U
pradipv 6:00aabe967e51 900
pradipv 6:00aabe967e51 901 {0x60,0x70,0x1C,0x0F,0x03,0x00,0x00,
pradipv 8:a6a0c9e280ae 902 0x00,0x00,0x00,0x00,0x03,0x0F,0x1C,0x70,0x60,
pradipv 8:a6a0c9e280ae 903 0x00,0x00,0x00,0x00,0xC0,0xF0,0x3C,0x06,
pradipv 8:a6a0c9e280ae 904 0x06,0x3C,0xF0,0xC0,0x00,0x00,0x00,0x00 }, // V
pradipv 6:00aabe967e51 905
pradipv 6:00aabe967e51 906 {0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,0x00,
pradipv 8:a6a0c9e280ae 907 0x00,0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,
pradipv 8:a6a0c9e280ae 908 0x00,0x00,0xFC,0xFE,0xFE,0x1C,0x38,0x70,
pradipv 8:a6a0c9e280ae 909 0x70,0x38,0x1C,0xFE,0xFE,0xFC,0x00,0x00 }, // W
pradipv 6:00aabe967e51 910
pradipv 6:00aabe967e51 911 {0x00,0x00,0x60,0x70,0x78,0x0E,0x07,0x03,
pradipv 8:a6a0c9e280ae 912 0x03,0x07,0x0E,0x78,0x70,0x60,0x00,0x00,
pradipv 8:a6a0c9e280ae 913 0x00,0x00,0x06,0x0E,0x1E,0x70,0xE0,0xC0,
pradipv 8:a6a0c9e280ae 914 0xC0,0xE0,0x70,0x1E,0x0E,0x06,0x00,0x00 }, // X
pradipv 6:00aabe967e51 915
pradipv 6:00aabe967e51 916 {0x00,0x00,0x20,0x30,0x18,0x0C,0x06,0x03,
pradipv 8:a6a0c9e280ae 917 0x03,0x06,0x0C,0x18,0x30,0x20,0x00,0x00,
pradipv 8:a6a0c9e280ae 918 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,
pradipv 8:a6a0c9e280ae 919 0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, // Y
pradipv 3:41bdbc9b3cec 920
pradipv 6:00aabe967e51 921 {0x00,0x00,0x70,0x70,0x60,0x60,0x60,0x61,
pradipv 8:a6a0c9e280ae 922 0x63,0x67,0x6E,0x78,0x70,0x60,0x00,0x00,
pradipv 8:a6a0c9e280ae 923 0x00,0x00,0x06,0x0E,0x3E,0x76,0xE6,0xC6,
pradipv 8:a6a0c9e280ae 924 0x86,0x06,0x06,0x06,0x0E,0x0E,0x00,0x00 }, // Z
pradipv 6:00aabe967e51 925
pradipv 6:00aabe967e51 926 {0x0,0x0,0x0,0x0,0x0,0x0,0x7F,0x7F,
pradipv 8:a6a0c9e280ae 927 0x60,0x60,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 928 0x0,0x0,0x0,0x0,0x0,0x0,0xFE,0xFE,
pradipv 8:a6a0c9e280ae 929 0x6,0x6,0x0,0x0,0x0,0x0,0x0,0x0}, // [
pradipv 6:00aabe967e51 930
pradipv 6:00aabe967e51 931 {0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x3F,
pradipv 8:a6a0c9e280ae 932 0xF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 933 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 934 0xF0,0xFC,0xC,0x0,0x0,0x0,0x0,0x0}, // backslash
pradipv 3:41bdbc9b3cec 935
pradipv 6:00aabe967e51 936 {0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x60,
pradipv 8:a6a0c9e280ae 937 0x7F,0x7F,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 938 0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x6,
pradipv 8:a6a0c9e280ae 939 0xFE,0xFE,0x0,0x0,0x0,0x0,0x0,0x0}, // ]
pradipv 3:41bdbc9b3cec 940
pradipv 6:00aabe967e51 941 {0x0,0x0,0x0,0x0,0x1,0xF,0x3E,0x70,
pradipv 8:a6a0c9e280ae 942 0x70,0x3E,0xF,0x1,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 943 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 944 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // ^
pradipv 6:00aabe967e51 945
pradipv 6:00aabe967e51 946 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 947 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 948 0x6,0x6,0x6,0x6,0x6,0x6,0x6,0x6,
pradipv 8:a6a0c9e280ae 949 0x6,0x6,0x6,0x6,0x6,0x6,0x6,0x6}, // _
pradipv 3:41bdbc9b3cec 950
pradipv 6:00aabe967e51 951 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,
pradipv 8:a6a0c9e280ae 952 0x30,0x10,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 953 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 954 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // `
pradipv 6:00aabe967e51 955
pradipv 6:00aabe967e51 956 {0x0,0x0,0x0,0x04,0x09,0x19,0x19,0x19,
pradipv 8:a6a0c9e280ae 957 0x0F,0x07,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 958 0x0,0x0,0x0,0xE0,0xB0,0x30,0x30,0x20,
pradipv 8:a6a0c9e280ae 959 0xF0,0xF0,0x10,0x0,0x0,0x0,0x0,0x0}, // a
pradipv 6:00aabe967e51 960
pradipv 6:00aabe967e51 961 {0x0,0x0,0xFF,0xFF,0xFC,0x8,0x18,0x18,
pradipv 8:a6a0c9e280ae 962 0x1C,0xF,0x3,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 963 0x0,0x0,0xF0,0xF0,0x60,0x30,0x30,0x30,
pradipv 8:a6a0c9e280ae 964 0x60,0xE0,0x80,0x0,0x0,0x0,0x0,0x0}, // b
pradipv 3:41bdbc9b3cec 965
pradipv 6:00aabe967e51 966 {0x0,0x0,0x07,0x0F,0x0C,0x18,0x18,0x18,
pradipv 8:a6a0c9e280ae 967 0xC,0x4,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 968 0x0,0x0,0xC0,0xE0,0x60,0x30,0x30,0x30,
pradipv 8:a6a0c9e280ae 969 0x60,0x40,0x0,0x0,0x0,0x0,0x0,0x0}, // c
pradipv 6:00aabe967e51 970
pradipv 6:00aabe967e51 971 {0x0,0x0,0x03,0x07,0x0C,0x18,0x18,0x18,
pradipv 8:a6a0c9e280ae 972 0xFF,0xFF,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 973 0x0,0x0,0xC0,0xE0,0x60,0x30,0x30,0x30,
pradipv 8:a6a0c9e280ae 974 0xF8,0xF8,0x0,0x0,0x0,0x0,0x0,0x0}, // d
pradipv 3:41bdbc9b3cec 975
pradipv 6:00aabe967e51 976 {0x0,0x0,0x03,0x0F,0x0D,0x19,0x19,0x19,
pradipv 8:a6a0c9e280ae 977 0x19,0x0F,0x06,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 978 0x0,0x0,0xC0,0xE0,0x30,0x30,0x10,0x30,
pradipv 8:a6a0c9e280ae 979 0x30,0x60,0x40,0x0,0x0,0x0,0x0,0x0}, // e
pradipv 6:00aabe967e51 980
pradipv 6:00aabe967e51 981 {0x0,0x0,0x0,0x0,0x00,0x03,0x03,0x3F,
pradipv 8:a6a0c9e280ae 982 0x7F,0x43,0x03,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 983 0x0,0x0,0x0,0x0,0x0,0x0,0x00,0xFE,
pradipv 8:a6a0c9e280ae 984 0xFE,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // f
pradipv 3:41bdbc9b3cec 985
pradipv 6:00aabe967e51 986 {0x0,0x0,0x01,0x07,0x0E,0x08,0x08,0x0C,
pradipv 8:a6a0c9e280ae 987 0x0F,0x1F,0x00,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 988 0x0,0x0,0x84,0xE2,0x62,0x23,0x23,0x63,
pradipv 8:a6a0c9e280ae 989 0xFE,0xFC,0x0,0x0,0x0,0x0,0x0,0x0}, // g
pradipv 6:00aabe967e51 990
pradipv 6:00aabe967e51 991 {0x0,0x0,0x00,0x3F,0x3F,0x03,0x02,0x03,
pradipv 8:a6a0c9e280ae 992 0x03,0x01,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 993 0x0,0x0,0x0,0xFC,0xFC,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 994 0xFC,0xFC,0x0,0x0,0x0,0x0,0x0,0x0}, // h
pradipv 6:00aabe967e51 995
pradipv 6:00aabe967e51 996 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x06F,
pradipv 8:a6a0c9e280ae 997 0x6F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 998 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF0,
pradipv 8:a6a0c9e280ae 999 0xF0,0x00,0x0,0x0,0x0,0x0,0x0,0x0}, // i
pradipv 3:41bdbc9b3cec 1000
pradipv 6:00aabe967e51 1001 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xDF,
pradipv 8:a6a0c9e280ae 1002 0xDF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1003 0x0,0x0,0x0,0x0,0x0,0x08,0x0C,0xFC,
pradipv 8:a6a0c9e280ae 1004 0xF8,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // j
pradipv 3:41bdbc9b3cec 1005
pradipv 6:00aabe967e51 1006 {0x0,0x0,0xFF,0xFF,0x03,0x03,0x07,0x0C,
pradipv 8:a6a0c9e280ae 1007 0x18,0x30,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1008 0x0,0x0,0xF0,0xF0,0x80,0x0,0x80,0xE0,
pradipv 8:a6a0c9e280ae 1009 0x30,0x10,0x0,0x0,0x0,0x0,0x0,0x0}, // k
pradipv 6:00aabe967e51 1010
pradipv 6:00aabe967e51 1011 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3F,
pradipv 8:a6a0c9e280ae 1012 0x3F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1013 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFC,
pradipv 8:a6a0c9e280ae 1014 0xFC,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // l
pradipv 3:41bdbc9b3cec 1015
pradipv 6:00aabe967e51 1016 {0x0,0x0,0x08,0x1F,0x1F,0x18,0x18,0x18,
pradipv 8:a6a0c9e280ae 1017 0x1F,0x1F,0x18,0x18,0x18,0x1F,0x0F,0x0,
pradipv 8:a6a0c9e280ae 1018 0x0,0x0,0x0,0xF0,0xF0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1019 0xF0,0xF0,0x0,0x0,0x0,0xF0,0xF0,0x0}, // m
pradipv 6:00aabe967e51 1020
pradipv 6:00aabe967e51 1021 {0x0,0x0,0x1F,0x0F,0x0C,0x18,0x18,0x1C,
pradipv 8:a6a0c9e280ae 1022 0x0F,0x07,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1023 0x0,0x0,0xF0,0xF0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1024 0xF0,0xF0,0x0,0x0,0x0,0x0,0x0,0x0}, // n
pradipv 6:00aabe967e51 1025
pradipv 6:00aabe967e51 1026 {0x0,0x0,0x03,0x07,0x0C,0x18,0x18,0x18,
pradipv 8:a6a0c9e280ae 1027 0x0C,0x07,0x03,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1028 0x0,0x0,0x80,0xC0,0x60,0x30,0x30,0x30,
pradipv 8:a6a0c9e280ae 1029 0x60,0xC0,0x80,0x0,0x0,0x0,0x0,0x0}, // o
pradipv 3:41bdbc9b3cec 1030
pradipv 6:00aabe967e51 1031 {0x0,0x0,0x0,0x1F,0x1F,0x0C,0x08,0x08,
pradipv 8:a6a0c9e280ae 1032 0x0C,0x07,0x03,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1033 0x0,0x0,0x0,0xFE,0xFE,0x30,0x10,0x10,
pradipv 8:a6a0c9e280ae 1034 0x30,0xE0,0xC0,0x0,0x0,0x0,0x0,0x0}, // p
pradipv 3:41bdbc9b3cec 1035
pradipv 6:00aabe967e51 1036 {0x0,0x0,0x01,0x07,0x0C,0x08,0x08,0x0C,
pradipv 8:a6a0c9e280ae 1037 0x1F,0x1F,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1038 0x0,0x0,0x80,0xE0,0x30,0x10,0x10,0x30,
pradipv 8:a6a0c9e280ae 1039 0xFE,0xFE,0x0,0x0,0x0,0x0,0x0,0x0}, // q
pradipv 6:00aabe967e51 1040
pradipv 6:00aabe967e51 1041 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1F,
pradipv 8:a6a0c9e280ae 1042 0x1F,0x0C,0x08,0x0C,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1043 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF0,
pradipv 8:a6a0c9e280ae 1044 0xF0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // r
pradipv 3:41bdbc9b3cec 1045
pradipv 6:00aabe967e51 1046 {0x0,0x0,0x0,0x07,0x0F,0x19,0x19,0x0D,
pradipv 8:a6a0c9e280ae 1047 0x04,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1048 0x0,0x0,0x0,0x60,0x30,0x18,0x98,0xB0,
pradipv 8:a6a0c9e280ae 1049 0xE0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // s
pradipv 6:00aabe967e51 1050
pradipv 6:00aabe967e51 1051 {0x0,0x0,0x0,0x0,0x0,0x0,0x03,0x3F,
pradipv 8:a6a0c9e280ae 1052 0x3F,0x03,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1053 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF8,
pradipv 8:a6a0c9e280ae 1054 0xFC,0x0C,0x08,0x0,0x0,0x0,0x0,0x0}, // t
pradipv 6:00aabe967e51 1055
pradipv 6:00aabe967e51 1056 {0x0,0x0,0x1F,0x1F,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1057 0x1F,0x1F,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1058 0x0,0x0,0xC0,0xE0,0x70,0x30,0x30,0x60,
pradipv 8:a6a0c9e280ae 1059 0xF0,0xF0,0x0,0x0,0x0,0x0,0x0,0x0}, // u
pradipv 3:41bdbc9b3cec 1060
pradipv 6:00aabe967e51 1061 {0x0,0x0,0x0C,0x0F,0x01,0x0,0x0,0x01,
pradipv 8:a6a0c9e280ae 1062 0x0F,0x0C,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1063 0x0,0x0,0x0,0x80,0xE0,0x30,0x30,0xE0,
pradipv 8:a6a0c9e280ae 1064 0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // v
pradipv 3:41bdbc9b3cec 1065
pradipv 6:00aabe967e51 1066 {0x0,0x0,0x18,0x1F,0x0,0x0,0x07,0x0E,
pradipv 6:00aabe967e51 1067 0x07,0x0,0x0,0x1F,0x18,0x0,0x0,0x0,
pradipv 6:00aabe967e51 1068 0x0,0x0,0x0,0xC0,0x60,0x60,0xC0,0x0,
pradipv 6:00aabe967e51 1069 0xC0,0x60,0x60,0xC0,0x0,0x0,0x0,0x0}, // w
pradipv 6:00aabe967e51 1070
pradipv 6:00aabe967e51 1071 {0x0,0x0,0x0,0x0,0x08,0x0C,0x06,0x03,
pradipv 8:a6a0c9e280ae 1072 0x03,0x06,0x0C,0x08,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1073 0x0,0x0,0x0,0x0,0x10,0x30,0x60,0xC0,
pradipv 8:a6a0c9e280ae 1074 0xC0,0x60,0x30,0x10,0x0,0x0,0x0,0x0}, // x
pradipv 3:41bdbc9b3cec 1075
pradipv 6:00aabe967e51 1076 {0x0,0x0,0x08,0x0C,0x06,0x03,0x01,0x01,
pradipv 8:a6a0c9e280ae 1077 0x03,0x06,0x0C,0x08,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1078 0x0,0x0,0x0C,0x18,0x30,0x60,0xC0,0x80,
pradipv 8:a6a0c9e280ae 1079 0x00,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // y
pradipv 6:00aabe967e51 1080
pradipv 6:00aabe967e51 1081 {0x0,0x0,0x08,0x08,0x08,0x09,0x0B,0x0E,
pradipv 8:a6a0c9e280ae 1082 0x0C,0x08,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1083 0x0,0x0,0x30,0x070,0xD0,0x90,0x10,0x10,
pradipv 8:a6a0c9e280ae 1084 0x10,0x10,0x0,0x0,0x0,0x0,0x0,0x0}, // z
pradipv 6:00aabe967e51 1085
pradipv 6:00aabe967e51 1086 {0x0,0x0,0x0,0x0,0x3,0x3,0x7F,0xFC,
pradipv 8:a6a0c9e280ae 1087 0xC0,0xC0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1088 0x0,0x0,0x0,0x0,0x0,0x0,0xFC,0xFE,
pradipv 8:a6a0c9e280ae 1089 0x6,0x6,0x0,0x0,0x0,0x0,0x0,0x0}, // {
pradipv 3:41bdbc9b3cec 1090
pradipv 6:00aabe967e51 1091 {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFF,
pradipv 8:a6a0c9e280ae 1092 0xFF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1093 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xFF,
pradipv 8:a6a0c9e280ae 1094 0xFF,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // |
pradipv 3:41bdbc9b3cec 1095
pradipv 6:00aabe967e51 1096 {0x0,0x0,0x0,0x0,0x0,0x0,0xC0,0xC0,
pradipv 8:a6a0c9e280ae 1097 0xFC,0x7F,0x3,0x3,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1098 0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x6,
pradipv 8:a6a0c9e280ae 1099 0xFE,0xFC,0x0,0x0,0x0,0x0,0x0,0x0}, // }
pradipv 6:00aabe967e51 1100
pradipv 6:00aabe967e51 1101 {0x0,0x0,0x0,0x0,0x18,0x30,0x30,0x30,
pradipv 8:a6a0c9e280ae 1102 0x38,0x18,0x18,0x18,0x30,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1103 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
pradipv 8:a6a0c9e280ae 1104 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}, // ~
pradipv 6:00aabe967e51 1105 };
pradipv 6:00aabe967e51 1106
pradipv 3:41bdbc9b3cec 1107
pradipv 3:41bdbc9b3cec 1108
pradipv 3:41bdbc9b3cec 1109 static uint8_t display_buff[1024];
pradipv 3:41bdbc9b3cec 1110 static uint8_t display_buff_16x16[32];
pradipv 3:41bdbc9b3cec 1111 static uint16_t buff_end =0;
pradipv 3:41bdbc9b3cec 1112 static uint8_t disp_buff1[512];
pradipv 3:41bdbc9b3cec 1113 static uint8_t disp_buff2[512];
pradipv 3:41bdbc9b3cec 1114 static uint8_t temp_buff1[512];
pradipv 3:41bdbc9b3cec 1115 static uint8_t temp_buff2[512];
j3 0:6b0161c3e440 1116 static uint8_t temp_buff[256];
j3 0:6b0161c3e440 1117
j3 2:9fdd01cf0f88 1118 static const uint8_t DISPLAY_BUFF_START = 0;
j3 2:9fdd01cf0f88 1119 static const uint8_t DISPLAY_BUFF_END = 31;
j3 0:6b0161c3e440 1120 static const uint32_t MAX_STRING_LENGTH = 32;
j3 0:6b0161c3e440 1121 static char str[MAX_STRING_LENGTH];
j3 0:6b0161c3e440 1122
j3 0:6b0161c3e440 1123
j3 0:6b0161c3e440 1124 //*********************************************************************
j3 0:6b0161c3e440 1125 void get_5x7_character(char c, uint8_t *char_buff)
j3 0:6b0161c3e440 1126 {
j3 0:6b0161c3e440 1127 uint16_t temp_data;
j3 0:6b0161c3e440 1128 uint8_t idx, idy;
j3 0:6b0161c3e440 1129
j3 0:6b0161c3e440 1130 for(idx = 0; idx < 6; idx++)
j3 0:6b0161c3e440 1131 {
j3 0:6b0161c3e440 1132 //get byte of char from map and flip it, bit 0 becomes bit 7 and so on
j3 0:6b0161c3e440 1133 temp_data = (0x00FF & (font_5x7[c - 0x20][idx]));
j3 0:6b0161c3e440 1134 for(idy = 0; idy < 8; idy++)
j3 0:6b0161c3e440 1135 {
j3 0:6b0161c3e440 1136 temp_data = (temp_data | (((temp_data & (1 << idy)) << (15 - (idy*2)))));
j3 0:6b0161c3e440 1137 }
j3 0:6b0161c3e440 1138 temp_data = ((temp_data >> 8) & 0x00FF);
j3 0:6b0161c3e440 1139
j3 0:6b0161c3e440 1140 char_buff[idx] = ((uint8_t) temp_data);
j3 0:6b0161c3e440 1141 }
j3 0:6b0161c3e440 1142 }
j3 0:6b0161c3e440 1143
j3 0:6b0161c3e440 1144 //*********************************************************************
j3 2:9fdd01cf0f88 1145 void print_char(Max7219 *p_display, uint8_t position99, char c)
j3 0:6b0161c3e440 1146 {
j3 0:6b0161c3e440 1147 uint8_t idx;
j3 2:9fdd01cf0f88 1148 uint8_t char_buff[6];
j3 2:9fdd01cf0f88 1149 uint8_t device;
j3 0:6b0161c3e440 1150 uint8_t wrap_device;
j3 0:6b0161c3e440 1151 uint8_t wrap_idx;
j3 2:9fdd01cf0f88 1152 uint8_t buff_start = position99;
j3 0:6b0161c3e440 1153
j3 0:6b0161c3e440 1154 get_5x7_character(c, char_buff);
j3 2:9fdd01cf0f88 1155
j3 2:9fdd01cf0f88 1156 if(position99 < 33)
j3 0:6b0161c3e440 1157 {
pradipv 8:a6a0c9e280ae 1158 //get device and device_position
pradipv 8:a6a0c9e280ae 1159 if(position99 > 8)
pradipv 8:a6a0c9e280ae 1160 {
pradipv 8:a6a0c9e280ae 1161 if(position99%8)
pradipv 8:a6a0c9e280ae 1162 {
pradipv 8:a6a0c9e280ae 1163 device = ((position99/8) + 1);
pradipv 8:a6a0c9e280ae 1164 position99 = position99%8;
pradipv 8:a6a0c9e280ae 1165 }
pradipv 8:a6a0c9e280ae 1166 else
pradipv 8:a6a0c9e280ae 1167 {
pradipv 8:a6a0c9e280ae 1168 device = position99/8;
pradipv 8:a6a0c9e280ae 1169 position99 = 8;
pradipv 8:a6a0c9e280ae 1170 }
pradipv 8:a6a0c9e280ae 1171 }
pradipv 8:a6a0c9e280ae 1172 else
pradipv 8:a6a0c9e280ae 1173 {
pradipv 8:a6a0c9e280ae 1174 device = 1;
pradipv 8:a6a0c9e280ae 1175 }
pradipv 8:a6a0c9e280ae 1176 //check for dispaly wrap around
pradipv 8:a6a0c9e280ae 1177 //(moving to next 8x8 grid cause character doesn't fit on current one)
pradipv 8:a6a0c9e280ae 1178 if(position99 > 3)
pradipv 8:a6a0c9e280ae 1179 {
pradipv 8:a6a0c9e280ae 1180 wrap_idx = (9 - position99);
pradipv 8:a6a0c9e280ae 1181 if(device < 4)
pradipv 8:a6a0c9e280ae 1182 {
pradipv 8:a6a0c9e280ae 1183 wrap_device = (device + 1);
pradipv 8:a6a0c9e280ae 1184 }
pradipv 8:a6a0c9e280ae 1185 else
pradipv 8:a6a0c9e280ae 1186 {
pradipv 8:a6a0c9e280ae 1187 wrap_device = 1;
pradipv 8:a6a0c9e280ae 1188 }
pradipv 8:a6a0c9e280ae 1189 }
pradipv 8:a6a0c9e280ae 1190 else
pradipv 8:a6a0c9e280ae 1191 {
pradipv 8:a6a0c9e280ae 1192 wrap_idx = 6; //make bigger than idx, not used
pradipv 8:a6a0c9e280ae 1193 wrap_device = 0; //not used
pradipv 8:a6a0c9e280ae 1194 }
pradipv 8:a6a0c9e280ae 1195 //print character to position
pradipv 8:a6a0c9e280ae 1196 for(idx = 0; idx < 6; idx++)
pradipv 8:a6a0c9e280ae 1197 {
pradipv 8:a6a0c9e280ae 1198 //check for wrap
pradipv 8:a6a0c9e280ae 1199 if((idx >= wrap_idx) && (device != 4))
pradipv 8:a6a0c9e280ae 1200 {
pradipv 8:a6a0c9e280ae 1201 p_display->write_digit(wrap_device, ((idx - wrap_idx) + 1), char_buff[idx]);
pradipv 8:a6a0c9e280ae 1202 }
pradipv 8:a6a0c9e280ae 1203 else
pradipv 8:a6a0c9e280ae 1204 {
pradipv 8:a6a0c9e280ae 1205 p_display->write_digit(device, (position99 + idx), char_buff[idx]);
pradipv 8:a6a0c9e280ae 1206 }
pradipv 8:a6a0c9e280ae 1207 buff_end = ((buff_start - 1) + idx);
pradipv 8:a6a0c9e280ae 1208 display_buff[buff_end] = char_buff[idx];
pradipv 8:a6a0c9e280ae 1209 }
j3 0:6b0161c3e440 1210 }
j3 0:6b0161c3e440 1211 else
j3 0:6b0161c3e440 1212 {
pradipv 8:a6a0c9e280ae 1213 for(idx = 0; idx < 6; idx++)
pradipv 8:a6a0c9e280ae 1214 {
pradipv 8:a6a0c9e280ae 1215 buff_end = ((buff_start - 1) + idx);
pradipv 8:a6a0c9e280ae 1216 display_buff[buff_end] = char_buff[idx];
pradipv 8:a6a0c9e280ae 1217 }
j3 0:6b0161c3e440 1218 }
j3 0:6b0161c3e440 1219 }
j3 0:6b0161c3e440 1220
j3 0:6b0161c3e440 1221 //*********************************************************************
j3 0:6b0161c3e440 1222 void print_string(Max7219 *p_display, uint8_t position, const char *s)
j3 0:6b0161c3e440 1223 {
j3 0:6b0161c3e440 1224 uint8_t idx = 0;
j3 0:6b0161c3e440 1225
j3 0:6b0161c3e440 1226 while(s[idx] != '\0')
j3 0:6b0161c3e440 1227 {
j3 0:6b0161c3e440 1228 print_char(p_display, (position + (idx*6)), s[idx]);
j3 0:6b0161c3e440 1229 idx++;
j3 0:6b0161c3e440 1230 }
j3 0:6b0161c3e440 1231 }
j3 0:6b0161c3e440 1232
j3 0:6b0161c3e440 1233 //*********************************************************************
j3 2:9fdd01cf0f88 1234 void shift_display_right(Max7219 *p_display, uint8_t count, uint8_t ms_delay)
j3 0:6b0161c3e440 1235 {
j3 0:6b0161c3e440 1236 uint16_t idx, idy;
j3 2:9fdd01cf0f88 1237 uint8_t position99;
j3 0:6b0161c3e440 1238
j3 0:6b0161c3e440 1239 for(idx = 0; idx < count; idx++)
j3 0:6b0161c3e440 1240 {
j3 2:9fdd01cf0f88 1241 for(idy = 0; idy < (buff_end + 1); idy++)
j3 0:6b0161c3e440 1242 {
j3 2:9fdd01cf0f88 1243 if(idy == buff_end)
j3 0:6b0161c3e440 1244 {
j3 0:6b0161c3e440 1245 temp_buff[0] = display_buff[idy];
j3 0:6b0161c3e440 1246 }
j3 0:6b0161c3e440 1247 else
j3 0:6b0161c3e440 1248 {
j3 0:6b0161c3e440 1249 temp_buff[idy + 1] = display_buff[idy];
j3 0:6b0161c3e440 1250 }
j3 0:6b0161c3e440 1251 }
j3 2:9fdd01cf0f88 1252 for(idy = 0; idy < (buff_end + 1); idy++)
j3 0:6b0161c3e440 1253 {
j3 0:6b0161c3e440 1254 //save shifted display in buffer
j3 0:6b0161c3e440 1255 display_buff[idy] = temp_buff[idy];
j3 2:9fdd01cf0f88 1256 if(idy <= DISPLAY_BUFF_END)
j3 0:6b0161c3e440 1257 {
j3 2:9fdd01cf0f88 1258 position99 = ((idy - DISPLAY_BUFF_START) + 1);
j3 2:9fdd01cf0f88 1259 if(position99 > 24)
j3 0:6b0161c3e440 1260 {
j3 2:9fdd01cf0f88 1261 if(position99 % 8)
j3 0:6b0161c3e440 1262 {
j3 2:9fdd01cf0f88 1263 position99 = position99 % 8;
j3 0:6b0161c3e440 1264 }
j3 0:6b0161c3e440 1265 else
j3 0:6b0161c3e440 1266 {
j3 2:9fdd01cf0f88 1267 position99 = 8;
j3 0:6b0161c3e440 1268 }
j3 2:9fdd01cf0f88 1269 p_display->write_digit(4, position99, display_buff[idy]);
j3 0:6b0161c3e440 1270 }
j3 2:9fdd01cf0f88 1271 else if(position99 > 16)
j3 0:6b0161c3e440 1272 {
j3 2:9fdd01cf0f88 1273 if(position99 % 8)
j3 0:6b0161c3e440 1274 {
j3 2:9fdd01cf0f88 1275 position99 = position99 % 8;
j3 0:6b0161c3e440 1276 }
j3 0:6b0161c3e440 1277 else
j3 0:6b0161c3e440 1278 {
j3 2:9fdd01cf0f88 1279 position99 = 8;
j3 0:6b0161c3e440 1280 }
j3 2:9fdd01cf0f88 1281 p_display->write_digit(3, position99, display_buff[idy]);
j3 0:6b0161c3e440 1282 }
j3 2:9fdd01cf0f88 1283 else if(position99 > 8)
j3 0:6b0161c3e440 1284 {
j3 2:9fdd01cf0f88 1285 if(position99 % 8)
j3 0:6b0161c3e440 1286 {
j3 2:9fdd01cf0f88 1287 position99 = position99 % 8;
j3 0:6b0161c3e440 1288 }
j3 0:6b0161c3e440 1289 else
j3 0:6b0161c3e440 1290 {
pradipv 8:a6a0c9e280ae 1291 position99 = 8;
j3 0:6b0161c3e440 1292 }
j3 2:9fdd01cf0f88 1293 p_display->write_digit(2, position99, display_buff[idy]);
j3 0:6b0161c3e440 1294 }
j3 0:6b0161c3e440 1295 else
j3 0:6b0161c3e440 1296 {
j3 2:9fdd01cf0f88 1297 p_display->write_digit(1, position99, display_buff[idy]);
j3 0:6b0161c3e440 1298 }
j3 0:6b0161c3e440 1299 }
j3 0:6b0161c3e440 1300 }
j3 2:9fdd01cf0f88 1301 wait_ms(ms_delay);
j3 0:6b0161c3e440 1302 }
j3 0:6b0161c3e440 1303 }
j3 0:6b0161c3e440 1304
j3 2:9fdd01cf0f88 1305 //*********************************************************************
j3 2:9fdd01cf0f88 1306 void shift_display_left(Max7219 *p_display, uint8_t count, uint8_t ms_delay)
j3 0:6b0161c3e440 1307 {
j3 0:6b0161c3e440 1308 uint16_t idx, idy;
j3 2:9fdd01cf0f88 1309 uint8_t position99;
j3 0:6b0161c3e440 1310
j3 0:6b0161c3e440 1311 for(idx = 0; idx < count; idx++)
j3 0:6b0161c3e440 1312 {
j3 2:9fdd01cf0f88 1313 for(idy = 0; idy < (buff_end + 1); idy++)
j3 0:6b0161c3e440 1314 {
j3 0:6b0161c3e440 1315 if(idy == 0)
j3 0:6b0161c3e440 1316 {
j3 2:9fdd01cf0f88 1317 temp_buff[buff_end] = display_buff[idy];
j3 0:6b0161c3e440 1318 }
j3 0:6b0161c3e440 1319 else
j3 0:6b0161c3e440 1320 {
j3 0:6b0161c3e440 1321 temp_buff[idy - 1] = display_buff[idy];
j3 0:6b0161c3e440 1322 }
j3 0:6b0161c3e440 1323 }
j3 2:9fdd01cf0f88 1324 for(idy = 0; idy < (buff_end + 1); idy++)
j3 0:6b0161c3e440 1325 {
j3 0:6b0161c3e440 1326 //save shifted display in buffer
j3 0:6b0161c3e440 1327 display_buff[idy] = temp_buff[idy];
j3 2:9fdd01cf0f88 1328 if(idy <= DISPLAY_BUFF_END)
j3 0:6b0161c3e440 1329 {
j3 2:9fdd01cf0f88 1330 position99 = ((idy - DISPLAY_BUFF_START) + 1);
j3 2:9fdd01cf0f88 1331 if(position99 > 24)
j3 0:6b0161c3e440 1332 {
j3 2:9fdd01cf0f88 1333 if(position99 % 8)
j3 0:6b0161c3e440 1334 {
j3 2:9fdd01cf0f88 1335 position99 = position99 % 8;
j3 0:6b0161c3e440 1336 }
j3 0:6b0161c3e440 1337 else
j3 0:6b0161c3e440 1338 {
j3 2:9fdd01cf0f88 1339 position99 = 8;
j3 0:6b0161c3e440 1340 }
j3 2:9fdd01cf0f88 1341 p_display->write_digit(4, position99, display_buff[idy]);
j3 0:6b0161c3e440 1342 }
j3 2:9fdd01cf0f88 1343 else if(position99 > 16)
j3 0:6b0161c3e440 1344 {
j3 2:9fdd01cf0f88 1345 if(position99 % 8)
j3 0:6b0161c3e440 1346 {
j3 2:9fdd01cf0f88 1347 position99 = position99 % 8;
j3 0:6b0161c3e440 1348 }
j3 0:6b0161c3e440 1349 else
j3 0:6b0161c3e440 1350 {
j3 2:9fdd01cf0f88 1351 position99 = 8;
j3 0:6b0161c3e440 1352 }
j3 2:9fdd01cf0f88 1353 p_display->write_digit(3, position99, display_buff[idy]);
j3 0:6b0161c3e440 1354 }
j3 2:9fdd01cf0f88 1355 else if(position99 > 8)
j3 0:6b0161c3e440 1356 {
j3 2:9fdd01cf0f88 1357 if(position99 % 8)
j3 0:6b0161c3e440 1358 {
j3 2:9fdd01cf0f88 1359 position99 = position99 % 8;
j3 0:6b0161c3e440 1360 }
j3 0:6b0161c3e440 1361 else
j3 0:6b0161c3e440 1362 {
pradipv 8:a6a0c9e280ae 1363 position99 = 8;
j3 0:6b0161c3e440 1364 }
j3 2:9fdd01cf0f88 1365 p_display->write_digit(2, position99, display_buff[idy]);
j3 0:6b0161c3e440 1366 }
j3 0:6b0161c3e440 1367 else
j3 0:6b0161c3e440 1368 {
j3 2:9fdd01cf0f88 1369 p_display->write_digit(1, position99, display_buff[idy]);
j3 0:6b0161c3e440 1370 }
j3 0:6b0161c3e440 1371 }
j3 0:6b0161c3e440 1372 }
j3 2:9fdd01cf0f88 1373 wait_ms(ms_delay);
j3 0:6b0161c3e440 1374 }
j3 0:6b0161c3e440 1375 }
j3 0:6b0161c3e440 1376
j3 0:6b0161c3e440 1377
j3 0:6b0161c3e440 1378 //*********************************************************************
j3 0:6b0161c3e440 1379 void quad_all_on(Max7219 *p_display, uint8_t quad)
j3 0:6b0161c3e440 1380 {
j3 0:6b0161c3e440 1381 if(quad > 1)
j3 0:6b0161c3e440 1382 {
j3 0:6b0161c3e440 1383 for(uint8_t idx = 0; idx < 8; idx++)
j3 0:6b0161c3e440 1384 {
j3 0:6b0161c3e440 1385 display_buff[((quad - 1)*8) + DISPLAY_BUFF_START + idx] = 0xFF;
j3 0:6b0161c3e440 1386 }
j3 0:6b0161c3e440 1387 }
j3 0:6b0161c3e440 1388 else
j3 0:6b0161c3e440 1389 {
j3 0:6b0161c3e440 1390 for(uint8_t idx = 0; idx < 8; idx++)
j3 0:6b0161c3e440 1391 {
j3 0:6b0161c3e440 1392 display_buff[idx + DISPLAY_BUFF_START] = 0xFF;
j3 0:6b0161c3e440 1393 }
j3 0:6b0161c3e440 1394 }
j3 2:9fdd01cf0f88 1395 if(buff_end < (quad * 8))
j3 2:9fdd01cf0f88 1396 {
pradipv 8:a6a0c9e280ae 1397 buff_end = (quad * 8);
j3 2:9fdd01cf0f88 1398 }
j3 0:6b0161c3e440 1399 p_display->device_all_on(quad);
j3 0:6b0161c3e440 1400 }
j3 0:6b0161c3e440 1401
j3 0:6b0161c3e440 1402 //*********************************************************************
j3 0:6b0161c3e440 1403 void quad_all_off(Max7219 *p_display, uint8_t quad)
j3 0:6b0161c3e440 1404 {
j3 0:6b0161c3e440 1405 if(quad > 1)
j3 0:6b0161c3e440 1406 {
j3 0:6b0161c3e440 1407 for(uint8_t idx = 0; idx < 8; idx++)
j3 0:6b0161c3e440 1408 {
j3 0:6b0161c3e440 1409 display_buff[((quad - 1)*8) + DISPLAY_BUFF_START + idx] = 0;
j3 0:6b0161c3e440 1410 }
j3 0:6b0161c3e440 1411 }
j3 0:6b0161c3e440 1412 else
j3 0:6b0161c3e440 1413 {
j3 0:6b0161c3e440 1414 for(uint8_t idx = 0; idx < 8; idx++)
j3 0:6b0161c3e440 1415 {
j3 0:6b0161c3e440 1416 display_buff[idx + DISPLAY_BUFF_START] = 0;
j3 0:6b0161c3e440 1417 }
j3 0:6b0161c3e440 1418 }
j3 2:9fdd01cf0f88 1419
j3 2:9fdd01cf0f88 1420 //is buff_end in the quad?
j3 2:9fdd01cf0f88 1421 if((((quad - 1) * 8) < buff_end) && ((quad * 8) > buff_end))
j3 2:9fdd01cf0f88 1422 {
pradipv 8:a6a0c9e280ae 1423 buff_end = ((quad - 1) * 8);
j3 2:9fdd01cf0f88 1424 }
j3 2:9fdd01cf0f88 1425 //leave it alone otherwise
j3 0:6b0161c3e440 1426 p_display->device_all_off(quad);
j3 0:6b0161c3e440 1427 }
j3 0:6b0161c3e440 1428
j3 0:6b0161c3e440 1429 //*********************************************************************
j3 0:6b0161c3e440 1430 void all_on(Max7219 *p_display)
j3 0:6b0161c3e440 1431 {
j3 2:9fdd01cf0f88 1432 for(uint16_t idx = 0; idx < 32; idx++)
j3 0:6b0161c3e440 1433 {
j3 0:6b0161c3e440 1434 display_buff[idx] = 0xFF;
j3 0:6b0161c3e440 1435 }
j3 2:9fdd01cf0f88 1436 if(buff_end < 32)
j3 2:9fdd01cf0f88 1437 {
pradipv 8:a6a0c9e280ae 1438 buff_end = 32;
j3 2:9fdd01cf0f88 1439 }
j3 0:6b0161c3e440 1440 p_display->display_all_on();
j3 0:6b0161c3e440 1441 }
j3 0:6b0161c3e440 1442
j3 0:6b0161c3e440 1443 //*********************************************************************
j3 0:6b0161c3e440 1444 void all_off(Max7219 *p_display)
j3 0:6b0161c3e440 1445 {
j3 2:9fdd01cf0f88 1446 for(uint16_t idx = 0; idx < 32; idx++)
j3 0:6b0161c3e440 1447 {
j3 0:6b0161c3e440 1448 display_buff[idx] = 0;
j3 0:6b0161c3e440 1449 }
j3 2:9fdd01cf0f88 1450 if(buff_end < 32)
j3 2:9fdd01cf0f88 1451 {
pradipv 8:a6a0c9e280ae 1452 buff_end = 0;
j3 2:9fdd01cf0f88 1453 }
j3 0:6b0161c3e440 1454 p_display->display_all_off();
j3 0:6b0161c3e440 1455 }
j3 0:6b0161c3e440 1456
j3 0:6b0161c3e440 1457 //*********************************************************************
j3 0:6b0161c3e440 1458 void demo(Max7219 *display, max7219_configuration_t display_config, bool endless_loop)
j3 0:6b0161c3e440 1459 {
j3 0:6b0161c3e440 1460 uint8_t position = 1;
j3 0:6b0161c3e440 1461 uint8_t idx = 0;
j3 0:6b0161c3e440 1462 do
j3 0:6b0161c3e440 1463 {
j3 0:6b0161c3e440 1464 all_off(display);
j3 0:6b0161c3e440 1465 if(position > 25)
j3 0:6b0161c3e440 1466 {
j3 0:6b0161c3e440 1467 position = 1;
j3 0:6b0161c3e440 1468 }
j3 0:6b0161c3e440 1469 printf("\nPosition = %d\n", position);
j3 0:6b0161c3e440 1470 for(idx = 0x20; idx < 0x7F; idx++)
j3 0:6b0161c3e440 1471 {
j3 0:6b0161c3e440 1472 print_char(display, position, (char) idx);
j3 0:6b0161c3e440 1473 wait(0.25);
j3 0:6b0161c3e440 1474 }
j3 0:6b0161c3e440 1475 position = (position + 8);
j3 0:6b0161c3e440 1476 all_on(display);
j3 0:6b0161c3e440 1477 for(idx = 0; idx < 16; idx++)
j3 0:6b0161c3e440 1478 {
j3 0:6b0161c3e440 1479 display_config.intensity = 15 - idx;
j3 0:6b0161c3e440 1480 display->init_display(display_config);
j3 0:6b0161c3e440 1481 wait_ms(50);
j3 0:6b0161c3e440 1482 }
j3 0:6b0161c3e440 1483 for(idx = 0; idx < 16; idx++)
j3 0:6b0161c3e440 1484 {
j3 0:6b0161c3e440 1485 display_config.intensity = idx;
j3 0:6b0161c3e440 1486 display->init_display(display_config);
j3 0:6b0161c3e440 1487 wait_ms(100);
j3 0:6b0161c3e440 1488 }
j3 0:6b0161c3e440 1489 wait_ms(100);
j3 0:6b0161c3e440 1490 all_off(display);
j3 0:6b0161c3e440 1491 wait_ms(100);
j3 0:6b0161c3e440 1492
j3 0:6b0161c3e440 1493 quad_all_on(display, 1);
j3 0:6b0161c3e440 1494 wait_ms(500);
j3 0:6b0161c3e440 1495 shift_display_right(display, 32, 100);
j3 0:6b0161c3e440 1496 shift_display_left(display, 32, 100);
j3 0:6b0161c3e440 1497 all_off(display);
j3 0:6b0161c3e440 1498 wait_ms(100);
j3 0:6b0161c3e440 1499
j3 0:6b0161c3e440 1500 print_string(display, 1, "Maxim");
j3 0:6b0161c3e440 1501 wait_ms(100);
j3 0:6b0161c3e440 1502 shift_display_right(display, 32, 100);
j3 0:6b0161c3e440 1503 shift_display_left(display, 32, 100);
j3 0:6b0161c3e440 1504 wait_ms(100);
j3 0:6b0161c3e440 1505 }
j3 0:6b0161c3e440 1506 while(endless_loop);
j3 0:6b0161c3e440 1507 }
j3 0:6b0161c3e440 1508
j3 0:6b0161c3e440 1509 //*********************************************************************
j3 0:6b0161c3e440 1510 void endless_scroll_display(Max7219 *display, uint32_t scroll_right)
j3 0:6b0161c3e440 1511 {
j3 0:6b0161c3e440 1512 if(scroll_right)
j3 0:6b0161c3e440 1513 {
j3 0:6b0161c3e440 1514 printf("\nScrolling Right\n");
j3 0:6b0161c3e440 1515 while(1)
j3 0:6b0161c3e440 1516 {
j3 0:6b0161c3e440 1517 shift_display_right(display, 1, 100);
j3 0:6b0161c3e440 1518 }
j3 0:6b0161c3e440 1519 }
j3 0:6b0161c3e440 1520 else
j3 0:6b0161c3e440 1521 {
j3 0:6b0161c3e440 1522 printf("\nScrolling Left\n");
j3 0:6b0161c3e440 1523 while(1)
j3 0:6b0161c3e440 1524 {
j3 0:6b0161c3e440 1525 shift_display_left(display, 1, 100);
j3 0:6b0161c3e440 1526 }
j3 0:6b0161c3e440 1527 }
j3 0:6b0161c3e440 1528 }
j3 0:6b0161c3e440 1529
pradipv 3:41bdbc9b3cec 1530 /********************************************************************/
pradipv 8:a6a0c9e280ae 1531 void get_16x16_character(char c, uint8_t *char_buff, uint8_t font_type)
pradipv 3:41bdbc9b3cec 1532 {
pradipv 3:41bdbc9b3cec 1533 uint8_t idx;
pradipv 6:00aabe967e51 1534
pradipv 6:00aabe967e51 1535 switch(font_type)
pradipv 3:41bdbc9b3cec 1536 {
pradipv 8:a6a0c9e280ae 1537 case 1: // Use 16x16 Aerial bold font
pradipv 8:a6a0c9e280ae 1538 for(idx = 0; idx < 32; idx++)
pradipv 8:a6a0c9e280ae 1539 {
pradipv 8:a6a0c9e280ae 1540 //Get byte of char from map & store in buffer
pradipv 8:a6a0c9e280ae 1541 char_buff[idx] = Aerial_bold_font_16x16[c - 0x20][idx];
pradipv 8:a6a0c9e280ae 1542 }
pradipv 8:a6a0c9e280ae 1543 break;
pradipv 8:a6a0c9e280ae 1544 case 2: // Use For 16x16 manual font
pradipv 8:a6a0c9e280ae 1545 for(idx = 0; idx < 32; idx++)
pradipv 8:a6a0c9e280ae 1546 {
pradipv 8:a6a0c9e280ae 1547 //Get byte of char from map & store in buffer
pradipv 8:a6a0c9e280ae 1548 char_buff[idx] = Manual_font_16x16[c - 0x20][idx];
pradipv 8:a6a0c9e280ae 1549 }
pradipv 8:a6a0c9e280ae 1550 break;
pradipv 8:a6a0c9e280ae 1551 default : //Use 16x16 Aerial bold font
pradipv 8:a6a0c9e280ae 1552 for(idx = 0; idx < 32; idx++)
pradipv 8:a6a0c9e280ae 1553 {
pradipv 8:a6a0c9e280ae 1554 //Get byte of char from map & store in buffer
pradipv 8:a6a0c9e280ae 1555 char_buff[idx] = Aerial_bold_font_16x16[c - 0x20][idx];
pradipv 8:a6a0c9e280ae 1556 }
pradipv 8:a6a0c9e280ae 1557 break;
pradipv 8:a6a0c9e280ae 1558 } //end of switch
pradipv 3:41bdbc9b3cec 1559 }
pradipv 3:41bdbc9b3cec 1560
pradipv 8:a6a0c9e280ae 1561 void print_char_16x16(Max7219 *p_display, uint16_t position, char c, uint8_t font_type)
pradipv 3:41bdbc9b3cec 1562 {
pradipv 3:41bdbc9b3cec 1563
pradipv 8:a6a0c9e280ae 1564 uint8_t idx,device;
pradipv 3:41bdbc9b3cec 1565 uint8_t char_buff[32];
pradipv 3:41bdbc9b3cec 1566 uint16_t buff_start = position;
pradipv 3:41bdbc9b3cec 1567
pradipv 6:00aabe967e51 1568 get_16x16_character(c, char_buff,font_type);
pradipv 8:a6a0c9e280ae 1569 //Write bit map data to display device and store it in buffer
pradipv 8:a6a0c9e280ae 1570 for(device = 1; device < 5; device++)
pradipv 3:41bdbc9b3cec 1571 {
pradipv 8:a6a0c9e280ae 1572 for(idx = 0; idx < 8; idx++)
pradipv 3:41bdbc9b3cec 1573 {
pradipv 8:a6a0c9e280ae 1574 p_display->write_digit(device, (idx+1), char_buff[idx + ( device - 1) * 8]);
pradipv 8:a6a0c9e280ae 1575 //Get index for display buffer, keeps image of display for shifting
pradipv 8:a6a0c9e280ae 1576 buff_end = (device - 1) * 8 + idx + buff_start;
pradipv 8:a6a0c9e280ae 1577 //Wrap buffer back around
pradipv 8:a6a0c9e280ae 1578 if(buff_end > 1023)
pradipv 8:a6a0c9e280ae 1579 {
pradipv 8:a6a0c9e280ae 1580 buff_end -= 1023;
pradipv 8:a6a0c9e280ae 1581 }
pradipv 8:a6a0c9e280ae 1582 display_buff[buff_end] = char_buff[idx + ( device - 1) * 8];
pradipv 8:a6a0c9e280ae 1583 }
pradipv 3:41bdbc9b3cec 1584 }
pradipv 3:41bdbc9b3cec 1585 buff_end +=1;
pradipv 8:a6a0c9e280ae 1586 //Arrange single character data in buffers as upper and lower row
pradipv 8:a6a0c9e280ae 1587 for(idx = 0;idx < 16; idx++)
pradipv 8:a6a0c9e280ae 1588 {
pradipv 8:a6a0c9e280ae 1589 disp_buff1[idx] = display_buff[idx];
pradipv 8:a6a0c9e280ae 1590 disp_buff2[idx] = display_buff[idx+16];
pradipv 8:a6a0c9e280ae 1591 }
pradipv 3:41bdbc9b3cec 1592 }
pradipv 8:a6a0c9e280ae 1593
pradipv 6:00aabe967e51 1594 void print_string_16x16(Max7219 *p_display, char *s,uint8_t font_type)
pradipv 3:41bdbc9b3cec 1595 {
pradipv 8:a6a0c9e280ae 1596 uint16_t idx1=0,idy1=0;
pradipv 3:41bdbc9b3cec 1597
pradipv 8:a6a0c9e280ae 1598 while(s[idx1] != '\0')
pradipv 3:41bdbc9b3cec 1599 {
pradipv 8:a6a0c9e280ae 1600 print_char_16x16(p_display, (idx1 * 32), s[idx1], font_type);
pradipv 8:a6a0c9e280ae 1601 idx1++;
pradipv 3:41bdbc9b3cec 1602 wait_ms(200);
pradipv 3:41bdbc9b3cec 1603 }
pradipv 3:41bdbc9b3cec 1604 //Arrange character data in upper and lower row data
pradipv 8:a6a0c9e280ae 1605 for (idy1=0; idy1 < (buff_end/32); idy1++)
pradipv 3:41bdbc9b3cec 1606 {
pradipv 8:a6a0c9e280ae 1607 for(idx1 = 0; idx1 < 16; idx1++)
pradipv 8:a6a0c9e280ae 1608 {
pradipv 8:a6a0c9e280ae 1609 disp_buff1[idx1 + (16 * idy1)] = display_buff[idx1 + (32 * idy1)];
pradipv 8:a6a0c9e280ae 1610 disp_buff2[idx1 + (16 * idy1)] = display_buff[idx1 + 16 + (32 * idy1)];
pradipv 8:a6a0c9e280ae 1611 }
pradipv 3:41bdbc9b3cec 1612 }
pradipv 8:a6a0c9e280ae 1613 // Clear buffer for next iteration
pradipv 8:a6a0c9e280ae 1614 for(idx1 = 0; idx1 < 1024; idx1++)
pradipv 8:a6a0c9e280ae 1615 display_buff[idx1] = 0;
pradipv 3:41bdbc9b3cec 1616 }
pradipv 3:41bdbc9b3cec 1617
pradipv 3:41bdbc9b3cec 1618 //*********************************************************************
pradipv 3:41bdbc9b3cec 1619 void shift_display_right_16x16(Max7219 *p_display, uint8_t count, uint8_t delay)
pradipv 3:41bdbc9b3cec 1620 {
pradipv 8:a6a0c9e280ae 1621 uint16_t idx1, idy1;
pradipv 8:a6a0c9e280ae 1622 uint8_t position,device;
pradipv 8:a6a0c9e280ae 1623
pradipv 8:a6a0c9e280ae 1624 for(idx1 = 0; idx1 < count; idx1++)
pradipv 3:41bdbc9b3cec 1625 {
pradipv 8:a6a0c9e280ae 1626 // Right shift data in display buffer 1 & 2
pradipv 8:a6a0c9e280ae 1627 for(idy1 = 0; idy1 < buff_end/2; idy1++)
pradipv 3:41bdbc9b3cec 1628 {
pradipv 8:a6a0c9e280ae 1629 if(idy1 == ((buff_end/2)-1))
pradipv 8:a6a0c9e280ae 1630 {
pradipv 8:a6a0c9e280ae 1631 temp_buff1[0] = disp_buff1[(buff_end/2) - 1];
pradipv 8:a6a0c9e280ae 1632 temp_buff2[0] = disp_buff2[(buff_end/2) - 1];
pradipv 8:a6a0c9e280ae 1633 }
pradipv 8:a6a0c9e280ae 1634 else
pradipv 8:a6a0c9e280ae 1635 {
pradipv 8:a6a0c9e280ae 1636 temp_buff1[idy1 + 1] = disp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1637 temp_buff2[idy1 + 1] = disp_buff2[idy1];
pradipv 8:a6a0c9e280ae 1638 }
pradipv 8:a6a0c9e280ae 1639 }
pradipv 8:a6a0c9e280ae 1640 // Save shifted data in the display buffer 1 & 2
pradipv 8:a6a0c9e280ae 1641 for(idy1 = 0; idy1 < buff_end/2; idy1++)
pradipv 8:a6a0c9e280ae 1642 {
pradipv 8:a6a0c9e280ae 1643 disp_buff1[idy1] = temp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1644 disp_buff2[idy1] = temp_buff2[idy1];
pradipv 8:a6a0c9e280ae 1645 }
pradipv 8:a6a0c9e280ae 1646 for(idy1 = 0; idy1 < 16; idy1++)
pradipv 3:41bdbc9b3cec 1647 {
pradipv 8:a6a0c9e280ae 1648 display_buff_16x16[idy1] = disp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1649 display_buff_16x16[idy1 + 16] = disp_buff2[idy1];
pradipv 3:41bdbc9b3cec 1650 }
pradipv 3:41bdbc9b3cec 1651 position = 0;
pradipv 8:a6a0c9e280ae 1652 for(device = 1; device < 5; device++)
pradipv 3:41bdbc9b3cec 1653 {
pradipv 8:a6a0c9e280ae 1654 for(idy1 = 0; idy1 < 8; idy1++)
pradipv 8:a6a0c9e280ae 1655 {
pradipv 8:a6a0c9e280ae 1656 p_display->write_digit(device, (idy1 + 1), display_buff_16x16[idy1 + position]);
pradipv 8:a6a0c9e280ae 1657 }
pradipv 8:a6a0c9e280ae 1658 position+= 8;
pradipv 8:a6a0c9e280ae 1659 }
pradipv 8:a6a0c9e280ae 1660 wait_ms(delay);
pradipv 3:41bdbc9b3cec 1661 }
pradipv 3:41bdbc9b3cec 1662 }
pradipv 3:41bdbc9b3cec 1663
pradipv 3:41bdbc9b3cec 1664 //*********************************************************************
pradipv 8:a6a0c9e280ae 1665 void shift_display_left_16x16(Max7219 *p_display, uint8_t count, uint8_t delay)
pradipv 3:41bdbc9b3cec 1666 {
pradipv 8:a6a0c9e280ae 1667 uint16_t idx1,idy1;
pradipv 8:a6a0c9e280ae 1668 uint8_t position,device;
pradipv 8:a6a0c9e280ae 1669
pradipv 8:a6a0c9e280ae 1670 for(idx1 = 0; idx1 < count; idx1++)
pradipv 8:a6a0c9e280ae 1671 {
pradipv 8:a6a0c9e280ae 1672 // Left shift data in display buffer 1 & 2
pradipv 8:a6a0c9e280ae 1673 for(idy1 = 0; idy1 < buff_end/2; idy1++)
pradipv 8:a6a0c9e280ae 1674 {
pradipv 8:a6a0c9e280ae 1675 if(idy1 == 0)
pradipv 8:a6a0c9e280ae 1676 {
pradipv 8:a6a0c9e280ae 1677 temp_buff1[(buff_end/2) - 1] = disp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1678 temp_buff2[(buff_end/2) - 1] = disp_buff2[idy1];
pradipv 8:a6a0c9e280ae 1679 }
pradipv 8:a6a0c9e280ae 1680 else
pradipv 8:a6a0c9e280ae 1681 {
pradipv 8:a6a0c9e280ae 1682 temp_buff1[idy1 - 1] = disp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1683 temp_buff2[idy1 - 1] = disp_buff2[idy1];
pradipv 8:a6a0c9e280ae 1684 }
pradipv 8:a6a0c9e280ae 1685 }
pradipv 8:a6a0c9e280ae 1686 // Save shifted data in the display buffer 1 & 2
pradipv 8:a6a0c9e280ae 1687 for(idy1 = 0; idy1 < buff_end/2; idy1++)
pradipv 8:a6a0c9e280ae 1688 {
pradipv 8:a6a0c9e280ae 1689 disp_buff1[idy1] = temp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1690 disp_buff2[idy1] = temp_buff2[idy1];
pradipv 8:a6a0c9e280ae 1691 }
pradipv 8:a6a0c9e280ae 1692 for(idy1 = 0; idy1 < 16; idy1++)
pradipv 8:a6a0c9e280ae 1693 {
pradipv 8:a6a0c9e280ae 1694 display_buff_16x16[idy1] = disp_buff1[idy1];
pradipv 8:a6a0c9e280ae 1695 display_buff_16x16[idy1 + 16] = disp_buff2[idy1];
pradipv 8:a6a0c9e280ae 1696 }
pradipv 8:a6a0c9e280ae 1697 position = 0;
pradipv 8:a6a0c9e280ae 1698 for(device = 1; device < 5; device++)
pradipv 8:a6a0c9e280ae 1699 {
pradipv 8:a6a0c9e280ae 1700 for(idy1 = 0; idy1 < 8; idy1++)
pradipv 8:a6a0c9e280ae 1701 {
pradipv 8:a6a0c9e280ae 1702 p_display->write_digit(device, (idy1+1), display_buff_16x16[idy1 + position]);
pradipv 8:a6a0c9e280ae 1703 }
pradipv 8:a6a0c9e280ae 1704 position+= 8;
pradipv 8:a6a0c9e280ae 1705 }
pradipv 8:a6a0c9e280ae 1706 wait_ms(delay);
pradipv 8:a6a0c9e280ae 1707 }
pradipv 8:a6a0c9e280ae 1708 }
pradipv 8:a6a0c9e280ae 1709
pradipv 8:a6a0c9e280ae 1710 //*********************************************************************
pradipv 8:a6a0c9e280ae 1711 void demo_16x16(Max7219 *display, max7219_configuration_t display_config, uint8_t font_type, bool endless_loop)
pradipv 8:a6a0c9e280ae 1712 {
pradipv 8:a6a0c9e280ae 1713 uint8_t index = 0;
pradipv 3:41bdbc9b3cec 1714
pradipv 3:41bdbc9b3cec 1715 do
pradipv 3:41bdbc9b3cec 1716 {
pradipv 3:41bdbc9b3cec 1717 all_off(display);
pradipv 8:a6a0c9e280ae 1718 for(index = 0x20; index < 0x7F; index++)
pradipv 3:41bdbc9b3cec 1719 {
pradipv 8:a6a0c9e280ae 1720 print_char_16x16(display, 0, (char) index, font_type);
pradipv 3:41bdbc9b3cec 1721 wait(0.25);
pradipv 3:41bdbc9b3cec 1722 }
pradipv 3:41bdbc9b3cec 1723 all_on(display);
pradipv 8:a6a0c9e280ae 1724 for(index = 0; index < 16; index++)
pradipv 3:41bdbc9b3cec 1725 {
pradipv 8:a6a0c9e280ae 1726 display_config.intensity = 15 - index;
pradipv 3:41bdbc9b3cec 1727 display->init_display(display_config);
pradipv 3:41bdbc9b3cec 1728 wait_ms(50);
pradipv 3:41bdbc9b3cec 1729 }
pradipv 8:a6a0c9e280ae 1730 for(index = 0; index < 16; index++)
pradipv 3:41bdbc9b3cec 1731 {
pradipv 8:a6a0c9e280ae 1732 display_config.intensity = index;
pradipv 3:41bdbc9b3cec 1733 display->init_display(display_config);
pradipv 3:41bdbc9b3cec 1734 wait_ms(100);
pradipv 3:41bdbc9b3cec 1735 }
pradipv 3:41bdbc9b3cec 1736 wait_ms(100);
pradipv 3:41bdbc9b3cec 1737 all_off(display);
pradipv 3:41bdbc9b3cec 1738 wait_ms(100);
pradipv 3:41bdbc9b3cec 1739
pradipv 3:41bdbc9b3cec 1740 all_on(display);
pradipv 3:41bdbc9b3cec 1741 wait_ms(500);
pradipv 8:a6a0c9e280ae 1742 // Display character then shift right and left
pradipv 8:a6a0c9e280ae 1743 print_char_16x16(display, 0, 'A', font_type);
pradipv 3:41bdbc9b3cec 1744 wait_ms(500);
pradipv 3:41bdbc9b3cec 1745 shift_display_right_16x16(display, 32, 100);
pradipv 3:41bdbc9b3cec 1746 shift_display_left_16x16(display, 32, 100);
pradipv 3:41bdbc9b3cec 1747 all_off(display);
pradipv 3:41bdbc9b3cec 1748 wait_ms(100);
pradipv 8:a6a0c9e280ae 1749 // Display string then shift right and left
pradipv 8:a6a0c9e280ae 1750 print_string_16x16(display, "Maxim", font_type);
pradipv 3:41bdbc9b3cec 1751 wait_ms(500);
pradipv 3:41bdbc9b3cec 1752 shift_display_right_16x16(display, 32, 100);
pradipv 3:41bdbc9b3cec 1753 shift_display_left_16x16(display, 32, 100);
pradipv 3:41bdbc9b3cec 1754 wait_ms(100);
pradipv 3:41bdbc9b3cec 1755 }
pradipv 3:41bdbc9b3cec 1756 while(endless_loop);
pradipv 3:41bdbc9b3cec 1757 }
pradipv 3:41bdbc9b3cec 1758
pradipv 3:41bdbc9b3cec 1759 //*********************************************************************
pradipv 3:41bdbc9b3cec 1760 void endless_scroll_display_16x16(Max7219 *display, uint32_t scroll_right)
pradipv 3:41bdbc9b3cec 1761 {
pradipv 3:41bdbc9b3cec 1762 if(scroll_right)
pradipv 3:41bdbc9b3cec 1763 {
pradipv 3:41bdbc9b3cec 1764 printf("\nScrolling Right\n");
pradipv 3:41bdbc9b3cec 1765 while(1)
pradipv 3:41bdbc9b3cec 1766 {
pradipv 3:41bdbc9b3cec 1767 shift_display_right_16x16(display, 1, 100);
pradipv 3:41bdbc9b3cec 1768 }
pradipv 3:41bdbc9b3cec 1769 }
pradipv 3:41bdbc9b3cec 1770 else
pradipv 3:41bdbc9b3cec 1771 {
pradipv 3:41bdbc9b3cec 1772 printf("\nScrolling Left\n");
pradipv 3:41bdbc9b3cec 1773 while(1)
pradipv 3:41bdbc9b3cec 1774 {
pradipv 3:41bdbc9b3cec 1775 shift_display_left_16x16(display, 1, 100);
pradipv 3:41bdbc9b3cec 1776 }
pradipv 3:41bdbc9b3cec 1777 }
pradipv 3:41bdbc9b3cec 1778 }
j3 0:6b0161c3e440 1779
j3 0:6b0161c3e440 1780 //*********************************************************************
j3 0:6b0161c3e440 1781 uint32_t print_menu(void)
j3 0:6b0161c3e440 1782 {
j3 0:6b0161c3e440 1783 uint32_t user_input;
j3 0:6b0161c3e440 1784
j3 0:6b0161c3e440 1785 printf("\nPlease select an option below:\n");
pradipv 3:41bdbc9b3cec 1786 printf("%t1. Select font\n");
pradipv 3:41bdbc9b3cec 1787 printf("%t2. Set Brightness\n");
pradipv 3:41bdbc9b3cec 1788 printf("%t3. Print a character to given position\n");
pradipv 3:41bdbc9b3cec 1789 printf("%t4. Print a string to position\n");
pradipv 3:41bdbc9b3cec 1790 printf("%t5. Shift display given number of position and direction\n");
pradipv 3:41bdbc9b3cec 1791 printf("%t6. Clear display\n");
pradipv 3:41bdbc9b3cec 1792 printf("%t7. Run the Demo Routine\n");
j3 0:6b0161c3e440 1793 printf("%t8. Scroll Display In Endless Loop, left or right\n");
j3 0:6b0161c3e440 1794 printf("%t9. Quit\n\n");
j3 0:6b0161c3e440 1795
j3 0:6b0161c3e440 1796 user_input = get_user_input(NULL, 9);
j3 0:6b0161c3e440 1797
j3 0:6b0161c3e440 1798 return(user_input);
j3 0:6b0161c3e440 1799 }
j3 0:6b0161c3e440 1800
j3 0:6b0161c3e440 1801 //*********************************************************************
j3 0:6b0161c3e440 1802 uint32_t get_user_input(char *msg, uint32_t max_val)
j3 0:6b0161c3e440 1803 {
j3 0:6b0161c3e440 1804 uint32_t user_input;
j3 0:6b0161c3e440 1805
j3 0:6b0161c3e440 1806 do
j3 0:6b0161c3e440 1807 {
j3 0:6b0161c3e440 1808 printf(msg);
j3 0:6b0161c3e440 1809
j3 0:6b0161c3e440 1810 //get user input
j3 0:6b0161c3e440 1811 fgets(str, MAX_STRING_LENGTH, stdin);
pradipv 3:41bdbc9b3cec 1812
j3 0:6b0161c3e440 1813 //Remove trailing newline and CR, if there.
j3 0:6b0161c3e440 1814 if((strlen(str) > 0 ) && (str[strlen(str) - 1] == 0x0A) && (str[strlen(str) - 2] == 0x0D))
j3 0:6b0161c3e440 1815 {
j3 0:6b0161c3e440 1816 str[strlen(str) - 1] = '\0';
j3 0:6b0161c3e440 1817 str[strlen(str) - 1] = '\0';
j3 0:6b0161c3e440 1818 }
j3 0:6b0161c3e440 1819 user_input = strtoul(str, NULL, 0);
j3 0:6b0161c3e440 1820 printf("\nYou entered = %d\n", user_input);
j3 0:6b0161c3e440 1821
j3 0:6b0161c3e440 1822 if(user_input > max_val)
j3 0:6b0161c3e440 1823 {
j3 0:6b0161c3e440 1824 printf("\nOut of range\n");
j3 0:6b0161c3e440 1825 }
j3 0:6b0161c3e440 1826 }
j3 0:6b0161c3e440 1827 while(user_input > max_val);
j3 0:6b0161c3e440 1828
j3 0:6b0161c3e440 1829 return(user_input);
j3 0:6b0161c3e440 1830 }
j3 0:6b0161c3e440 1831
j3 0:6b0161c3e440 1832 //*********************************************************************
j3 0:6b0161c3e440 1833 char get_user_char(char *msg)
j3 0:6b0161c3e440 1834 {
j3 0:6b0161c3e440 1835
j3 0:6b0161c3e440 1836 do
j3 0:6b0161c3e440 1837 {
j3 0:6b0161c3e440 1838 printf(msg);
j3 0:6b0161c3e440 1839
j3 0:6b0161c3e440 1840 //get user input
pradipv 3:41bdbc9b3cec 1841 fflush(stdin);
j3 2:9fdd01cf0f88 1842 fgets(str, 4, stdin);
pradipv 3:41bdbc9b3cec 1843 fflush(stdin);
j3 0:6b0161c3e440 1844 //Remove trailing newline and CR, if there.
j3 0:6b0161c3e440 1845 if((strlen(str) > 0 ) && (str[strlen(str) - 1] == 0x0A) && (str[strlen(str) - 2] == 0x0D))
j3 0:6b0161c3e440 1846 {
j3 0:6b0161c3e440 1847 str[strlen(str) - 1] = '\0';
j3 0:6b0161c3e440 1848 str[strlen(str) - 1] = '\0';
j3 0:6b0161c3e440 1849 }
j3 0:6b0161c3e440 1850
j3 0:6b0161c3e440 1851 printf("\nYou entered = %c\n", str[0]);
j3 0:6b0161c3e440 1852
j3 0:6b0161c3e440 1853 if((str[0] < 0x20) || (str[0] > 0x7E))
j3 0:6b0161c3e440 1854 {
j3 0:6b0161c3e440 1855 printf("\nOut of range\n");
j3 0:6b0161c3e440 1856 }
j3 0:6b0161c3e440 1857 }
j3 0:6b0161c3e440 1858 while((str[0] < 0x20) || (str[0] > 0x7E));
j3 0:6b0161c3e440 1859
j3 0:6b0161c3e440 1860 return(str[0]);
j3 0:6b0161c3e440 1861 }
j3 0:6b0161c3e440 1862
j3 0:6b0161c3e440 1863
j3 0:6b0161c3e440 1864 //*********************************************************************
j3 0:6b0161c3e440 1865 char * get_user_string(char *msg)
j3 0:6b0161c3e440 1866 {
j3 0:6b0161c3e440 1867 printf(msg);
j3 0:6b0161c3e440 1868 //get user input
j3 0:6b0161c3e440 1869 fgets(str, MAX_STRING_LENGTH, stdin);
j3 0:6b0161c3e440 1870 //Remove trailing newline and CR, if there.
j3 0:6b0161c3e440 1871 if((strlen(str) > 0 ) && (str[strlen(str) - 1] == 0x0A) && (str[strlen(str) - 2] == 0x0D))
j3 0:6b0161c3e440 1872 {
j3 0:6b0161c3e440 1873 str[strlen(str) - 1] = '\0';
j3 0:6b0161c3e440 1874 str[strlen(str) - 1] = '\0';
j3 0:6b0161c3e440 1875 }
j3 0:6b0161c3e440 1876
j3 0:6b0161c3e440 1877 return(str);
j3 0:6b0161c3e440 1878 }