added text mask

Fork of NeoStrip by Allen Wild

Committer:
rhodes42
Date:
Fri Apr 25 14:39:53 2014 +0000
Revision:
1:3ffc314e9849
gpio_init --> gpio_init_out;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rhodes42 1:3ffc314e9849 1 #include "TextMask.h"
rhodes42 1:3ffc314e9849 2
rhodes42 1:3ffc314e9849 3
rhodes42 1:3ffc314e9849 4 int maskA[20] = { 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 5 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 6 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 7 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 8 1, 0, 1, 0};
rhodes42 1:3ffc314e9849 9
rhodes42 1:3ffc314e9849 10 int maskB[20] = { 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 11 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 12 1, 1, 0, 0,
rhodes42 1:3ffc314e9849 13 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 14 1, 1, 0, 0};
rhodes42 1:3ffc314e9849 15
rhodes42 1:3ffc314e9849 16 int maskC[20] = { 0, 1, 1, 0,
rhodes42 1:3ffc314e9849 17 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 18 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 19 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 20 0, 1, 1, 0};
rhodes42 1:3ffc314e9849 21
rhodes42 1:3ffc314e9849 22 int maskD[20] = { 1, 1, 0, 0,
rhodes42 1:3ffc314e9849 23 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 24 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 25 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 26 1, 1, 0, 0};
rhodes42 1:3ffc314e9849 27
rhodes42 1:3ffc314e9849 28 int maskE[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 29 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 30 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 31 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 32 1, 1, 1, 0};
rhodes42 1:3ffc314e9849 33
rhodes42 1:3ffc314e9849 34 int maskF[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 35 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 36 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 37 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 38 1, 0, 0, 0};
rhodes42 1:3ffc314e9849 39
rhodes42 1:3ffc314e9849 40 int maskG[20] = { 0, 1, 1, 0,
rhodes42 1:3ffc314e9849 41 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 42 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 43 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 44 0, 1, 1, 0};
rhodes42 1:3ffc314e9849 45
rhodes42 1:3ffc314e9849 46 int maskH[20] = { 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 47 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 48 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 49 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 50 1, 0, 1, 0};
rhodes42 1:3ffc314e9849 51
rhodes42 1:3ffc314e9849 52 int maskI[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 53 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 54 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 55 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 56 1, 1, 1, 0};
rhodes42 1:3ffc314e9849 57
rhodes42 1:3ffc314e9849 58 int maskJ[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 59 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 60 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 61 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 62 1, 1, 0, 0};
rhodes42 1:3ffc314e9849 63
rhodes42 1:3ffc314e9849 64 int maskK[20] = { 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 65 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 66 1, 1, 0, 0,
rhodes42 1:3ffc314e9849 67 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 68 1, 0, 1, 0};
rhodes42 1:3ffc314e9849 69
rhodes42 1:3ffc314e9849 70 int maskL[20] = { 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 71 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 72 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 73 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 74 1, 1, 1, 0};
rhodes42 1:3ffc314e9849 75
rhodes42 1:3ffc314e9849 76 int maskM[20] = { 1, 0, 0, 1,
rhodes42 1:3ffc314e9849 77 1, 1, 1, 1,
rhodes42 1:3ffc314e9849 78 1, 1, 1, 1,
rhodes42 1:3ffc314e9849 79 1, 0, 0, 1,
rhodes42 1:3ffc314e9849 80 1, 0, 0, 1};
rhodes42 1:3ffc314e9849 81
rhodes42 1:3ffc314e9849 82 int maskN[20] = { 1, 0, 0, 1,
rhodes42 1:3ffc314e9849 83 1, 1, 0, 1,
rhodes42 1:3ffc314e9849 84 1, 1, 1, 1,
rhodes42 1:3ffc314e9849 85 1, 0, 1, 1,
rhodes42 1:3ffc314e9849 86 1, 0, 0, 1};
rhodes42 1:3ffc314e9849 87
rhodes42 1:3ffc314e9849 88 int maskO[20] = { 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 89 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 90 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 91 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 92 0, 1, 0, 0};
rhodes42 1:3ffc314e9849 93
rhodes42 1:3ffc314e9849 94 int maskP[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 95 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 96 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 97 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 98 1, 0, 0, 0};
rhodes42 1:3ffc314e9849 99
rhodes42 1:3ffc314e9849 100 int maskQ[20] = { 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 101 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 102 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 103 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 104 0, 1, 0, 1};
rhodes42 1:3ffc314e9849 105
rhodes42 1:3ffc314e9849 106 int maskR[20] = { 1, 1, 0, 0,
rhodes42 1:3ffc314e9849 107 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 108 1, 1, 0, 0,
rhodes42 1:3ffc314e9849 109 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 110 1, 0, 1, 0};
rhodes42 1:3ffc314e9849 111
rhodes42 1:3ffc314e9849 112 int maskS[20] = { 0, 1, 1, 0,
rhodes42 1:3ffc314e9849 113 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 114 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 115 0, 0, 1, 0,
rhodes42 1:3ffc314e9849 116 1, 1, 0, 0};
rhodes42 1:3ffc314e9849 117
rhodes42 1:3ffc314e9849 118 int maskT[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 119 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 120 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 121 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 122 0, 1, 0, 0};
rhodes42 1:3ffc314e9849 123
rhodes42 1:3ffc314e9849 124 int maskU[20] = { 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 125 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 126 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 127 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 128 0, 1, 1, 0};
rhodes42 1:3ffc314e9849 129
rhodes42 1:3ffc314e9849 130 int maskV[20] = { 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 131 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 132 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 133 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 134 0, 1, 0, 0};
rhodes42 1:3ffc314e9849 135
rhodes42 1:3ffc314e9849 136 int maskW[20] = { 1, 0, 0, 1,
rhodes42 1:3ffc314e9849 137 1, 0, 0, 1,
rhodes42 1:3ffc314e9849 138 1, 0, 0, 1,
rhodes42 1:3ffc314e9849 139 1, 1, 1, 1,
rhodes42 1:3ffc314e9849 140 1, 0, 0, 1};
rhodes42 1:3ffc314e9849 141
rhodes42 1:3ffc314e9849 142 int maskX[20] = { 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 143 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 144 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 145 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 146 1, 0, 1, 0};
rhodes42 1:3ffc314e9849 147
rhodes42 1:3ffc314e9849 148 int maskY[20] = { 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 149 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 150 1, 0, 1, 0,
rhodes42 1:3ffc314e9849 151 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 152 0, 1, 0, 0};
rhodes42 1:3ffc314e9849 153
rhodes42 1:3ffc314e9849 154 int maskZ[20] = { 1, 1, 1, 0,
rhodes42 1:3ffc314e9849 155 0, 0, 1, 0,
rhodes42 1:3ffc314e9849 156 0, 1, 0, 0,
rhodes42 1:3ffc314e9849 157 1, 0, 0, 0,
rhodes42 1:3ffc314e9849 158 1, 1, 1, 0};
rhodes42 1:3ffc314e9849 159
rhodes42 1:3ffc314e9849 160 int * getCharMask(char inChar)
rhodes42 1:3ffc314e9849 161 {
rhodes42 1:3ffc314e9849 162
rhodes42 1:3ffc314e9849 163 switch(inChar)
rhodes42 1:3ffc314e9849 164 {
rhodes42 1:3ffc314e9849 165 case 'A':
rhodes42 1:3ffc314e9849 166 return maskA;
rhodes42 1:3ffc314e9849 167 break;
rhodes42 1:3ffc314e9849 168 case 'B':
rhodes42 1:3ffc314e9849 169 return maskB;
rhodes42 1:3ffc314e9849 170 break;
rhodes42 1:3ffc314e9849 171 case 'C':
rhodes42 1:3ffc314e9849 172 return maskC;
rhodes42 1:3ffc314e9849 173 break;
rhodes42 1:3ffc314e9849 174 case 'D':
rhodes42 1:3ffc314e9849 175 return maskD;
rhodes42 1:3ffc314e9849 176 break;
rhodes42 1:3ffc314e9849 177 case 'E':
rhodes42 1:3ffc314e9849 178 return maskE;
rhodes42 1:3ffc314e9849 179 break;
rhodes42 1:3ffc314e9849 180 case 'F':
rhodes42 1:3ffc314e9849 181 return maskF;
rhodes42 1:3ffc314e9849 182 break;
rhodes42 1:3ffc314e9849 183 case 'G':
rhodes42 1:3ffc314e9849 184 return maskG;
rhodes42 1:3ffc314e9849 185 break;
rhodes42 1:3ffc314e9849 186 case 'H':
rhodes42 1:3ffc314e9849 187 return maskH;
rhodes42 1:3ffc314e9849 188 break;
rhodes42 1:3ffc314e9849 189 case 'I':
rhodes42 1:3ffc314e9849 190 return maskI;
rhodes42 1:3ffc314e9849 191 break;
rhodes42 1:3ffc314e9849 192 case 'J':
rhodes42 1:3ffc314e9849 193 return maskJ;
rhodes42 1:3ffc314e9849 194 break;
rhodes42 1:3ffc314e9849 195 case 'K':
rhodes42 1:3ffc314e9849 196 return maskK;
rhodes42 1:3ffc314e9849 197 break;
rhodes42 1:3ffc314e9849 198 case 'L':
rhodes42 1:3ffc314e9849 199 return maskL;
rhodes42 1:3ffc314e9849 200 break;
rhodes42 1:3ffc314e9849 201 case 'M':
rhodes42 1:3ffc314e9849 202 return maskM;
rhodes42 1:3ffc314e9849 203 break;
rhodes42 1:3ffc314e9849 204 case 'N':
rhodes42 1:3ffc314e9849 205 return maskN;
rhodes42 1:3ffc314e9849 206 break;
rhodes42 1:3ffc314e9849 207 case 'O':
rhodes42 1:3ffc314e9849 208 return maskO;
rhodes42 1:3ffc314e9849 209 break;
rhodes42 1:3ffc314e9849 210 case 'P':
rhodes42 1:3ffc314e9849 211 return maskP;
rhodes42 1:3ffc314e9849 212 break;
rhodes42 1:3ffc314e9849 213 case 'Q':
rhodes42 1:3ffc314e9849 214 return maskQ;
rhodes42 1:3ffc314e9849 215 break;
rhodes42 1:3ffc314e9849 216 case 'R':
rhodes42 1:3ffc314e9849 217 return maskR;
rhodes42 1:3ffc314e9849 218 break;
rhodes42 1:3ffc314e9849 219 case 'S':
rhodes42 1:3ffc314e9849 220 return maskS;
rhodes42 1:3ffc314e9849 221 break;
rhodes42 1:3ffc314e9849 222 case 'T':
rhodes42 1:3ffc314e9849 223 return maskT;
rhodes42 1:3ffc314e9849 224 break;
rhodes42 1:3ffc314e9849 225 case 'U':
rhodes42 1:3ffc314e9849 226 return maskU;
rhodes42 1:3ffc314e9849 227 break;
rhodes42 1:3ffc314e9849 228 case 'V':
rhodes42 1:3ffc314e9849 229 return maskV;
rhodes42 1:3ffc314e9849 230 break;
rhodes42 1:3ffc314e9849 231 case 'W':
rhodes42 1:3ffc314e9849 232 return maskW;
rhodes42 1:3ffc314e9849 233 break;
rhodes42 1:3ffc314e9849 234 case 'X':
rhodes42 1:3ffc314e9849 235 return maskX;
rhodes42 1:3ffc314e9849 236 break;
rhodes42 1:3ffc314e9849 237 case 'Y':
rhodes42 1:3ffc314e9849 238 return maskY;
rhodes42 1:3ffc314e9849 239 break;
rhodes42 1:3ffc314e9849 240 case 'Z':
rhodes42 1:3ffc314e9849 241 return maskZ;
rhodes42 1:3ffc314e9849 242 break;
rhodes42 1:3ffc314e9849 243 }
rhodes42 1:3ffc314e9849 244 }
rhodes42 1:3ffc314e9849 245
rhodes42 1:3ffc314e9849 246 void maskChar(NeoStrip strip, int xPos, int yPos, int xDim, int yDim, char inChar)
rhodes42 1:3ffc314e9849 247 {
rhodes42 1:3ffc314e9849 248 if (inChar > 90 || inChar < 65)
rhodes42 1:3ffc314e9849 249 return;
rhodes42 1:3ffc314e9849 250
rhodes42 1:3ffc314e9849 251 int * mask = getCharMask(inChar);
rhodes42 1:3ffc314e9849 252
rhodes42 1:3ffc314e9849 253 for (int i = 0; i < 5; i++)
rhodes42 1:3ffc314e9849 254 {
rhodes42 1:3ffc314e9849 255 for (int j = 0; j < 4; j++)
rhodes42 1:3ffc314e9849 256 {
rhodes42 1:3ffc314e9849 257 int pos = (i+yPos)*xDim + xPos + j;
rhodes42 1:3ffc314e9849 258 if (!mask[i*4+j])
rhodes42 1:3ffc314e9849 259 strip.setPixel(pos, 0, 0, 0);
rhodes42 1:3ffc314e9849 260 //strip.maskPixel(pos, mask[i*4+j];
rhodes42 1:3ffc314e9849 261 }
rhodes42 1:3ffc314e9849 262 }
rhodes42 1:3ffc314e9849 263
rhodes42 1:3ffc314e9849 264
rhodes42 1:3ffc314e9849 265 }
rhodes42 1:3ffc314e9849 266