PololuOLED library
font.cpp
1 #include <PololuOLED.h>
2 
11 extern const uint8_t pololuOledFont[][5] PROGMEM __attribute__((weak)) = {
12  // First 32 characters omitted because they are custom or blank.
13 
14  // 0x20 space
15  {
16  0b00000000,
17  0b00000000,
18  0b00000000,
19  0b00000000,
20  0b00000000
21  },
22 
23  // 0x21 !
24  {
25  0b00000000,
26  0b00000000,
27  0b01001111,
28  0b00000000,
29  0b00000000
30  },
31 
32  // 0x22 "
33  {
34  0b00000000,
35  0b00000111,
36  0b00000000,
37  0b00000111,
38  0b00000000
39  },
40 
41  // 0x23 #
42  {
43  0b00010100,
44  0b01111111,
45  0b00010100,
46  0b01111111,
47  0b00010100
48  },
49 
50  // 0x24 $
51  {
52  0b00100100,
53  0b00101010,
54  0b01111111,
55  0b00101010,
56  0b00010010
57  },
58 
59  // 0x25 %
60  {
61  0b00100011,
62  0b00010011,
63  0b00001000,
64  0b01100100,
65  0b01100010
66  },
67 
68  // 0x26 &
69  {
70  0b00110110,
71  0b01001001,
72  0b01010101,
73  0b00100010,
74  0b01010000
75  },
76 
77  // 0x27 '
78  {
79  0b00000000,
80  0b00000000,
81  0b00000111,
82  0b00000000,
83  0b00000000
84  },
85 
86  // 0x28 (
87  {
88  0b00000000,
89  0b00011100,
90  0b00100010,
91  0b01000001,
92  0b00000000
93  },
94 
95  // 0x29 )
96  {
97  0b00000000,
98  0b01000001,
99  0b00100010,
100  0b00011100,
101  0b00000000
102  },
103 
104  // 0x2A *
105  {
106  0b00010100,
107  0b00001000,
108  0b00111110,
109  0b00001000,
110  0b00010100
111  },
112 
113  // 0x2B +
114  {
115  0b00001000,
116  0b00001000,
117  0b00111110,
118  0b00001000,
119  0b00001000
120  },
121 
122  // 0x2C ,
123  {
124  0b00000000,
125  0b01010000,
126  0b00110000,
127  0b00000000,
128  0b00000000
129  },
130 
131  // 0x2D -
132  {
133  0b00001000,
134  0b00001000,
135  0b00001000,
136  0b00001000,
137  0b00001000
138  },
139 
140  // 0x2E .
141  {
142  0b00000000,
143  0b01100000,
144  0b01100000,
145  0b00000000,
146  0b00000000
147  },
148 
149  // 0x2F /
150  {
151  0b00100000,
152  0b00010000,
153  0b00001000,
154  0b00000100,
155  0b00000010
156  },
157 
158  // 0x30 0
159  {
160  0b00111110,
161  0b01010001,
162  0b01001001,
163  0b01000101,
164  0b00111110
165  },
166 
167  // 0x31 1
168  {
169  0b00000000,
170  0b01000010,
171  0b01111111,
172  0b01000000,
173  0b00000000
174  },
175 
176  // 0x32 2
177  {
178  0b01000010,
179  0b01100001,
180  0b01010001,
181  0b01001001,
182  0b01000110
183  },
184 
185  // 0x33 3
186  {
187  0b00100001,
188  0b01000001,
189  0b01000101,
190  0b01001011,
191  0b00110001
192  },
193 
194  // 0x34 4
195  {
196  0b00011000,
197  0b00010100,
198  0b00010010,
199  0b01111111,
200  0b00010000
201  },
202 
203  // 0x35 5
204  {
205  0b00100111,
206  0b01000101,
207  0b01000101,
208  0b01000101,
209  0b00111001
210  },
211 
212  // 0x36 6
213  {
214  0b00111100,
215  0b01001010,
216  0b01001001,
217  0b01001001,
218  0b00110000
219  },
220 
221  // 0x37 7
222  {
223  0b00000011,
224  0b00000001,
225  0b01110001,
226  0b00001001,
227  0b00000111
228  },
229 
230  // 0x38 8
231  {
232  0b00110110,
233  0b01001001,
234  0b01001001,
235  0b01001001,
236  0b00110110
237  },
238 
239  // 0x39 9
240  {
241  0b00000110,
242  0b01001001,
243  0b01001001,
244  0b00101001,
245  0b00011110
246  },
247 
248  // 0x3A :
249  {
250  0b00000000,
251  0b00110110,
252  0b00110110,
253  0b00000000,
254  0b00000000
255  },
256 
257  // 0x3B ;
258  {
259  0b00000000,
260  0b01010110,
261  0b00110110,
262  0b00000000,
263  0b00000000
264  },
265 
266  // 0x3C <
267  {
268  0b00001000,
269  0b00010100,
270  0b00100010,
271  0b01000001,
272  0b00000000
273  },
274 
275  // 0x3D =
276  {
277  0b00010100,
278  0b00010100,
279  0b00010100,
280  0b00010100,
281  0b00010100
282  },
283 
284  // 0x3E >
285  {
286  0b00000000,
287  0b01000001,
288  0b00100010,
289  0b00010100,
290  0b00001000
291  },
292 
293  // 0x3F ?
294  {
295  0b00000010,
296  0b00000001,
297  0b01010001,
298  0b00001001,
299  0b00000110
300  },
301 
302  // 0x40 @
303  {
304  0b00110010,
305  0b01001001,
306  0b01111001,
307  0b01000001,
308  0b00111110
309  },
310 
311  // 0x41 A
312  {
313  0b01111110,
314  0b00010001,
315  0b00010001,
316  0b00010001,
317  0b01111110
318  },
319 
320  // 0x42 B
321  {
322  0b01111111,
323  0b01001001,
324  0b01001001,
325  0b01001001,
326  0b00110110
327  },
328 
329  // 0x43 C
330  {
331  0b00111110,
332  0b01000001,
333  0b01000001,
334  0b01000001,
335  0b00100010
336  },
337 
338  // 0x44 D
339  {
340  0b01111111,
341  0b01000001,
342  0b01000001,
343  0b01000001,
344  0b00111110
345  },
346 
347  // 0x45 E
348  {
349  0b01111111,
350  0b01001001,
351  0b01001001,
352  0b01001001,
353  0b01000001
354  },
355 
356  // 0x46 F
357  {
358  0b01111111,
359  0b00001001,
360  0b00001001,
361  0b00001001,
362  0b00000001
363  },
364 
365  // 0x47 G
366  {
367  0b00111110,
368  0b01000001,
369  0b01001001,
370  0b01001001,
371  0b01111010
372  },
373 
374  // 0x48 H
375  {
376  0b01111111,
377  0b00001000,
378  0b00001000,
379  0b00001000,
380  0b01111111
381  },
382 
383  // 0x49 I
384  {
385  0b00000000,
386  0b01000001,
387  0b01111111,
388  0b01000001,
389  0b00000000
390  },
391 
392  // 0x4A J
393  {
394  0b00100000,
395  0b01000000,
396  0b01000001,
397  0b00111111,
398  0b00000001
399  },
400 
401  // 0x4B K
402  {
403  0b01111111,
404  0b00001000,
405  0b00010100,
406  0b00100010,
407  0b01000001
408  },
409 
410  // 0x4C L
411  {
412  0b01111111,
413  0b01000000,
414  0b01000000,
415  0b01000000,
416  0b01000000
417  },
418 
419  // 0x4D M
420  {
421  0b01111111,
422  0b00000010,
423  0b00001100,
424  0b00000010,
425  0b01111111
426  },
427 
428  // 0x4E N
429  {
430  0b01111111,
431  0b00000100,
432  0b00001000,
433  0b00010000,
434  0b01111111
435  },
436 
437  // 0x4F O
438  {
439  0b00111110,
440  0b01000001,
441  0b01000001,
442  0b01000001,
443  0b00111110
444  },
445 
446  // 0x50 P
447  {
448  0b01111111,
449  0b00001001,
450  0b00001001,
451  0b00001001,
452  0b00000110
453  },
454 
455  // 0x51 Q
456  {
457  0b00111110,
458  0b01000001,
459  0b01010001,
460  0b00100001,
461  0b01011110
462  },
463 
464  // 0x52 R
465  {
466  0b01111111,
467  0b00001001,
468  0b00011001,
469  0b00101001,
470  0b01000110
471  },
472 
473  // 0x53 S
474  {
475  0b01000110,
476  0b01001001,
477  0b01001001,
478  0b01001001,
479  0b00110001
480  },
481 
482  // 0x54 T
483  {
484  0b00000001,
485  0b00000001,
486  0b01111111,
487  0b00000001,
488  0b00000001
489  },
490 
491  // 0x55 U
492  {
493  0b00111111,
494  0b01000000,
495  0b01000000,
496  0b01000000,
497  0b00111111
498  },
499 
500  // 0x56 V
501  {
502  0b00011111,
503  0b00100000,
504  0b01000000,
505  0b00100000,
506  0b00011111
507  },
508 
509  // 0x57 W
510  {
511  0b00111111,
512  0b01000000,
513  0b00111000,
514  0b01000000,
515  0b00111111
516  },
517 
518  // 0x58 X
519  {
520  0b01100011,
521  0b00010100,
522  0b00001000,
523  0b00010100,
524  0b01100011
525  },
526 
527  // 0x59 Y
528  {
529  0b00000111,
530  0b00001000,
531  0b01110000,
532  0b00001000,
533  0b00000111
534  },
535 
536  // 0x5A Z
537  {
538  0b01100001,
539  0b01010001,
540  0b01001001,
541  0b01000101,
542  0b01000011
543  },
544 
545  // 0x5B [
546  {
547  0b00000000,
548  0b01111111,
549  0b01000001,
550  0b01000001,
551  0b00000000
552  },
553 
554  // 0x5C backslash
555  {
556  0b00000010,
557  0b00000100,
558  0b00001000,
559  0b00010000,
560  0b00100000
561  },
562 
563  // 0x5D ]
564  {
565  0b00000000,
566  0b01000001,
567  0b01000001,
568  0b01111111,
569  0b00000000
570  },
571 
572  // 0x5E ^
573  {
574  0b00000100,
575  0b00000010,
576  0b00000001,
577  0b00000010,
578  0b00000100
579  },
580 
581  // 0x5F _
582  {
583  0b01000000,
584  0b01000000,
585  0b01000000,
586  0b01000000,
587  0b01000000
588  },
589 
590  // 0x60 `
591  {
592  0b00000000,
593  0b00000001,
594  0b00000010,
595  0b00000100,
596  0b00000000
597  },
598 
599  // 0x61 a
600  {
601  0b00100000,
602  0b01010100,
603  0b01010100,
604  0b01010100,
605  0b01111000
606  },
607 
608  // 0x62 b
609  {
610  0b01111111,
611  0b01001000,
612  0b01000100,
613  0b01000100,
614  0b00111000
615  },
616 
617  // 0x63 c
618  {
619  0b00111000,
620  0b01000100,
621  0b01000100,
622  0b01000100,
623  0b00100000
624  },
625 
626  // 0x64 d
627  {
628  0b00111000,
629  0b01000100,
630  0b01000100,
631  0b01001000,
632  0b01111111
633  },
634 
635  // 0x65 e
636  {
637  0b00111000,
638  0b01010100,
639  0b01010100,
640  0b01010100,
641  0b00011000
642  },
643 
644  // 0x66 f
645  {
646  0b00001000,
647  0b01111110,
648  0b00001001,
649  0b00000001,
650  0b00000010
651  },
652 
653  // 0x67 g
654  {
655  0b00001100,
656  0b01010010,
657  0b01010010,
658  0b01010010,
659  0b00111110
660  },
661 
662  // 0x68 h
663  {
664  0b01111111,
665  0b00001000,
666  0b00000100,
667  0b00000100,
668  0b01111000
669  },
670 
671  // 0x69 i
672  {
673  0b00000000,
674  0b01000100,
675  0b01111101,
676  0b01000000,
677  0b00000000
678  },
679 
680  // 0x6A j
681  {
682  0b00100000,
683  0b01000000,
684  0b01000100,
685  0b00111101,
686  0b00000000
687  },
688 
689  // 0x6B k
690  {
691  0b01111111,
692  0b00010000,
693  0b00101000,
694  0b01000100,
695  0b00000000
696  },
697 
698  // 0x6C l
699  {
700  0b00000000,
701  0b01000001,
702  0b01111111,
703  0b01000000,
704  0b00000000
705  },
706 
707  // 0x6D m
708  {
709  0b01111100,
710  0b00000100,
711  0b00011000,
712  0b00000100,
713  0b01111000
714  },
715 
716  // 0x6E n
717  {
718  0b01111100,
719  0b00001000,
720  0b00000100,
721  0b00000100,
722  0b01111000
723  },
724 
725  // 0x6F o
726  {
727  0b00111000,
728  0b01000100,
729  0b01000100,
730  0b01000100,
731  0b00111000
732  },
733 
734  // 0x70 p
735  {
736  0b01111100,
737  0b00010100,
738  0b00010100,
739  0b00010100,
740  0b00001000
741  },
742 
743  // 0x71 q
744  {
745  0b00001000,
746  0b00010100,
747  0b00010100,
748  0b00011000,
749  0b01111100
750  },
751 
752  // 0x72 r
753  {
754  0b01111100,
755  0b00001000,
756  0b00000100,
757  0b00000100,
758  0b00001000
759  },
760 
761  // 0x73 s
762  {
763  0b01001000,
764  0b01010100,
765  0b01010100,
766  0b01010100,
767  0b00100000
768  },
769 
770  // 0x74 t
771  {
772  0b00000100,
773  0b00111111,
774  0b01000100,
775  0b01000000,
776  0b00100000
777  },
778 
779  // 0x75 u
780  {
781  0b00111100,
782  0b01000000,
783  0b01000000,
784  0b00100000,
785  0b01111100
786  },
787 
788  // 0x76 v
789  {
790  0b00011100,
791  0b00100000,
792  0b01000000,
793  0b00100000,
794  0b00011100
795  },
796 
797  // 0x77 w
798  {
799  0b00111100,
800  0b01000000,
801  0b00111000,
802  0b01000000,
803  0b00111100
804  },
805 
806  // 0x78 x
807  {
808  0b01000100,
809  0b00101000,
810  0b00010000,
811  0b00101000,
812  0b01000100
813  },
814 
815  // 0x79 y
816  {
817  0b00001100,
818  0b01010000,
819  0b01010000,
820  0b01010000,
821  0b00111100
822  },
823 
824  // 0x7A z
825  {
826  0b01000100,
827  0b01100100,
828  0b01010100,
829  0b01001100,
830  0b01000100
831  },
832 
833  // 0x7B {
834  {
835  0b00000000,
836  0b00001000,
837  0b00110110,
838  0b01000001,
839  0b00000000
840  },
841 
842  // 0x7C |
843  {
844  0b00000000,
845  0b00000000,
846  0b01111111,
847  0b00000000,
848  0b00000000
849  },
850 
851  // 0x7D }
852  {
853  0b00000000,
854  0b01000001,
855  0b00110110,
856  0b00001000,
857  0b00000000
858  },
859 
860  // 0x7E ~
861  {
862  0b00001100,
863  0b00000010,
864  0b00000100,
865  0b00001000,
866  0b00000110
867  },
868 
869  // 0x7F DEL - we put a left arrow here
870  {
871  0b00001000,
872  0b00011100,
873  0b00101010,
874  0b00001000,
875  0b00001000
876  },
877 };
const PROGMEM uint8_t pololuOledFont[][5]
This array defines the appearance of characters 32 through 255.