По запросу из темы
http://arduino.ru/forum/proekty/imitatsiya-razlichnykh-shkal-na-displee-...
и от нечего делать (бейджик к Ардуино не цепляется :-( , сделал макет часов - каких точно ни у кого нет :-)
01 | ///////////// ЧАСЫ НА 2 ДИСПЛЕЯХ ИЗ 3 (можно добавить секунды ещё) |
05 | #define disp_1 12 // управляющие дисплееями выводы |
10 | #include <iarduino_RTC.h> |
11 | iarduino_RTC time(RTC_DS3231); |
16 | extern uint8_t BigZif_0_9[]; |
23 | ////// подключение всех дисплеев |
24 | pinMode(disp_1, OUTPUT); |
25 | digitalWrite(disp_1, HIGH); |
27 | digitalWrite(disp_1, LOW); |
30 | pinMode(disp_2, OUTPUT); |
31 | digitalWrite(disp_2, HIGH); |
33 | digitalWrite(disp_2, LOW); |
36 | pinMode(disp_3, OUTPUT); |
37 | digitalWrite(disp_3, HIGH); |
39 | digitalWrite(disp_3, LOW); |
42 | myOLED.setFont(BigZif_0_9); |
46 | ////////начальная установка часов//////// |
53 | String cmd1 = time.gettime( "H" ); int K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0); |
54 | K = cmd1.substring(1).toInt(); myOLED.printNumI( K, 63, 0); |
55 | myOLED.drawLine(127, 0, 127, 63); |
58 | cmd1 = time.gettime( "i" ); K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0); |
59 | K = cmd1.substring(1).toInt(); myOLED.printNumI( K, 63, 0); |
60 | myOLED.drawLine(0, 0, 0, 63); |
67 | //////////////////////////// |
68 | //////////////////////////// |
69 | /////////////////////////// |
71 | digitalWrite(disp_1, HIGH); myOLED.update(); digitalWrite(disp_1, LOW); myOLED.clrScr(); |
74 | digitalWrite(disp_2, HIGH); myOLED.update(); digitalWrite(disp_2, LOW); myOLED.clrScr(); |
77 | digitalWrite(disp_3, HIGH); myOLED.update(); digitalWrite(disp_3, LOW); myOLED.clrScr(); |
79 | ///////////////////////// |



Картина маслом.
Запрос из 329 поста (забыл указать).
001
#if defined(__AVR__)
002
#include <avr/pgmspace.h>
003
#define fontdatatype const uint8_t
004
#elif defined(__PIC32MX__)
005
#define PROGMEM
006
#define fontdatatype const unsigned char
007
#elif defined(__arm__)
008
#define PROGMEM
009
#define fontdatatype const unsigned char
010
#endif
011
012
fontdatatype SmallFont[] PROGMEM =
013
{
014
0x06, 0x08, 0x20, 0x5f,
015
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
// sp
016
0x00, 0x00, 0x00, 0x2f, 0x00, 0x00,
// !
017
0x00, 0x00, 0x07, 0x00, 0x07, 0x00,
// "
018
0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14,
// #
019
0x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12,
// $
020
0x00, 0x23, 0x13, 0x08, 0x64, 0x62,
// %
021
0x00, 0x36, 0x49, 0x55, 0x22, 0x50,
// &
022
0x00, 0x00, 0x05, 0x03, 0x00, 0x00,
// '
023
0x00, 0x00, 0x1c, 0x22, 0x41, 0x00,
// (
024
0x00, 0x00, 0x41, 0x22, 0x1c, 0x00,
// )
025
0x00, 0x14, 0x08, 0x3E, 0x08, 0x14,
// *
026
0x00, 0x08, 0x08, 0x3E, 0x08, 0x08,
// +
027
0x00, 0x00, 0x00, 0xA0, 0x60, 0x00,
// ,
028
0x00, 0x08, 0x08, 0x08, 0x08, 0x08,
// -
029
0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
// .
030
0x00, 0x20, 0x10, 0x08, 0x04, 0x02,
// /
031
032
0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E,
// 0
033
0x00, 0x00, 0x42, 0x7F, 0x40, 0x00,
// 1
034
0x00, 0x42, 0x61, 0x51, 0x49, 0x46,
// 2
035
0x00, 0x21, 0x41, 0x45, 0x4B, 0x31,
// 3
036
0x00, 0x18, 0x14, 0x12, 0x7F, 0x10,
// 4
037
0x00, 0x27, 0x45, 0x45, 0x45, 0x39,
// 5
038
0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30,
// 6
039
0x00, 0x01, 0x71, 0x09, 0x05, 0x03,
// 7
040
0x00, 0x36, 0x49, 0x49, 0x49, 0x36,
// 8
041
0x00, 0x06, 0x49, 0x49, 0x29, 0x1E,
// 9
042
0x00, 0x00, 0x36, 0x36, 0x00, 0x00,
// :
043
0x00, 0x00, 0x56, 0x36, 0x00, 0x00,
// ;
044
0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
// <
045
0x00, 0x14, 0x14, 0x14, 0x14, 0x14,
// =
046
0x00, 0x00, 0x41, 0x22, 0x14, 0x08,
// >
047
0x00, 0x02, 0x01, 0x51, 0x09, 0x06,
// ?
048
049
0x00, 0x32, 0x49, 0x59, 0x51, 0x3E,
// @
050
0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C,
// A
051
0x00, 0x7F, 0x49, 0x49, 0x49, 0x36,
// B
052
0x00, 0x3E, 0x41, 0x41, 0x41, 0x22,
// C
053
0x00, 0x7F, 0x41, 0x41, 0x22, 0x1C,
// D
054
0x00, 0x7F, 0x49, 0x49, 0x49, 0x41,
// E
055
0x00, 0x7F, 0x09, 0x09, 0x09, 0x01,
// F
056
0x00, 0x3E, 0x41, 0x49, 0x49, 0x7A,
// G
057
0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F,
// H
058
0x00, 0x00, 0x41, 0x7F, 0x41, 0x00,
// I
059
0x00, 0x20, 0x40, 0x41, 0x3F, 0x01,
// J
060
0x00, 0x7F, 0x08, 0x14, 0x22, 0x41,
// K
061
0x00, 0x7F, 0x40, 0x40, 0x40, 0x40,
// L
062
0x00, 0x7F, 0x02, 0x0C, 0x02, 0x7F,
// M
063
0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F,
// N
064
0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E,
// O
065
066
0x00, 0x7F, 0x09, 0x09, 0x09, 0x06,
// P
067
0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E,
// Q
068
0x00, 0x7F, 0x09, 0x19, 0x29, 0x46,
// R
069
0x00, 0x46, 0x49, 0x49, 0x49, 0x31,
// S
070
0x00, 0x01, 0x01, 0x7F, 0x01, 0x01,
// T
071
0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F,
// U
072
0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F,
// V
073
0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F,
// W
074
0x00, 0x63, 0x14, 0x08, 0x14, 0x63,
// X
075
0x00, 0x07, 0x08, 0x70, 0x08, 0x07,
// Y
076
0x00, 0x61, 0x51, 0x49, 0x45, 0x43,
// Z
077
0x00, 0x00, 0x7F, 0x41, 0x41, 0x00,
// [
078
0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55,
// Backslash (Checker pattern)
079
0x00, 0x00, 0x41, 0x41, 0x7F, 0x00,
// ]
080
0x00, 0x04, 0x02, 0x01, 0x02, 0x04,
// ^
081
0x00, 0x40, 0x40, 0x40, 0x40, 0x40,
// _
082
083
0x00, 0x00, 0x03, 0x05, 0x00, 0x00,
// `
084
0x00, 0x20, 0x54, 0x54, 0x54, 0x78,
// a
085
0x00, 0x7F, 0x48, 0x44, 0x44, 0x38,
// b
086
0x00, 0x38, 0x44, 0x44, 0x44, 0x20,
// c
087
0x00, 0x38, 0x44, 0x44, 0x48, 0x7F,
// d
088
0x00, 0x38, 0x54, 0x54, 0x54, 0x18,
// e
089
0x00, 0x08, 0x7E, 0x09, 0x01, 0x02,
// f
090
0x00, 0x18, 0xA4, 0xA4, 0xA4, 0x7C,
// g
091
0x00, 0x7F, 0x08, 0x04, 0x04, 0x78,
// h
092
0x00, 0x00, 0x44, 0x7D, 0x40, 0x00,
// i
093
0x00, 0x40, 0x80, 0x84, 0x7D, 0x00,
// j
094
0x00, 0x7F, 0x10, 0x28, 0x44, 0x00,
// k
095
0x00, 0x00, 0x41, 0x7F, 0x40, 0x00,
// l
096
0x00, 0x7C, 0x04, 0x18, 0x04, 0x78,
// m
097
0x00, 0x7C, 0x08, 0x04, 0x04, 0x78,
// n
098
0x00, 0x38, 0x44, 0x44, 0x44, 0x38,
// o
099
100
0x00, 0xFC, 0x24, 0x24, 0x24, 0x18,
// p
101
0x00, 0x18, 0x24, 0x24, 0x18, 0xFC,
// q
102
0x00, 0x7C, 0x08, 0x04, 0x04, 0x08,
// r
103
0x00, 0x48, 0x54, 0x54, 0x54, 0x20,
// s
104
0x00, 0x04, 0x3F, 0x44, 0x40, 0x20,
// t
105
0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C,
// u
106
0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C,
// v
107
0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C,
// w
108
0x00, 0x44, 0x28, 0x10, 0x28, 0x44,
// x
109
0x00, 0x1C, 0xA0, 0xA0, 0xA0, 0x7C,
// y
110
0x00, 0x44, 0x64, 0x54, 0x4C, 0x44,
// z
111
0x00, 0x00, 0x10, 0x7C, 0x82, 0x00,
// {
112
0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,
// |
113
0x00, 0x00, 0x82, 0x7C, 0x10, 0x00,
// }
114
0x00, 0x00, 0x06, 0x09, 0x09, 0x06
// ~ (Degrees)
115
};
116
117
fontdatatype MediumNumbers[] PROGMEM =
118
{
119
0x0c, 0x10, 0x2d, 0x0d,
120
0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00,
// -
121
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00,
// .
122
0x00, 0x00, 0x02, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x02, 0x00, 0x00, 0x00, 0x00, 0x81, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x81, 0x00, 0x00,
// /
123
0x00, 0xfc, 0x7a, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x7a, 0xfc, 0x00, 0x00, 0x7e, 0xbc, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xbc, 0x7e, 0x00,
// 0
124
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x7e, 0x00,
// 1
125
0x00, 0x00, 0x02, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x7a, 0xfc, 0x00, 0x00, 0x7e, 0xbd, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x81, 0x00, 0x00,
// 2
126
0x00, 0x00, 0x02, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x7a, 0xfc, 0x00, 0x00, 0x00, 0x81, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xbd, 0x7e, 0x00,
// 3
127
0x00, 0xfc, 0x78, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x78, 0xfc, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x3d, 0x7e, 0x00,
// 4
128
0x00, 0xfc, 0x7a, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x02, 0x00, 0x00, 0x00, 0x00, 0x81, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xbd, 0x7e, 0x00,
// 5
129
0x00, 0xfc, 0x7a, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x02, 0x00, 0x00, 0x00, 0x7e, 0xbd, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xbd, 0x7e, 0x00,
// 6
130
0x00, 0x00, 0x02, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x7a, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x7e, 0x00,
// 7
131
0x00, 0xfc, 0x7a, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x7a, 0xfc, 0x00, 0x00, 0x7e, 0xbd, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xbd, 0x7e, 0x00,
// 8
132
0x00, 0xfc, 0x7a, 0x86, 0x86, 0x86, 0x86, 0x86, 0x86, 0x7a, 0xfc, 0x00, 0x00, 0x00, 0x81, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xbd, 0x7e, 0x00,
// 9
133
};
134
135
fontdatatype BigNumbers[] PROGMEM =
136
{
137
0x0e, 0x18, 0x2d, 0x0d,
138
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
// -
139
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
// .
140
0x00, 0x00, 0x02, 0x06, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00,
// /
141
0x00, 0xfc, 0xfa, 0xf6, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0xf6, 0xfa, 0xfc, 0x00, 0x00, 0xef, 0xc7, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xc7, 0xef, 0x00, 0x00, 0x7f, 0xbf, 0xdf, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xdf, 0xbf, 0x7f, 0x00,
// 0
142
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xc7, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0x7f, 0x00,
// 1
143
0x00, 0x00, 0x02, 0x06, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0xf6, 0xfa, 0xfc, 0x00, 0x00, 0xe0, 0xd0, 0xb8, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x3b, 0x17, 0x0f, 0x00, 0x00, 0x7f, 0xbf, 0xdf, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00,
// 2
144
0x00, 0x00, 0x02, 0x06, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0xf6, 0xfa, 0xfc, 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0xbb, 0xd7, 0xef, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xdf, 0xbf, 0x7f, 0x00,
// 3
145
0x00, 0xfc, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xfc, 0x00, 0x00, 0x0f, 0x17, 0x3b, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0xbb, 0xd7, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0x7f, 0x00,
// 4
146
0x00, 0xfc, 0xfa, 0xf6, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0x0f, 0x17, 0x3b, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0xb8, 0xd0, 0xe0, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xdf, 0xbf, 0x7f, 0x00,
// 5
147
0x00, 0xfc, 0xfa, 0xf6, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0xef, 0xd7, 0xbb, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0xb8, 0xd0, 0xe0, 0x00, 0x00, 0x7f, 0xbf, 0xdf, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xdf, 0xbf, 0x7f, 0x00,
// 6
148
0x00, 0x00, 0x02, 0x06, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0xf6, 0xfa, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xc7, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0x7f, 0x00,
// 7
149
0x00, 0xfc, 0xfa, 0xf6, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0xf6, 0xfa, 0xfc, 0x00, 0x00, 0xef, 0xd7, 0xbb, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0xbb, 0xd7, 0xef, 0x00, 0x00, 0x7f, 0xbf, 0xdf, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xdf, 0xbf, 0x7f, 0x00,
// 8
150
0x00, 0xfc, 0xfa, 0xf6, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0xf6, 0xfa, 0xfc, 0x00, 0x00, 0x0f, 0x17, 0x3b, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0xbb, 0xd7, 0xef, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xdf, 0xbf, 0x7f, 0x00,
// 9
151
};
152
153
fontdatatype MegaNumbers[] PROGMEM =
154
{
155
0x18,0x28,0x2D,0x0D,
156
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
//
157
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xF8,0xFC,0xFE,0xFE,0xFC,0xF8,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// .
158
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xC0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x0F,0x1F,0x3F,0x3F,0x1F,0x0F,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x7C,0xFE,0xFF,0xFF,0xFE,0x7C,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// :
159
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xF8,0xF8,0xF0,0xF0,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xF0,0xFC,0xFE,0x3F,0x07,0x01,0x03,0x03,0x07,0x0F,0x1F,0x3F,0xFF,0xFF,0xFF,0xFF,0xFC,0xF0,0x00,0x00,0x00,0x00,0xFC,0xFF,0xFF,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,0xFF,0xFF,0xFF,0x3F,0x00,0x00,0x00,0x00,0x0F,0x3F,0xFF,0xFF,0xFF,0xFF,0xFC,0xF8,0xF0,0xE0,0xE0,0xC0,0x80,0xE0,0xF8,0xFF,0x3F,0x0F,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x07,0x0F,0x1F,0x1F,0x1F,0x0F,0x07,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// 0
160
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xF0,0xE0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x07,0x07,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x07,0x0F,0x1F,0x3F,0x3F,0x1F,0x0F,0x07,0x03,0x01,0x00,0x00,0x00,0x00,0x00,
// 1
161
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xF8,0xF0,0xF0,0xE0,0xC0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x1C,0x3E,0x7F,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x03,0x01,0x83,0xFF,0xFF,0xFF,0xFF,0xFE,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF8,0xFC,0xFF,0xFF,0x7F,0x3F,0x1F,0x07,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xE0,0xF0,0xF8,0xFE,0xDF,0xEF,0xEF,0xE7,0xE3,0xE1,0xE1,0xE0,0xE0,0xC0,0xC0,0xC0,0xC0,0x80,0x00,0x00,0x00,0x00,0x1E,0x1F,0x0F,0x0F,0x0F,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x0F,0x0F,0x1F,0x1F,0x0F,0x07,0x03,0x00,0x00,0x00,
// 2
162
0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xE0,0xF0,0xF8,0xF8,0xF8,0xF0,0xF0,0xE0,0xE0,0xC0,0xC0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x0F,0x1F,0x0F,0x07,0x03,0x01,0x81,0xC0,0xF0,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x0E,0x0E,0x0F,0x0F,0x0F,0x1F,0x3F,0xFF,0xFF,0xFF,0xF9,0xF0,0xE0,0xC0,0x00,0x00,0x00,0x00,0x18,0x3C,0x7E,0xFF,0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x00,0xC1,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x0F,0x0F,0x0F,0x0F,0x07,0x07,0x07,0x03,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
// 3
163
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xE0,0xF8,0xF8,0xF8,0xF0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xE0,0xF8,0x3C,0x1F,0x07,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xFC,0xFF,0xE7,0xE3,0xE0,0xE0,0xE0,0xE0,0xE0,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0xE0,0xE0,0xE0,0xE0,0x00,0x00,0x00,0x00,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0xC3,0xFF,0xFF,0xFF,0xFF,0xFF,0xC3,0x83,0xC3,0xC3,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x03,0x07,0x0F,0x0F,0x0F,0x07,0x03,0x01,0x01,0x00,0x00,0x00,
// 4
164
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0x78,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0xFF,0x07,0x01,0x81,0xC1,0xC1,0xE1,0xF1,0xE1,0xE1,0xC1,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x3F,0x1F,0x0E,0x07,0x07,0x07,0x07,0x0F,0x1F,0x3F,0xFF,0xFF,0xFF,0xFF,0xFE,0xF8,0x00,0x00,0x00,0x00,0x00,0x60,0xF0,0xFC,0xFC,0xFC,0xF8,0xF0,0xF0,0xE0,0xC0,0xC0,0x80,0x80,0xE0,0xFF,0xFF,0x7F,0x3F,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x03,0x07,0x07,0x0F,0x0F,0x0F,0x0F,0x07,0x07,0x03,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
// 5
165
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xF8,0xF8,0xF0,0xF0,0xE0,0xC0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xF8,0xFC,0xFE,0x7F,0x0F,0x01,0x01,0x03,0x83,0x87,0xCF,0xCF,0xDF,0x8F,0x07,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xB8,0x1C,0x1E,0x0E,0x07,0x0F,0x1F,0x3F,0x7F,0xFF,0xFF,0xFF,0xFE,0xF8,0x00,0x00,0x00,0x00,0x00,0x0F,0x3F,0xFF,0xFF,0xFF,0xFF,0xFC,0xF8,0xF0,0xE0,0xC0,0xC0,0x80,0xE0,0xFF,0xFF,0x3F,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x07,0x0F,0x0F,0x0F,0x0F,0x07,0x03,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// 6
166
0x00,0x00,0x00,0x00,0xC0,0xF0,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0x78,0x38,0x00,0x00,0x00,0x00,0x18,0x1E,0x1F,0x07,0x03,0x03,0x01,0x01,0x01,0x81,0xC1,0xF1,0xF9,0xFD,0x3F,0x0F,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xF0,0xFC,0xFE,0xFF,0xFF,0x3F,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x0F,0x07,0x07,0x07,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// 7
167
0x00,0x00,0x00,0x00,0x00,0x80,0xE0,0xF0,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF8,0xF0,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xFC,0xFF,0xFF,0xE7,0xC1,0xC1,0x81,0x81,0x81,0x81,0x83,0xC3,0xFF,0xFF,0x7F,0x3F,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xCF,0xFF,0xFF,0x7F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x7F,0x7F,0xFF,0xFF,0xFE,0xF8,0xE0,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xF8,0xF0,0xE0,0xE0,0xC0,0xC0,0xC0,0xC0,0xC0,0xE0,0xE0,0xFB,0x7F,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x07,0x0F,0x0F,0x0F,0x0F,0x1F,0x1F,0x0F,0x0F,0x07,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// 8
168
0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xF0,0xF8,0xF8,0xF8,0xF0,0xE0,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xF8,0xFE,0xFF,0xFF,0x87,0x01,0x01,0x01,0x03,0x07,0x0F,0x1F,0x7F,0xFF,0xFF,0xFF,0xFE,0xFC,0xE0,0x00,0x00,0x00,0x00,0x03,0x1F,0x7F,0xFF,0xFF,0xFF,0xFE,0xFC,0xF8,0xF0,0x70,0x38,0x3C,0x1E,0xCF,0xFF,0xFF,0xFF,0xFF,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xF0,0xF9,0xFD,0xFB,0xF1,0xF0,0xE0,0xC0,0xC0,0xE0,0xFC,0xFF,0x7F,0x1F,0x0F,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x03,0x07,0x07,0x0F,0x0F,0x0F,0x07,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
// 9
169
};
170
171
fontdatatype TinyFont[] PROGMEM =
172
{
173
0x04, 0x06, 0x20, 0x5f,
174
0x00, 0x00, 0x00, 0x03, 0xa0, 0x00, 0xc0, 0x0c, 0x00, 0xf9, 0x4f, 0x80, 0x6b, 0xeb, 0x00, 0x98, 0x8c, 0x80, 0x52, 0xa5, 0x80, 0x03, 0x00, 0x00,
// Space, !"#$%&'
175
0x01, 0xc8, 0x80, 0x89, 0xc0, 0x00, 0x50, 0x85, 0x00, 0x21, 0xc2, 0x00, 0x08, 0x40, 0x00, 0x20, 0x82, 0x00, 0x00, 0x20, 0x00, 0x18, 0x8c, 0x00,
// ()*+,-./
176
0xfa, 0x2f, 0x80, 0x4b, 0xe0, 0x80, 0x5a, 0x66, 0x80, 0x8a, 0xa5, 0x00, 0xe0, 0x8f, 0x80, 0xea, 0xab, 0x00, 0x72, 0xa9, 0x00, 0x9a, 0x8c, 0x00,
// 01234567
177
0xfa, 0xaf, 0x80, 0x4a, 0xa7, 0x00, 0x01, 0x40, 0x00, 0x09, 0x40, 0x00, 0x21, 0x48, 0x80, 0x51, 0x45, 0x00, 0x89, 0x42, 0x00, 0x42, 0x66, 0x00,
// 89:;<=>?
178
0x72, 0xa6, 0x80, 0x7a, 0x87, 0x80, 0xfa, 0xa5, 0x00, 0x72, 0x25, 0x00, 0xfa, 0x27, 0x00, 0xfa, 0xa8, 0x80, 0xfa, 0x88, 0x00, 0x72, 0x2b, 0x00,
// @ABCDEFG
179
0xf8, 0x8f, 0x80, 0x8b, 0xe8, 0x80, 0x8b, 0xe8, 0x00, 0xf8, 0x8d, 0x80, 0xf8, 0x20, 0x80, 0xf9, 0x0f, 0x80, 0xf9, 0xcf, 0x80, 0x72, 0x27, 0x00,
// HIJKLMNO
180
0xfa, 0x84, 0x00, 0x72, 0x27, 0x40, 0xfa, 0x85, 0x80, 0x4a, 0xa9, 0x00, 0x83, 0xe8, 0x00, 0xf0, 0x2f, 0x00, 0xe0, 0x6e, 0x00, 0xf0, 0xef, 0x00,
// PQRSTUVW
181
0xd8, 0x8d, 0x80, 0xc0, 0xec, 0x00, 0x9a, 0xac, 0x80, 0x03, 0xe8, 0x80, 0xc0, 0x81, 0x80, 0x8b, 0xe0, 0x00, 0x42, 0x04, 0x00, 0x08, 0x20, 0x80,
// XYZ[\]^_
182
0x02, 0x04, 0x00, 0x31, 0x23, 0x80, 0xf9, 0x23, 0x00, 0x31, 0x24, 0x80, 0x31, 0x2f, 0x80, 0x31, 0x62, 0x80, 0x23, 0xea, 0x00, 0x25, 0x53, 0x80,
// `abcdefg
183
0xf9, 0x03, 0x80, 0x02, 0xe0, 0x00, 0x06, 0xe0, 0x00, 0xf8, 0x42, 0x80, 0x03, 0xe0, 0x00, 0x79, 0x87, 0x80, 0x39, 0x03, 0x80, 0x31, 0x23, 0x00,
// hijklmno
184
0x7d, 0x23, 0x00, 0x31, 0x27, 0xc0, 0x78, 0x84, 0x00, 0x29, 0x40, 0x00, 0x43, 0xe4, 0x00, 0x70, 0x27, 0x00, 0x60, 0x66, 0x00, 0x70, 0x67, 0x00,
// pqrstuvw
185
0x48, 0xc4, 0x80, 0x74, 0x57, 0x80, 0x59, 0xe6, 0x80, 0x23, 0xe8, 0x80, 0x03, 0x60, 0x00, 0x8b, 0xe2, 0x00, 0x61, 0x0c, 0x00
// zyx{|}~
186
};
187
188
fontdatatype RusFont[] PROGMEM =
189
{
190
0x06, 0x08, 0x20, 0x5f,
191
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
// sp
192
0x00, 0x00, 0x00, 0x2f, 0x00, 0x00,
// !
193
0x00, 0x00, 0x07, 0x00, 0x07, 0x00,
// "
194
0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14,
// #
195
0x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12,
// $
196
0x00, 0x23, 0x13, 0x08, 0x64, 0x62,
// %
197
0x00, 0x36, 0x49, 0x55, 0x22, 0x50,
// &
198
0x00, 0x00, 0x05, 0x03, 0x00, 0x00,
// '
199
0x00, 0x00, 0x1c, 0x22, 0x41, 0x00,
// (
200
0x00, 0x00, 0x41, 0x22, 0x1c, 0x00,
// )
201
0x00, 0x14, 0x08, 0x3E, 0x08, 0x14,
// *
202
0x00, 0x08, 0x08, 0x3E, 0x08, 0x08,
// +
203
0x00, 0x3E, 0x49, 0x45, 0x45, 0x38,
// ,
204
0x00, 0x08, 0x08, 0x08, 0x08, 0x08,
// -
205
0x00, 0x7C, 0x10, 0x38, 0x44, 0x38,
// .
206
0x00, 0x20, 0x10, 0x08, 0x04, 0x02,
// /
207
208
0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E,
// 0
209
0x00, 0x00, 0x42, 0x7F, 0x40, 0x00,
// 1
210
0x00, 0x42, 0x61, 0x51, 0x49, 0x46,
// 2
211
0x00, 0x21, 0x41, 0x45, 0x4B, 0x31,
// 3
212
0x00, 0x18, 0x14, 0x12, 0x7F, 0x10,
// 4
213
0x00, 0x27, 0x45, 0x45, 0x45, 0x39,
// 5
214
0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30,
// 6
215
0x00, 0x01, 0x71, 0x09, 0x05, 0x03,
// 7
216
0x00, 0x36, 0x49, 0x49, 0x49, 0x36,
// 8
217
0x00, 0x06, 0x49, 0x49, 0x29, 0x1E,
// 9
218
0x00, 0x73, 0x0C, 0x7F, 0x0C, 0x73,
// :
219
0x00, 0x4C, 0x30, 0x7C, 0x30, 0x4C,
// ;
220
0x00, 0x7F, 0x49, 0x49, 0x49, 0x31,
// <
221
0x00, 0x14, 0x14, 0x14, 0x14, 0x14,
// =
222
0x00, 0x7F, 0x10, 0x3E, 0x41, 0x3E,
// >
223
0x00, 0x02, 0x01, 0x51, 0x09, 0x06,
// ?
224
225
0x00, 0x32, 0x49, 0x59, 0x51, 0x3E,
// @
226
0x00, 0x1C, 0x22, 0x7F, 0x22, 0x1C,
// A
227
0x00, 0x7F, 0x10, 0x08, 0x04, 0x7F,
// B
228
0x00, 0x3E, 0x41, 0x41, 0x41, 0x22,
// C
229
0x00, 0x7F, 0x45, 0x45, 0x45, 0x3A,
// D
230
0x00, 0x61, 0x26, 0x18, 0x06, 0x01,
// E
231
0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C,
// F
232
0x00, 0x7F, 0x01, 0x01, 0x01, 0x7F,
// G
233
0x00, 0x7F, 0x09, 0x09, 0x09, 0x06,
// H
234
0x00, 0x7F, 0x40, 0x7F, 0x40, 0x7F,
// I
235
0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E,
// J
236
0x00, 0x40, 0x3F, 0x01, 0x01, 0x7F,
// K
237
0x00, 0x60, 0x3F, 0x21, 0x3F, 0x60,
// L
238
0x00, 0x7F, 0x48, 0x48, 0x30, 0x00,
// M
239
0x00, 0x03, 0x01, 0x7F, 0x01, 0x03,
// N
240
0x00, 0x3F, 0x20, 0x3F, 0x20, 0x7F,
// O
241
242
0x00, 0x21, 0x41, 0x49, 0x4D, 0x33,
// P
243
0x00, 0x7E, 0x20, 0x11, 0x08, 0x7E,
// Q
244
0x00, 0x7F, 0x08, 0x14, 0x22, 0x41,
// R
245
0x00, 0x7F, 0x48, 0x78, 0x00, 0x7F,
// S
246
0x00, 0x7F, 0x49, 0x49, 0x49, 0x41,
// T
247
0x00, 0x7F, 0x01, 0x01, 0x01, 0x03,
// U
248
0x00, 0x7F, 0x06, 0x08, 0x06, 0x7F,
// V
249
0x00, 0x3F, 0x20, 0x20, 0x3F, 0x60,
// W
250
0x00, 0x07, 0x08, 0x08, 0x08, 0x7F,
// X
251
0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F,
// Y
252
0x00, 0x66, 0x19, 0x09, 0x09, 0x7F,
// Z
253
0x00, 0x44, 0x28, 0x10, 0x28, 0x44,
// [
254
0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55,
// Backslash (Checker pattern)
255
0x00, 0x04, 0x7C, 0x50, 0x70, 0x00,
// ]
256
0x00, 0x04, 0x02, 0x01, 0x02, 0x04,
// ^
257
0x00, 0x40, 0x40, 0x40, 0x40, 0x40,
// _
258
259
0x00, 0x42, 0x42, 0x52, 0x52, 0x3C,
// `
260
0x00, 0x18, 0x24, 0x7E, 0x24, 0x18,
// a
261
0x00, 0x7C, 0x20, 0x10, 0x7C, 0x00,
// b
262
0x00, 0x38, 0x44, 0x44, 0x44, 0x28,
// c
263
0x00, 0x7E, 0x4A, 0x4A, 0x34, 0x00,
// d
264
0x00, 0x4C, 0x90, 0x90, 0x90, 0x7C,
// e
265
0x00, 0x20, 0x54, 0x54, 0x78, 0x40,
// f
266
0x00, 0x7C, 0x04, 0x04, 0x7C, 0x00,
// g
267
0x00, 0xFC, 0x18, 0x24, 0x24, 0x18,
// h
268
0x00, 0x7C, 0x40, 0x7C, 0x40, 0x7C,
// i
269
0x00, 0x38, 0x44, 0x44, 0x44, 0x38,
// j
270
0x00, 0x40, 0x3C, 0x04, 0x04, 0x7C,
// k
271
0x00, 0x38, 0x45, 0x45, 0x49, 0x3E,
// l
272
0x00, 0x7C, 0x50, 0x70, 0x00, 0x00,
// m ~
273
0x00, 0x04, 0x04, 0x7C, 0x04, 0x04,
// n
274
0x00, 0x3C, 0x20, 0x3C, 0x20, 0x7C,
// o
275
276
0x00, 0x24, 0x42, 0x4A, 0x34, 0x00,
// p
277
0x00, 0x7C, 0x21, 0x11, 0x7C, 0x00,
// q
278
0x00, 0x7C, 0x10, 0x28, 0x44, 0x00,
// r
279
0x00, 0x7C, 0x50, 0x70, 0x00, 0x7C,
// s
280
0x00, 0x38, 0x54, 0x54, 0x54, 0x18,
// t
281
0x00, 0x7C, 0x04, 0x04, 0x0C, 0x00,
// u
282
0x00, 0x7C, 0x08, 0x10, 0x08, 0x7C,
// v
283
0x00, 0x3C, 0x20, 0x20, 0x3C, 0x60,
// w
284
0x00, 0x1C, 0x10, 0x10, 0x7C, 0x00,
// x
285
0x00, 0x7C, 0x10, 0x10, 0x7C, 0x00,
// y
286
0x00, 0x40, 0x2C, 0x12, 0x7E, 0x00,
// z
287
0x00, 0x63, 0x14, 0x08, 0x14, 0x63,
// {
288
0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,
// |
289
0x00, 0x01, 0x7F, 0x48, 0x48, 0x30,
// }
290
0x00, 0x41, 0x49, 0x49, 0x2A, 0x1C,
// ~ (Degrees)
291
292
};
293
294
295
fontdatatype BigZif_0_9[]PROGMEM = {64,64,48,10,
296
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//0
297
0X80,0X80,0XC0,0XC0,0XC0,0XE0,0XE0,0XE0,0XE0,0XF0,0XF0,0XF0,0XF0,0X70,0X70,0X70,
298
0X70,0X70,0X70,0X70,0X70,0X70,0XF0,0XF0,0XF0,0XF0,0XF0,0XE0,0XE0,0XE0,0XC0,0XC0,
299
0XC0,0XC0,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
300
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0XE0,0X30,0X3C,0X6E,0X62,0X0D,
301
0X2C,0XC6,0X46,0X26,0XC8,0X19,0X09,0X3D,0XFF,0X3F,0X07,0X03,0X01,0X00,0X00,0X00,
302
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X07,0X3F,0XFF,0XFD,0X09,0X19,0X20,0X24,
303
0X36,0XC6,0XE6,0X0C,0X41,0X66,0X3C,0X38,0XE0,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,
304
0X00,0X00,0X00,0X00,0X00,0XE0,0XF8,0X0C,0XC7,0X1F,0XCF,0XE7,0X03,0X01,0XF9,0X01,
305
0X87,0XE7,0X5E,0X1F,0X87,0X07,0XFF,0X7F,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
306
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X9F,0X07,0X4F,0X1F,
307
0XE6,0XA7,0X01,0XF9,0XE1,0X03,0XA7,0XE7,0X1F,0X47,0X0F,0XBC,0XF0,0X00,0X00,0X00,
308
0X00,0X00,0X00,0X00,0XF0,0XFF,0X7F,0X3E,0X9E,0XDC,0X10,0X69,0X99,0X63,0XCF,0X33,
309
0XC9,0X21,0X94,0X9C,0XBF,0XFF,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
310
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XBF,0XDE,0X9C,
311
0X30,0XC1,0X31,0XCF,0XCF,0X31,0XC9,0X30,0X9C,0X9E,0X3E,0X7F,0XFF,0XE0,0X00,0X00,
312
313
0X00,0X00,0X00,0X00,0X3F,0XFF,0XFE,0XF3,0X7F,0X3F,0X0F,0X00,0X9F,0X78,0X0F,0X70,
314
0X9F,0X00,0X0F,0X3F,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
315
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF7,0X7F,0X1F,
316
0X0E,0X20,0XE0,0X3F,0X1F,0XC0,0XB0,0X06,0X1F,0X3F,0XF7,0XFE,0XFF,0X04,0X00,0X00,
317
0X00,0X00,0X00,0X00,0X00,0X03,0X0F,0X3F,0XF8,0XF8,0XFE,0XCF,0XD1,0XD3,0XCC,0XD9,
318
0XD1,0X4F,0X7E,0XF8,0XD0,0X9F,0X3F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
319
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0X7F,0X9F,0XD9,0XF0,0XF8,
320
0X6F,0X43,0XD1,0XCC,0XCC,0XD1,0XC1,0XE7,0XFC,0XF8,0X39,0X0F,0X01,0X00,0X00,0X00,
321
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X07,0X0F,0X1F,0X3F,0X37,
322
0X6C,0X44,0X91,0XB9,0XBD,0XBD,0XBC,0X3F,0X0E,0XF8,0XF0,0XE0,0XC0,0X80,0X80,0X80,
323
0X80,0X80,0X80,0X80,0X80,0X80,0XC0,0XC0,0XE0,0X0C,0X3F,0XBE,0XBC,0XBD,0XB9,0X91,
324
0XC0,0X6C,0X67,0X3F,0X1F,0X0F,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
325
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
326
0X00,0X00,0X00,0X00,0X01,0X01,0X01,0X01,0X03,0X03,0X03,0X03,0X03,0X03,0X07,0X07,
327
0X07,0X07,0X07,0X07,0X03,0X03,0X03,0X03,0X03,0X03,0X03,0X01,0X01,0X01,0X01,0X00,
328
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
329
330
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//1
331
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,
332
0X80,0X80,0X00,0X40,0X80,0XC0,0X20,0X60,0X60,0X60,0XF0,0XF0,0X20,0X00,0X00,0X00,
333
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
334
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XC0,0XC0,0XC0,0XE0,0XE0,0XE0,
335
0XE0,0XF0,0XF0,0XF0,0XF8,0XF8,0XF8,0X7C,0XFC,0XFE,0X82,0X06,0X1E,0X3E,0X3F,0X3D,
336
0X3C,0X3E,0X32,0X33,0X2D,0X2F,0X6F,0XE7,0XE6,0XF0,0XF8,0XFF,0X02,0X00,0X00,0X00,
337
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
338
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X01,0X01,0X01,0X01,0X01,
339
0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XBE,0X06,0X06,0XF2,0XFA,
340
0XBA,0XBB,0X3B,0X7B,0XF2,0XF0,0X60,0X00,0X01,0X03,0XFF,0XFF,0X00,0X00,0X00,0X00,
341
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
342
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
343
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0XF8,0XF1,0XF3,
344
0XF3,0XF3,0X70,0X3C,0X1F,0X07,0X81,0XC0,0XF0,0X70,0X0F,0XFF,0X00,0X00,0X00,0X00,
345
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
346
347
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
348
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X3F,0X0F,0XC3,0XE3,0X70,
349
0X48,0X6C,0X64,0XE6,0XE7,0XE3,0XE3,0XE3,0XF1,0XF0,0XF8,0XFF,0X00,0X00,0X00,0X00,
350
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
351
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
352
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0XC0,0X8F,0XB0,0XC6,
353
0X9F,0X1C,0X3C,0X1F,0X3F,0X7B,0XE3,0X03,0X07,0XCF,0X9F,0X7F,0X40,0X00,0X00,0X00,
354
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
355
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0X80,0X80,0X80,
356
0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0XC0,0XFF,0XFB,0X83,0X03,0X1B,0X93,
357
0X7B,0XF9,0XF3,0XF3,0X66,0X0E,0X8C,0XF8,0XF0,0XE0,0X03,0X3F,0XFC,0X80,0X80,0X80,
358
0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
359
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X06,0X07,0X07,0X07,0X07,
360
0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X06,0X06,
361
0X06,0X06,0X06,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X06,0X06,0X07,0X07,0X07,0X07,
362
0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
363
364
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//2
365
0X80,0X80,0X80,0X40,0X40,0X40,0XC0,0XC0,0XE0,0XE0,0XE0,0XE0,0XE0,0XE0,0XE0,0X60,
366
0X60,0X60,0X60,0X30,0X60,0X30,0X60,0XE0,0XE0,0XE0,0XE0,0X20,0X60,0XC0,0X80,0X80,
367
0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
368
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XE0,0XF0,0XFC,0XE4,0X42,0X2D,0X3D,
369
0X1B,0X19,0X19,0X09,0X0F,0X0E,0X0E,0X0D,0X0F,0X0F,0X0F,0X0F,0X0F,0X0F,0X0F,0X0F,
370
0X18,0X18,0X11,0X23,0X77,0XFE,0XFE,0X38,0X3C,0X5F,0X1F,0X38,0X70,0X71,0XF3,0X3F,
371
0X83,0X0F,0XFF,0X7C,0XFA,0X3C,0X38,0X88,0XE0,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,
372
0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X03,0X03,0X03,0X01,0X00,0X00,0X00,0X00,0X00,
373
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
374
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X0F,0XF8,0XF3,0XE7,0XE7,0XFE,0XFE,0XCC,0X91,
375
0X86,0X4C,0X6D,0X8C,0X1D,0X62,0X64,0X48,0X7F,0XFF,0X0C,0X00,0X00,0X00,0X00,0X00,
376
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
377
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
378
0X00,0X00,0X00,0X00,0X80,0XC0,0XF0,0XFE,0X7F,0X3F,0X9F,0X5F,0XEF,0XEF,0XE7,0XE3,
379
0X01,0X84,0XF0,0XF3,0X7B,0X39,0X18,0X0E,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,
380
381
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
382
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0X60,0XB0,
383
0XB0,0XB8,0XAC,0XAE,0X8F,0X9F,0X9F,0XB1,0XF6,0X73,0X70,0X18,0X1E,0X1F,0X09,0X04,
384
0X02,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
385
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
386
0X80,0XC0,0X40,0X80,0XA0,0XB0,0X18,0X8C,0XEC,0X66,0X76,0X67,0X3F,0X3F,0X1F,0X1F,
387
0X0F,0X07,0X07,0X03,0X03,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
388
0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0XE0,0XF0,0XF8,0XF8,0X78,0X10,0X00,
389
0X00,0X00,0X00,0X00,0X80,0XC0,0XC0,0XE0,0XF0,0X10,0X18,0X6C,0XEC,0XCC,0XDE,0X1F,
390
0X87,0X8F,0X3C,0X38,0X7D,0X7C,0XC5,0XC6,0X06,0X36,0X72,0X72,0XE6,0XAC,0X8C,0XEC,
391
0XFC,0XEC,0XC6,0XF6,0X32,0X06,0X86,0X96,0XDC,0XCC,0XEC,0XB6,0XF6,0XF6,0X76,0XB6,
392
0XB6,0X86,0XCE,0XFF,0XF1,0XFD,0XED,0XE1,0X71,0X19,0X07,0X03,0X00,0X00,0X00,0X00,
393
0X00,0X06,0X07,0X07,0X07,0X07,0X07,0X07,0X03,0X07,0X06,0X06,0X06,0X07,0X07,0X06,
394
0X07,0X07,0X07,0X07,0X07,0X06,0X06,0X06,0X06,0X06,0X06,0X07,0X07,0X05,0X05,0X05,
395
0X04,0X06,0X06,0X06,0X06,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X07,0X03,0X03,0X07,
396
0X03,0X07,0X0F,0X0F,0X0F,0X07,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
397
398
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//3
399
0X00,0X00,0X00,0X80,0X80,0X80,0X80,0XC0,0XC0,0XE0,0X60,0X20,0XA0,0XA0,0XA0,0X20,
400
0X60,0XE0,0XA0,0X60,0XE0,0XE0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0X80,
401
0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
402
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XF0,0X28,0X1C,0XD4,0XF6,
403
0X66,0X3B,0X3B,0X1D,0X1F,0X0F,0X0F,0X0F,0X0F,0X0F,0X0C,0X0C,0X0C,0X0D,0X0F,0X0F,
404
0X0C,0X0E,0X1F,0X1C,0X38,0X78,0XF0,0X70,0X18,0X88,0XE8,0XE8,0X68,0X68,0XE8,0XE8,
405
0XD1,0X01,0X03,0X06,0X1E,0XFC,0XF0,0XE0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
406
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X06,0X0F,0X0C,0X0D,0X0D,0X03,0X01,0X00,
407
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
408
0X00,0X00,0X00,0X00,0X00,0X00,0XC3,0XFE,0XF8,0XF1,0X73,0X33,0X33,0X38,0X1F,0X8F,
409
0XC7,0XC0,0XE0,0XF0,0X7C,0X7F,0X3F,0X0F,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
410
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
411
0X00,0X00,0X00,0X00,0XC0,0XE0,0XC0,0XC0,0XE0,0XE0,0X20,0X30,0XB0,0X30,0X30,0X30,
412
0X38,0X98,0XFC,0X1C,0X86,0XE3,0XF1,0X79,0X18,0X8C,0X8C,0X8E,0XCE,0XC7,0XC7,0XC3,
413
0X83,0X81,0X81,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
414
415
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
416
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X01,0X01,0X01,0X02,0X02,0X03,0X03,0X07,
417
0X07,0X07,0X0F,0X0C,0X18,0X33,0X7F,0XCE,0XEC,0XE5,0X33,0X03,0X80,0XE8,0X79,0X39,
418
0X29,0X0E,0XE4,0XF1,0XE7,0XCE,0X9C,0X38,0XF8,0XF0,0XE0,0X80,0X00,0X00,0X00,0X00,
419
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
420
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
421
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X8F,0XFF,0X63,0X77,0X70,0X71,0X8A,
422
0X28,0X67,0X07,0XF3,0XFC,0XFF,0X8F,0XC0,0X80,0X97,0XCF,0XFF,0X3F,0X00,0X00,0X00,
423
0X00,0X00,0X00,0X00,0X20,0XF8,0XFC,0XEC,0X8C,0X26,0X26,0X74,0XE4,0XE4,0X6C,0X18,
424
0XD8,0XF0,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
425
0X00,0X80,0X80,0XC0,0X40,0XC0,0XE0,0XF0,0XFC,0X7B,0X31,0X3A,0X26,0X86,0XC6,0XE4,
426
0XC7,0XC7,0X6F,0X67,0X33,0X31,0X18,0X09,0X07,0X07,0X01,0X00,0X00,0X00,0X00,0X00,
427
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X03,0X03,0X06,0X06,0X06,0X07,0X0F,0X0F,
428
0X0D,0X08,0X08,0X0E,0X0B,0X0B,0X0B,0X0E,0X0E,0X09,0X0D,0X0D,0X09,0X0C,0X0F,0X0F,
429
0X0F,0X08,0X0E,0X0F,0X04,0X04,0X07,0X07,0X07,0X03,0X03,0X03,0X03,0X01,0X01,0X01,
430
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
431
432
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//4
433
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
434
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0XC0,
435
0XC0,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
436
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
437
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
438
0X00,0X00,0X00,0X80,0XC0,0XE0,0X30,0XC8,0XE8,0XEC,0X24,0X6F,0XEF,0XE0,0XC0,0X00,
439
0X03,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
440
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
441
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0X60,0XB0,0XD8,0X0C,0X2C,
442
0XAE,0XA6,0XE7,0XCF,0X4F,0X2F,0X24,0X14,0X99,0XC9,0XCC,0X4C,0X47,0X63,0X70,0XF0,
443
0XF8,0XFF,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
444
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,
445
0XC0,0X60,0XD0,0X38,0X10,0X96,0XFA,0XBB,0XCB,0X61,0X34,0X17,0X1F,0X0E,0X06,0X03,
446
0X03,0X1B,0XC3,0X98,0X3C,0XFE,0XFF,0XFF,0X7F,0X38,0X70,0X22,0XE6,0XEF,0XEE,0XFE,
447
0XF5,0XFD,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
448
449
0X00,0X00,0X00,0X80,0XC0,0X40,0XE0,0XE0,0X70,0X78,0X34,0X36,0X3B,0XFB,0X78,0X39,
450
0X3B,0X1A,0X0A,0X0E,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
451
0X00,0X0C,0XFF,0XC1,0X91,0X07,0X39,0X6C,0X00,0XF0,0XFE,0X40,0X64,0X39,0X07,0X89,
452
0XF1,0XE7,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
453
0X00,0X00,0X80,0XFF,0XDF,0XC0,0XE0,0XF8,0XFE,0XFE,0XFB,0XFF,0XFF,0XFF,0XDE,0XF9,
454
0XF6,0XE6,0XC3,0XD3,0X93,0X87,0XB1,0XF9,0XDE,0XCE,0XC6,0XE6,0XBB,0XDB,0XDB,0XE3,
455
0X76,0XFE,0XCF,0XE7,0XF7,0XF7,0XC5,0X18,0X06,0XF9,0XF3,0X04,0X3A,0X84,0XF7,0XF7,
456
0XEF,0X8F,0X7E,0XFE,0XEE,0XC3,0XD3,0XD3,0X99,0XDB,0XCF,0XFF,0X00,0X00,0X00,0X00,
457
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
458
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
459
0X00,0XC0,0XFF,0XFE,0X1F,0X07,0XC1,0X68,0X79,0X0F,0X01,0XD8,0X6C,0XC0,0X83,0X0F,
460
0X7F,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
461
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
462
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
463
0X00,0X0C,0X0F,0X0F,0X0E,0X0E,0X0D,0X0A,0X0C,0X0B,0X0B,0X0C,0X0C,0X09,0X0F,0X0E,
464
0X0E,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
465
466
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//5
467
0X00,0X80,0XC0,0XC0,0X40,0X40,0X40,0X40,0X40,0X40,0X40,0X40,0X40,0X40,0XC0,0XC0,
468
0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0XC0,0X40,0X40,0X40,0X40,0X40,0X40,0XC0,
469
0XC0,0XC0,0XC0,0XC0,0X60,0X20,0X90,0XC8,0X6C,0XF4,0X7C,0X1C,0X00,0X00,0X00,0X00,
470
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
471
0XF0,0X5F,0X7F,0XDC,0X06,0XF2,0XFB,0X63,0XEB,0XCF,0XDF,0XCE,0XCE,0XDE,0XDC,0X98,
472
0XF8,0XF1,0XE3,0XE3,0XC7,0XCF,0XCF,0XC8,0XD8,0X9A,0X96,0X92,0X9A,0X9E,0X9E,0XCC,
473
0XC9,0XCF,0XC7,0XE0,0XE0,0XF0,0X7B,0X1E,0X07,0X01,0X00,0X00,0X00,0X00,0X00,0X00,
474
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0XF8,
475
0X0F,0X7E,0XFC,0XFE,0X7F,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
476
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
477
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
478
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XE0,0XFF,0XFF,
479
0XE0,0XC0,0X83,0X8F,0X0F,0X1F,0X3F,0X3F,0X33,0X21,0X39,0X39,0X5B,0X26,0X1E,0X06,
480
0X66,0X66,0X72,0X72,0X72,0XF2,0XF4,0XFC,0X38,0X18,0X98,0X98,0XD8,0X90,0XB0,0X20,
481
0X60,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
482
483
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X03,
484
0X03,0X03,0X03,0X03,0X03,0X03,0X03,0X02,0X02,0X02,0X02,0X07,0X07,0X07,0X07,0X0F,
485
0X09,0X0D,0X17,0X13,0X32,0X78,0X7B,0XC3,0X8E,0X8C,0X8C,0XD9,0X4B,0X4B,0X4F,0X4C,
486
0X4E,0X0F,0X8F,0X0F,0X1E,0X7C,0XF8,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
487
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
488
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
489
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0XFF,0XFF,0XE0,0XC4,0XCF,0XCB,0X4B,
490
0X63,0X7F,0X3E,0X0E,0X80,0XC0,0X79,0X3F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
491
0X00,0X00,0X00,0X00,0X80,0XE0,0XE0,0XE0,0XE0,0XE0,0XE0,0XC0,0X20,0X40,0XC0,0XC0,
492
0X80,0X80,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X00,0X80,0X00,0X80,0X80,
493
0X80,0XC0,0XC0,0X60,0X60,0X60,0XF8,0XCC,0X86,0XA7,0XF1,0XF1,0X79,0X78,0X3C,0X3C,
494
0X1C,0X0E,0X0E,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
495
0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X03,0X07,0X07,0X07,0X0F,0X0F,0X0F,0X0E,0X0C,
496
0X08,0X0F,0X0D,0X0C,0X0D,0X0D,0X0D,0X0D,0X0E,0X0F,0X0A,0X09,0X0D,0X0F,0X0D,0X05,
497
0X05,0X06,0X06,0X07,0X03,0X02,0X03,0X01,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,
498
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
499
500
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//6
501
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
502
0X80,0X80,0X80,0XC0,0XC0,0XC0,0X60,0X60,0X60,0X60,0XE0,0XD0,0X90,0XF0,0X68,0X70,
503
0X70,0X70,0X30,0X38,0X10,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
504
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,
505
0X80,0X80,0XC0,0XE0,0XE0,0X70,0X30,0X98,0XCC,0XCC,0XC6,0X62,0X6B,0XEF,0XEF,0XE7,
506
0X7F,0X3F,0X3B,0X1B,0X09,0X0C,0X06,0X03,0X02,0X01,0X01,0X01,0X00,0X00,0X00,0X00,
507
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
508
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XF0,0XF8,0XFC,0X1E,0X07,0X01,
509
0X26,0X37,0X17,0X33,0X20,0X66,0XF3,0XF9,0X79,0X3C,0X0E,0X06,0X03,0X01,0X01,0X00,
510
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
511
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
512
0X00,0X00,0X00,0X00,0XB0,0X98,0X9E,0X9F,0X3F,0X7F,0XFF,0XFF,0XC3,0X00,0XF8,0XFE,
513
0XFF,0XFF,0XFB,0XF9,0X73,0X06,0XF3,0X71,0X78,0X38,0X3C,0X3C,0X3C,0X3C,0X3E,0X2E,
514
0X2E,0X2E,0X6E,0X6E,0XE6,0XE6,0XF3,0XE3,0XF3,0XE7,0XCA,0XC2,0XE6,0X76,0X3E,0X9C,
515
0XDC,0XD8,0X98,0X30,0XF0,0XF0,0X20,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
516
517
0X00,0X00,0XC0,0XFF,0XFC,0XF9,0XF9,0X1F,0X0F,0X48,0X4F,0X8F,0X87,0X2F,0X4F,0XC3,
518
0XE1,0XFF,0XFC,0XFE,0XFE,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
519
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X07,0X1F,0XFF,0X1F,0XCF,0XE7,0XF6,0X30,0X33,
520
0XF2,0XF7,0X64,0XE4,0XC7,0X0F,0X3F,0X1C,0X01,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,
521
0X00,0X00,0X00,0X0F,0X7F,0XFF,0XFF,0XF8,0XE0,0XC3,0XCF,0X99,0X91,0X17,0X30,0X30,
522
0X7F,0X7F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
523
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC7,0XFC,0XFC,0XF9,0XFD,0X7C,0X9E,
524
0XCF,0XC7,0XC0,0XC6,0X93,0X38,0X78,0XFC,0XFF,0X7F,0X1F,0X00,0X00,0X00,0X00,0X00,
525
0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X07,0X0F,0X1F,0X3F,0X31,0X61,0X49,0XDD,0XB9,
526
0XFA,0XC2,0XE4,0XFC,0XF1,0X87,0XFC,0X38,0X60,0X60,0X40,0XC0,0X80,0X80,0X80,0X80,
527
0X80,0X80,0X80,0XC0,0X40,0X60,0XE0,0XB0,0XFC,0X3F,0X8F,0XEF,0XF7,0XF7,0XFF,0X7F,
528
0X7F,0X3F,0X39,0X1B,0X19,0X0D,0X06,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
529
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
530
0X01,0X01,0X01,0X03,0X03,0X03,0X03,0X03,0X03,0X03,0X06,0X07,0X04,0X04,0X07,0X07,
531
0X07,0X03,0X03,0X03,0X03,0X02,0X02,0X03,0X02,0X01,0X01,0X01,0X01,0X00,0X00,0X00,
532
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
533
534
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XF0,0XFC,0X5C,0X7C,
//7
535
0XBC,0XB0,0XB0,0X10,0X50,0X50,0X40,0XD0,0XD0,0X90,0X90,0X90,0X30,0X30,0X30,0XB0,
536
0X60,0X60,0X60,0XE0,0XE0,0XE0,0XE0,0XE0,0XB0,0X10,0X50,0XD0,0X60,0X60,0X30,0XD0,
537
0XD0,0XD0,0X30,0X30,0X30,0XE0,0XE0,0X60,0XE0,0XE0,0XE0,0XE0,0XF0,0X30,0X00,0X00,
538
0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XE0,0XF8,0XFE,0XFF,0XFF,0X7F,0X7F,0X7F,0X3F,
539
0X3E,0X38,0X30,0X32,0X26,0X3F,0X3E,0X34,0X31,0X39,0X3F,0X3B,0X33,0X33,0X33,0X30,
540
0X31,0X3B,0X32,0X36,0X3A,0X28,0X29,0X3D,0X35,0X39,0X39,0X39,0X39,0X30,0X34,0X36,
541
0X36,0X96,0X96,0X76,0X37,0X93,0XD3,0XFB,0X78,0X3C,0X0F,0X07,0X03,0X01,0X00,0X00,
542
0X00,0X00,0X00,0X00,0X00,0X03,0X07,0X07,0X03,0X03,0X01,0X00,0X00,0X00,0X00,0X00,
543
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
544
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XE0,0XF0,0X78,0X1C,0X8E,
545
0XE3,0X79,0X3C,0X1E,0X0F,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
546
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
547
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
548
0X00,0X80,0XC0,0XE0,0X30,0X0C,0XE6,0XDA,0XE9,0X71,0X1F,0XC7,0X60,0X38,0X0E,0X03,
549
0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
550
551
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
552
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XE0,0XD8,0XCC,0XE6,0XE6,
553
0XE3,0XE1,0XE1,0XE1,0XE3,0XE3,0XF3,0XF1,0X38,0X0E,0X03,0X01,0X00,0X00,0X00,0X00,
554
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
555
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
556
0X00,0X00,0X80,0XE0,0XF0,0X38,0X0C,0X32,0X39,0X78,0X71,0XBB,0X07,0X07,0XCF,0X4F,
557
0XA7,0XF0,0X18,0XE7,0X3F,0X0F,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
558
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
559
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XF8,
560
0XFE,0XFF,0XE1,0XC1,0X8D,0X9D,0XF9,0XFB,0XA3,0X17,0X1F,0X9F,0XC6,0XE0,0XF0,0X7F,
561
0X30,0X1D,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
562
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
563
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
564
0X01,0X03,0X03,0X03,0X03,0X07,0X07,0X07,0X03,0X03,0X03,0X03,0X01,0X01,0X00,0X00,
565
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
566
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
567
568
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,
//8
569
0XC0,0X40,0X20,0XA0,0XC0,0X30,0X30,0X10,0XD0,0XF0,0XB0,0X98,0XD8,0XD8,0X58,0X58,
570
0X58,0X58,0X58,0X58,0XF0,0XF0,0XF0,0XF0,0XD0,0X30,0X70,0XF0,0XC0,0X90,0XA0,0X20,
571
0X60,0X40,0XC0,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
572
0X00,0X00,0X00,0X00,0X00,0X80,0XE0,0XF0,0XF8,0XFC,0X76,0X63,0X61,0X39,0X3B,0X33,
573
0X1F,0X02,0X04,0XDD,0XFD,0X3D,0X0D,0X06,0X03,0X01,0X01,0X00,0X00,0X00,0X00,0X00,
574
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X03,0X06,0X1E,0XFE,0XF1,0XB5,0X97,
575
0X9C,0XC0,0X60,0X00,0XF1,0X03,0X26,0XEC,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
576
0X00,0X00,0X00,0X00,0X0C,0X7F,0XFF,0XC3,0X00,0X00,0X00,0X18,0XE4,0XF0,0XFA,0XFA,
577
0X1B,0X5B,0X73,0X73,0X0F,0X1C,0X30,0XE0,0XC0,0X80,0X80,0X00,0X00,0X00,0X00,0X00,
578
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XF0,0XDE,0XCF,0XEF,0X77,
579
0X33,0XB9,0XDC,0XCF,0X63,0X30,0X1C,0X0F,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
580
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X03,0X06,0X0E,0X0C,0X18,0X19,0X31,0X33,
581
0X73,0X66,0X66,0XE6,0XE6,0XE6,0XE7,0XE7,0XE7,0X27,0XA7,0XC7,0XC7,0XA7,0XA6,0X26,
582
0X46,0XCC,0XCC,0X98,0X3C,0X3C,0XFE,0XFE,0XFF,0XEF,0XE7,0XE7,0XC7,0XC7,0X43,0XC3,
583
0X81,0X81,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
584
585
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0XC0,0X60,0X70,0X30,0X98,
586
0XD8,0XCC,0XEC,0XE4,0X72,0X3F,0X1F,0X0F,0X0F,0X06,0X04,0X05,0X0D,0X09,0X09,0X1A,
587
0X1A,0X3B,0X33,0X77,0X4F,0X68,0XE8,0X6F,0X4F,0X5F,0X30,0XF0,0XE2,0X66,0X2F,0X3C,
588
0X34,0XF1,0XFB,0XFF,0XFE,0XFC,0XF8,0X18,0X70,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,
589
0X00,0X00,0X00,0X00,0X00,0XF0,0XFC,0X0F,0X03,0XF1,0XF8,0X8C,0XAE,0XEF,0X6F,0X0F,
590
0XFF,0XFF,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
591
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X03,0X0F,0XFB,0X60,0X0C,0X0E,0X5E,
592
0XFE,0XEF,0XC1,0X19,0XCB,0X99,0X3D,0X0F,0XC0,0XFF,0X7F,0X00,0X00,0X00,0X00,0X00,
593
0X00,0X00,0X00,0X00,0X00,0X03,0X0F,0X1E,0X3C,0X3C,0X78,0X59,0XC9,0XE9,0XA9,0XB0,
594
0XB6,0XC5,0X7E,0X38,0X30,0X20,0X60,0X60,0XC0,0X80,0X40,0XC0,0X80,0X80,0X80,0X80,
595
0X80,0X80,0X80,0XC0,0X80,0XC0,0XC0,0XE0,0XE0,0X18,0X1E,0XE3,0X86,0XE3,0XF0,0XEE,
596
0X47,0X69,0X74,0X30,0X1C,0X1F,0X0C,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,
597
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,
598
0X01,0X01,0X03,0X03,0X03,0X03,0X02,0X03,0X02,0X02,0X06,0X05,0X05,0X04,0X07,0X07,
599
0X07,0X07,0X02,0X03,0X03,0X03,0X03,0X03,0X03,0X03,0X01,0X01,0X01,0X01,0X00,0X00,
600
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
601
602
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0XC0,
//9
603
0XE0,0X20,0X30,0X90,0XD0,0XD0,0XD0,0XC0,0XC8,0X70,0X70,0X70,0X70,0X70,0X70,0X70,
604
0X70,0X30,0X70,0X70,0XF0,0XF0,0XF0,0XF0,0XF0,0XE0,0XE0,0XE0,0XE0,0XC0,0X40,0X40,
605
0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
606
0X00,0X00,0X00,0X00,0XC0,0X60,0X30,0XB8,0XBC,0X3E,0X7E,0XF3,0XF3,0XE9,0XFC,0XFE,
607
0XFE,0XC0,0XFE,0X3E,0X0F,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
608
0X00,0X00,0X00,0X00,0X01,0X03,0X07,0X7F,0XFF,0X1F,0X3F,0X70,0X70,0X62,0X66,0X6F,
609
0X7E,0X34,0X31,0X7A,0X7E,0XF8,0XF0,0XE0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
610
0X00,0X00,0X00,0XFF,0X05,0X7E,0X71,0XE1,0XC1,0XDF,0XCE,0XE0,0XFF,0XFF,0XFB,0X3F,
611
0X1F,0XFF,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
612
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0XFC,0X3C,0X0C,0XE4,0XF6,0XB2,
613
0X38,0XF4,0XF4,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,
614
0X00,0X00,0X00,0X07,0X1F,0X38,0X60,0XC7,0X9C,0X7E,0X6E,0X61,0X7F,0X7F,0X3F,0XB7,
615
0XA0,0X08,0X3E,0XBF,0X8E,0XF8,0XF0,0XE0,0X40,0X40,0XC0,0X80,0X80,0X80,0X80,0X80,
616
0X80,0X80,0X80,0X80,0X80,0X80,0XC0,0XE0,0XFF,0XFF,0XFF,0XDE,0X38,0X61,0X39,0X19,
617
0X8C,0X87,0X23,0X60,0X78,0XFE,0XFF,0XFF,0XFF,0X7F,0X07,0X00,0X00,0X00,0X00,0X00,
618
619
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X03,0X02,0X06,0X07,0X07,0X0F,
620
0X0F,0X0E,0X0F,0X0F,0X0F,0X0D,0X0D,0X0D,0X0D,0X0E,0X0C,0X0C,0X0D,0X0C,0X0D,0X0D,
621
0X0D,0X0D,0X05,0X05,0X87,0XE3,0XFB,0X8F,0X83,0X21,0XF9,0XF8,0XF0,0X76,0X66,0X26,
622
0X33,0X9E,0X9E,0XC0,0XE0,0X39,0X1F,0X07,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
623
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
624
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XC0,
625
0XB0,0XB0,0X7C,0XE6,0X33,0X3B,0X79,0XE9,0X25,0XF5,0XFC,0XFE,0X7E,0X7E,0X3F,0X1F,
626
0X0F,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
627
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,
628
0X80,0X80,0XC0,0XC0,0XE0,0XE0,0XF0,0XF0,0XF8,0XD8,0XFC,0XFE,0XF7,0X7F,0X7C,0X38,
629
0X38,0X39,0X1B,0X19,0X0A,0X0F,0X05,0X06,0X02,0X03,0X01,0X00,0X00,0X00,0X00,0X00,
630
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
631
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X07,0X07,0X07,0X03,
632
0X03,0X03,0X03,0X03,0X03,0X01,0X01,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
633
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
634
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00
635
};
636
fontdatatype SmallZif_0_9[]PROGMEM = {48,48,48,10,
637
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0XA0,0XA0,0XB0,0X30,
//0
638
0X70,0X30,0XF0,0XF8,0XF8,0X78,0X18,0X18,0X18,0X18,0X18,0X18,0X38,0X78,0XF8,0XF8,
639
0X70,0X70,0X30,0X30,0XB0,0XA0,0XA0,0X40,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
640
0X00,0X00,0X00,0X00,0X80,0X40,0X30,0X7C,0X36,0X17,0X94,0X11,0X31,0XFC,0XF0,0X39,
641
0XF1,0XF3,0X1F,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,
642
0XFF,0XF1,0X72,0XF0,0X26,0X3C,0XD1,0X14,0X37,0X33,0XFC,0X70,0XE0,0X80,0X00,0X00,
643
0X00,0X00,0X00,0XE0,0X7F,0X38,0XBA,0X32,0X57,0XB4,0XCE,0X6C,0X96,0X23,0XB0,0XFC,
644
0XFE,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
645
0XFF,0XFE,0XBC,0XB8,0X23,0XE4,0XDF,0XDF,0XC4,0X63,0XB8,0X38,0X7E,0XFF,0X40,0X00,
646
0X00,0X00,0X00,0X1F,0XFE,0XF9,0X1F,0X0F,0XC0,0X6F,0XDC,0X58,0X6F,0XC0,0X0F,0X3F,
647
0XF3,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
648
0XFF,0XFF,0X3B,0X0F,0XC6,0X70,0X1F,0X8F,0X70,0XC2,0X0F,0X3B,0XFE,0X7F,0X00,0X00,
649
0X00,0X00,0X00,0X00,0X01,0X03,0X0F,0X1F,0X39,0X7A,0XF8,0XB9,0X48,0X05,0XDF,0XDA,
650
0XC3,0XFC,0X60,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XF8,
651
0XE7,0XCB,0XDE,0X9E,0X05,0X68,0XF9,0XF9,0X78,0X3C,0X1F,0X0F,0X01,0X00,0X00,0X00,
652
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X02,0X02,0X06,
653
0X06,0X04,0X0C,0X0F,0X0F,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0F,0X0C,
654
0X06,0X06,0X06,0X02,0X03,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
655
656
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//1
657
0X00,0X00,0X80,0X80,0X80,0X80,0XC0,0X60,0X20,0X80,0X50,0XE0,0XD0,0XD0,0X90,0X38,
658
0XF8,0X90,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
659
0X00,0X00,0X00,0X00,0X00,0X00,0X08,0X1C,0X1C,0X1C,0X1C,0X1C,0X1C,0X0E,0X0E,0X0F,
660
0X0F,0X07,0X0F,0XF8,0XE0,0X23,0X27,0X83,0XC3,0XD2,0XD2,0X85,0X85,0X0C,0X1C,0XFE,
661
0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
662
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
663
0X00,0X00,0X00,0XBF,0XFF,0XF0,0XE0,0XE7,0XE6,0XE0,0X71,0X3F,0X0F,0X80,0XE0,0X7F,
664
0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
665
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
666
0X00,0X00,0X00,0XFF,0X1F,0X07,0XF1,0X98,0XD4,0X16,0XB2,0XF3,0X73,0X73,0XF9,0XF8,
667
0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
668
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
669
0X00,0X00,0X00,0X7F,0XFE,0X18,0X19,0X98,0XDB,0X93,0X93,0X27,0X6E,0XC0,0X80,0X19,
670
0XF7,0XE4,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
671
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0A,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,
672
0X0E,0X0E,0X0E,0X0F,0X0F,0X0C,0X0C,0X08,0X09,0X0B,0X0F,0X0D,0X0C,0X0F,0X0F,0X0C,
673
0X08,0X0F,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X00,0X00,0X00,0X00,0X00,
674
675
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0X40,0X60,0X60,0X60,0XD0,
//2
676
0XB0,0XB0,0XF0,0XF0,0XF0,0XF0,0XF0,0XD0,0X10,0X10,0X58,0XD8,0X98,0X30,0X30,0XF0,
677
0X10,0X30,0X60,0XE0,0XE0,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
678
0X00,0X00,0X00,0X00,0X30,0X38,0X3C,0X1E,0X0F,0X0C,0X04,0X07,0X03,0X03,0X01,0X01,
679
0X01,0X01,0X01,0X01,0X01,0X01,0X01,0X01,0X03,0X02,0X00,0X0E,0X1F,0X73,0X83,0X33,
680
0X33,0XE6,0X6E,0X17,0X60,0X61,0X67,0XFF,0X23,0X49,0XFC,0XF8,0X00,0X00,0X00,0X00,
681
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
682
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XF8,0X7F,0X3F,
683
0X3F,0XDF,0XCF,0XCE,0X06,0X81,0XE6,0X74,0X31,0X19,0X0F,0X07,0X00,0X00,0X00,0X00,
684
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
685
0X00,0X80,0X80,0X80,0XC0,0XE0,0XD0,0XC8,0XC8,0XEC,0XE6,0XE7,0X6F,0X29,0X3A,0X19,
686
0X0C,0X0E,0X0F,0X04,0X02,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
687
0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0X60,0X60,0X60,0XF0,0X38,0X6C,0XC8,0XCE,
688
0X43,0X21,0X2D,0XA6,0XA4,0X27,0X63,0X63,0XE1,0X60,0XA0,0XA0,0X20,0XA0,0X60,0X60,
689
0XA0,0XA0,0XA0,0XA0,0XA0,0X60,0XF0,0X90,0X58,0X18,0X9C,0XFE,0X3F,0X0F,0X02,0X00,
690
0X00,0X0C,0X0C,0X0E,0X0E,0X0F,0X0F,0X0C,0X09,0X0B,0X0E,0X08,0X0E,0X0C,0X0C,0X0D,
691
0X09,0X0B,0X08,0X09,0X0D,0X0F,0X0E,0X0F,0X1B,0X0B,0X0B,0X08,0X0C,0X0E,0X0E,0X0E,
692
0X0C,0X0F,0X0D,0X0C,0X0E,0X1E,0X1F,0X1F,0X0F,0X03,0X01,0X00,0X00,0X00,0X00,0X00,
693
694
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0XC0,0X40,0X60,0XE0,
//3
695
0XE0,0XE0,0XF0,0XB0,0X90,0XB0,0XF0,0XD0,0X90,0XB0,0X90,0X30,0X30,0X30,0X30,0X30,
696
0X30,0X30,0X30,0X20,0X60,0X60,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
697
0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X68,0X6E,0X71,0X1B,0X0E,0X04,0X07,0X03,0X03,
698
0X01,0X01,0X01,0X01,0X01,0X01,0X01,0X01,0X01,0X01,0X03,0X07,0X3E,0XE6,0X83,0X99,
699
0X9D,0X95,0XC5,0X7D,0X3A,0X00,0X80,0XE3,0XFF,0X7C,0X18,0X00,0X00,0X00,0X00,0X00,
700
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,
701
0XC0,0XC0,0XC0,0XC0,0X60,0XE0,0X20,0X20,0X30,0XB0,0X38,0X8C,0XE6,0X77,0X33,0X9B,
702
0X99,0XD9,0XCC,0XCE,0X8E,0X87,0X03,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
703
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
704
0X01,0X01,0X01,0X01,0X03,0X03,0X03,0X03,0X03,0X07,0X06,0X0C,0X1B,0X36,0X74,0XDB,
705
0XC3,0XE0,0X7C,0X1D,0X05,0XC6,0X79,0X33,0XE6,0X0C,0X3C,0XF8,0XE0,0XC0,0X00,0X00,
706
0X00,0X00,0X00,0X80,0XC0,0X60,0X60,0X20,0XA0,0X20,0X60,0XC0,0XC0,0X80,0X00,0X00,
707
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XE0,0X9F,
708
0XC4,0X26,0X26,0X29,0X35,0X70,0X3E,0X9F,0X89,0X48,0X38,0X39,0X0F,0X07,0X00,0X00,
709
0X00,0X00,0X00,0X01,0X07,0X0F,0X0C,0X0C,0X09,0X0B,0X1D,0X1C,0X13,0X13,0X18,0X1C,
710
0X1C,0X18,0X18,0X14,0X1C,0X14,0X18,0X1C,0X1C,0X1A,0X1F,0X09,0X0B,0X0F,0X0F,0X0D,
711
0X0C,0X0C,0X06,0X07,0X03,0X03,0X01,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
712
713
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//4
714
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,
715
0XC0,0XE0,0X20,0X30,0XF0,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
716
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
717
0X00,0X00,0X00,0X00,0X00,0X80,0X40,0X60,0X60,0X30,0X78,0X7C,0X66,0X8D,0XDD,0X4D,
718
0X65,0X3D,0X9C,0X80,0XC0,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
719
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XC0,0XE0,0X70,0X20,
720
0XB8,0XF4,0XC4,0X62,0X2D,0X3E,0X18,0X0C,0X0E,0X8F,0X93,0X31,0XF9,0XFC,0X7E,0X63,
721
0X41,0XC9,0XD9,0XFB,0XE7,0X73,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
722
0X00,0X00,0XE0,0XF0,0X30,0X30,0X98,0X98,0XCA,0XCD,0X9C,0X5D,0X8D,0XCC,0XC6,0XC3,
723
0XC1,0X40,0X80,0X80,0X80,0X40,0X40,0X40,0X84,0XDF,0XF1,0XC9,0XCF,0X1C,0X80,0X7E,
724
0X90,0X18,0X8F,0XC5,0XF9,0X9F,0X80,0X80,0XC0,0X40,0X40,0XC0,0XC0,0X00,0X00,0X00,
725
0X00,0X08,0X0F,0X0D,0X0C,0X0E,0X0F,0X0F,0X0F,0X0F,0X0D,0X0F,0X0E,0X0C,0X0C,0X0A,
726
0X08,0X0E,0X0D,0X0D,0X0C,0X0F,0X0F,0X0C,0X06,0X4D,0XEC,0XFE,0X1C,0X43,0XD0,0X7E,
727
0XC0,0X43,0X18,0X7E,0XFD,0XC1,0X0F,0X0D,0X0C,0X0E,0X0B,0X0D,0X0F,0X00,0X00,0X00,
728
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
729
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X10,0X1B,0X1F,0X18,0X18,0X1B,0X19,0X1C,
730
0X1A,0X13,0X1E,0X18,0X19,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
731
732
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XE0,0XB0,0X90,
//5
733
0X50,0X50,0XD0,0XD0,0X90,0X90,0XB0,0X30,0X30,0X70,0X60,0XE0,0XE0,0X30,0X30,0X90,
734
0X90,0X90,0X90,0XB0,0X70,0XF0,0X30,0X10,0X48,0XA4,0XD6,0X7C,0X0C,0X00,0X00,0X00,
735
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0X7E,0XE7,0XEF,0XF0,
736
0X6E,0X0C,0X0D,0X0D,0X0D,0X0D,0X0B,0X0B,0X0E,0X0C,0X0C,0X0C,0X0D,0X0D,0X0B,0X0B,
737
0X0A,0X0B,0X0B,0X09,0X0D,0X0D,0X0C,0X0C,0X0E,0X03,0X00,0X00,0X00,0X00,0X00,0X00,
738
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFE,0XFF,0XC0,0X83,0X9F,0X1D,
739
0X3C,0X7C,0X64,0X64,0X34,0X3C,0X38,0X08,0X48,0X6C,0X6C,0X6C,0XE8,0XF8,0X30,0X30,
740
0XB0,0XB0,0XA0,0X60,0X40,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
741
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X03,0X03,0X03,0X03,
742
0X03,0X03,0X02,0X02,0X03,0X03,0X03,0X07,0X05,0X0F,0X0B,0X18,0X1C,0X73,0XE6,0XE6,
743
0X2C,0X97,0XC7,0XC6,0XC6,0XC7,0X87,0X0E,0X3C,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,
744
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
745
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X60,0X30,0X9F,
746
0X9C,0XC8,0XCD,0XC5,0XE4,0X67,0X71,0X38,0X1E,0X07,0X00,0X00,0X00,0X00,0X00,0X00,
747
0X00,0X00,0X00,0X02,0X07,0X0F,0X0F,0X0F,0X1F,0X1C,0X1B,0X1B,0X12,0X1E,0X1A,0X1C,
748
0X1C,0X1C,0X18,0X1E,0X14,0X1E,0X1C,0X1E,0X0E,0X0B,0X0D,0X0D,0X0F,0X07,0X06,0X07,
749
0X03,0X01,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
750
751
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
//6
752
0X00,0X00,0X80,0X80,0X80,0XC0,0XC0,0XC0,0XE0,0X60,0X60,0X30,0XB0,0XD0,0X90,0X70,
753
0X78,0X28,0X38,0X18,0X18,0X18,0X1C,0X08,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
754
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0XE0,0X70,0X18,0XA8,0XB8,0XBC,0X0C,
755
0XB6,0X9B,0XC9,0XED,0X64,0X35,0X1D,0X0C,0X07,0X07,0X03,0X01,0X01,0X00,0X00,0X00,
756
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
757
0X00,0X00,0X00,0XE0,0XB0,0XBC,0X3E,0X7F,0XFF,0X07,0X00,0XF8,0XFD,0XFC,0XE4,0X6D,
758
0X8F,0XE7,0X71,0X70,0X70,0X70,0X78,0X58,0X58,0X58,0X58,0XC8,0XCC,0XCC,0XEC,0XCC,
759
0X88,0XC8,0X78,0X38,0XB0,0XB0,0X20,0XE0,0X60,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,
760
0X00,0X00,0XFF,0XFC,0XFD,0X0F,0X07,0XC4,0X67,0X63,0X57,0X33,0XF1,0XFE,0XFE,0XFE,
761
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X0F,0XFF,
762
0X27,0X73,0X18,0X89,0XFB,0XBB,0XB0,0X63,0X0F,0X0C,0XC1,0XFF,0X00,0X00,0X00,0X00,
763
0X00,0X00,0X01,0X0F,0X1F,0X3F,0X7C,0XF9,0X9B,0X1A,0X52,0XD2,0X87,0X2F,0XCF,0X9F,
764
0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XE0,0X7D,
765
0X7F,0XBF,0XB7,0XF3,0XF9,0XD8,0XD8,0XDA,0X67,0X3F,0X1F,0X07,0X00,0X00,0X00,0X00,
766
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X03,0X03,0X07,0X07,0X07,0X0F,
767
0X0E,0X0C,0X0D,0X0D,0X0F,0X0A,0X0E,0X0E,0X0E,0X0E,0X0E,0X0D,0X0B,0X0F,0X0B,0X04,
768
0X07,0X07,0X03,0X03,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
769
770
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0XE0,0XF8,0XDC,0XDC,0XAC,0X38,0X08,0X98,
//7
771
0XD8,0X38,0X68,0X68,0X68,0X48,0X48,0X38,0X50,0X50,0XB0,0X30,0X30,0X70,0X68,0X48,
772
0X78,0X50,0X18,0XB8,0XB8,0X98,0X98,0XD8,0X70,0X50,0X30,0XB0,0XF0,0XF8,0X08,0X00,
773
0X00,0X00,0X00,0X10,0X30,0X3C,0X3F,0X1F,0X0F,0X07,0X07,0X07,0X07,0X06,0X06,0X06,
774
0X07,0X06,0X06,0X07,0X07,0X06,0X06,0X06,0X06,0X06,0X06,0X07,0X05,0X07,0X06,0X07,
775
0X07,0X87,0XC6,0X66,0X12,0XCA,0XE6,0X72,0X1A,0X0E,0X07,0X03,0X01,0X00,0X00,0X00,
776
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
777
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0X20,0X18,0XF8,0XC4,0X26,
778
0X8F,0X63,0X78,0X1E,0X07,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
779
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
780
0X00,0X80,0X40,0X20,0X70,0XE4,0XF6,0XF2,0XF3,0X31,0XF1,0XF3,0XF9,0X39,0X1C,0X07,
781
0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
782
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0XF0,0X10,0X1C,0X7E,
783
0XD3,0XD2,0X33,0XF6,0XFE,0X20,0X89,0XF5,0X8C,0XF2,0X2C,0X07,0X01,0X00,0X00,0X00,
784
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
785
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X07,0X0F,0X0E,0X0E,
786
0X0E,0X0F,0X0C,0X0C,0X0E,0X07,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
787
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
788
789
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0X40,0X60,0X60,0XF0,0X10,0X30,0X70,
//8
790
0X58,0X88,0XF8,0X78,0X2C,0X3C,0X3C,0X1C,0X1C,0X1C,0X1C,0X38,0X38,0X78,0X68,0XD8,
791
0XB8,0XA0,0X68,0XD0,0X10,0X30,0X20,0X60,0XC0,0X80,0X00,0X00,0X00,0X00,0X00,0X00,
792
0X00,0X00,0X00,0X60,0XF8,0X3E,0X0F,0X0F,0XC4,0X24,0X87,0XC6,0XD3,0X90,0X9B,0X7F,
793
0XC3,0X81,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
794
0X83,0X6F,0X7E,0XBA,0X9B,0XCC,0X70,0X1E,0XC0,0X7D,0X3F,0X00,0X00,0X00,0X00,0X00,
795
0X00,0X00,0X00,0X00,0X07,0X07,0X0C,0X18,0X18,0X33,0X27,0X67,0X6C,0X49,0XC9,0XC8,
796
0XCC,0XCF,0XCE,0X4E,0XCC,0XCC,0XCC,0X48,0X58,0X98,0X90,0X30,0X78,0XF8,0XDC,0XCE,
797
0XCF,0XCE,0XCF,0XCD,0X84,0X86,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
798
0X00,0X00,0X00,0X00,0X00,0XC0,0X60,0X20,0X30,0X98,0XD8,0XCC,0XE4,0XF6,0X30,0X18,
799
0X0F,0X07,0X07,0X02,0X03,0X05,0X05,0X0C,0X0C,0X19,0X1B,0X17,0X34,0X77,0X47,0XC8,
800
0XF8,0X32,0X97,0X9E,0X98,0X79,0X7F,0X7E,0X7C,0XCC,0X18,0XE0,0X00,0X00,0X00,0X00,
801
0X00,0X00,0X00,0X00,0X7F,0XE1,0XC0,0XCE,0XC9,0X5D,0X5D,0X81,0XAF,0X7F,0XC0,0X80,
802
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XE1,
803
0X3F,0X34,0X91,0X63,0X3F,0X8C,0X83,0XE9,0XE3,0X71,0X3C,0X1F,0X00,0X00,0X00,0X00,
804
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X01,0X01,0X03,0X07,0X06,0X06,0X07,0X0D,0X0C,
805
0X0D,0X0D,0X0B,0X0A,0X1F,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0E,0X0F,0X0F,0X04,
806
0X07,0X06,0X07,0X03,0X01,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
807
808
0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X80,0X40,0X60,0X20,0XB0,0XB0,0X18,0X88,0XE8,
//9
809
0X68,0X30,0X34,0X18,0X18,0X18,0X18,0X18,0X18,0X18,0X18,0X78,0XF8,0XF8,0XF8,0XF0,
810
0X30,0X30,0XB0,0XD0,0XA0,0X20,0X40,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
811
0X00,0X00,0XF0,0X3C,0X96,0X1B,0X1B,0X67,0X0E,0XFE,0XDD,0XDF,0XFD,0XFC,0X07,0X01,
812
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XE3,
813
0XC6,0X66,0X24,0XA5,0XC7,0XA6,0X06,0X07,0X3E,0XFC,0XF0,0XD0,0X00,0X00,0X00,0X00,
814
0X00,0X00,0X0F,0X3C,0X61,0XCF,0XBB,0X7A,0X43,0X7F,0X7F,0X2C,0X00,0X33,0X3F,0X98,
815
0XE0,0XC0,0X40,0XC0,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0X80,0XC0,0XFF,0XFF,
816
0XF8,0X60,0X67,0X36,0X99,0X0F,0X40,0X70,0XF8,0XFF,0XFF,0X7F,0X00,0X00,0X00,0X00,
817
0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X03,0X03,0X02,0X03,0X07,0X07,0X06,0X07,0X07,
818
0X04,0X04,0X06,0X06,0X06,0X06,0X06,0X07,0X07,0X07,0X83,0X63,0X79,0X67,0X41,0X19,
819
0XBC,0XB8,0X9A,0XD2,0XCB,0XEE,0X60,0X30,0X0D,0X07,0X01,0X00,0X00,0X00,0X00,0X00,
820
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
821
0X80,0X80,0XC0,0XC0,0XE0,0XB0,0XE8,0XCC,0XCE,0XDF,0XDC,0X62,0X77,0X2D,0X20,0X1E,
822
0X0F,0X07,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
823
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0C,0X0C,0X0C,0X0E,0X0E,0X0E,0X0E,0X07,
824
0X07,0X07,0X07,0X03,0X03,0X03,0X01,0X01,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
825
0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00
826
};
Забыл файл добавленных цифр.(файл DefaultFonts.c заменить на этот).
Красивое решение!
Интересно, а с ILI9341 по SPI можно такое сотворить?
Сотворить можно все, что угодно. Более того, в случае цветного дисплея это сделать намного проще.
01
///////////// ЧАСЫ НА 3 ДИСПЛЕЯХ
02
03
#include <OLED_I2C.h>
04
OLED myOLED(SDA, SCL);
05
#define disp_1 12 // управляющие дисплееями выводы
06
#define disp_2 11
07
#define disp_3 10
08
/////////////
09
#include <iarduino_RTC.h>
10
iarduino_RTC time(RTC_DS3231);
11
//SDA - A4 //SCL - A5 //ПОДКЛЮЧЕНИЕ ВЫВОДОВ МОДУЛЯ ВРЕМЕНИ
12
String cmd1 =
""
;
//перменнные для хранения значений текущего времени
13
int
K;
//
14
/////////////////
15
16
int
t = 222;
// пауза между считыванием данных по времени с модуля
17
extern
uint8_t BigZif_0_9[];
//внебиблиотечные цифры - самопальный шрифт, добавленный в библиотеку экранчика
18
extern
uint8_t SmallZif_0_9[];
//внебиблиотечные цифры - самопальный шрифт, добавленный в библиотеку экранчика
19
20
21
void
setup
()
22
{
23
delay(50);
24
////// подключение всех дисплеев
25
pinMode(disp_1, OUTPUT);
26
digitalWrite(disp_1, HIGH);
27
myOLED.begin();
28
digitalWrite(disp_1, LOW);
29
delay(50);
30
//////
31
pinMode(disp_2, OUTPUT);
32
digitalWrite(disp_2, HIGH);
33
myOLED.begin();
34
digitalWrite(disp_2, LOW);
35
delay(50);
36
////////
37
pinMode(disp_3, OUTPUT);
38
digitalWrite(disp_3, HIGH);
39
myOLED.begin();
40
digitalWrite(disp_3, LOW);
41
delay(50);
42
////////
43
myOLED.setFont(BigZif_0_9);
//внебиблиотечные цифры - самопальный шрифт
44
45
/////////////
46
time.begin();
47
////////начальная установка часов////////
48
//time.settime(0,58,18,20,8,19,2); // 0 сек, 58 мин, 18 час, 20, АВГУСТА, 2019 года, ВТОРНИК (раскомментить, выставить желаемое, загрузить скетч, закомментить,загрузить скетч)
49
/////////////
50
tschasi();
51
}
52
53
void
loop
()
54
{
55
////////////////////
56
cmd1 = time.gettime(
"s"
);
int
P = cmd1.substring(0, 2).toInt();
57
K = cmd1.substring(0, 1).toInt();
58
myOLED.setFont(SmallZif_0_9);
//внебиблиотечные цифры - самопальный шрифт
59
myOLED. printNumI(K, 0, 0);
//десятки секунд
60
K = cmd1.substring(1).toInt();
61
myOLED.printNumI( K, 48, 0);
//единицы секунд
62
myOLED.drawLine(0, 49, 96, 49);
//разделительная линия
63
myOLED.setFont(BigZif_0_9);
//внебиблиотечные цифры - самопальный шрифт
64
dis_1();
65
////
66
if
(P == 0) {
67
tschasi();
68
}
69
///////////////////
70
delay(t);
71
72
73
}
74
////////////////////////////
75
////////////////////////////
76
///////////////////////////
77
void
dis_1() {
//функции обновления изображений на экранах
78
digitalWrite(disp_1, HIGH); myOLED.update(); digitalWrite(disp_1, LOW); myOLED.clrScr();
// очищаем дисплей
79
}
80
void
dis_2() {
81
digitalWrite(disp_2, HIGH); myOLED.update(); digitalWrite(disp_2, LOW); myOLED.clrScr();
// очищаем дисплей
82
}
83
void
dis_3() {
84
digitalWrite(disp_3, HIGH); myOLED.update(); digitalWrite(disp_3, LOW); myOLED.clrScr();
// очищаем дисплей
85
}
86
/////////////////////////
87
void
tschasi() {
88
cmd1 = time.gettime(
"H"
); K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0);
//десятки часов
89
K = cmd1.substring(1).toInt(); myOLED.printNumI( K, 63, 0);
//единицы часов
90
myOLED.drawLine(127, 0, 127, 63);
//разделительная линия
91
dis_3();
92
////
93
cmd1 = time.gettime(
"i"
); K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0);
//десятки минут
94
K = cmd1.substring(1).toInt(); myOLED.printNumI( K, 63, 0);
//единицы минут
95
myOLED.drawLine(0, 0, 0, 63); myOLED.drawLine(127, 0, 127, 63);
//разделительные линии
96
dis_2();
97
98
}
99
///////////////
Вот вариант корпуса под готовую поделку - бомба.
Токи потребления не смотрел?
Смотрел, около 26-28 мА :-)
001
///////////// ЧАСЫ-ШКАЛЫ НА 3 ИНДИКАТОРАХ
002
#include <OLED_I2C.h>
003
OLED myOLED(SDA, SCL);
004
#define disp_1 12 // управляющие дисплееями выводы
005
#define disp_2 11
006
#define disp_3 10
007
/////////////
008
#include <iarduino_RTC.h>
009
iarduino_RTC time(RTC_DS3231);
010
//SDA - A4 //SCL - A5 //ПОДКЛЮЧЕНИЕ ВЫВОДОВ МОДУЛЯ ВРЕМЕНИ
011
extern
uint8_t RusFont[];
012
int
t = 222;
// пауза между считываниями данных
013
bool
PUSK =
true
;
//флаг для начального включения-обновления данных всех экранов
014
015
void
setup
()
016
{
017
////// подключение всех дисплеев
018
pinMode(disp_1, OUTPUT);
019
digitalWrite(disp_1, HIGH);
020
myOLED.begin();
021
digitalWrite(disp_1, LOW);
022
delay(50);
023
//////
024
pinMode(disp_2, OUTPUT);
025
digitalWrite(disp_2, HIGH);
026
myOLED.begin();
027
digitalWrite(disp_2, LOW);
028
delay(50);
029
////////
030
pinMode(disp_3, OUTPUT);
031
digitalWrite(disp_3, HIGH);
032
myOLED.begin();
033
digitalWrite(disp_3, LOW);
034
delay(50);
035
////////
036
myOLED.setFont(RusFont);
037
myOLED.invert(0);
//инверсия цвета
038
time.begin();
039
////////начальная установка часов////////
040
//time.settime(0,58,18,20,8,19,2); // 0 сек, 58 мин, 18 час, 20, АВГУСТА, 2019 года, ВТОРНИК (раскомментить, выставить желаемое, загрузить скетч, закомментить,загрузить скетч)
041
/////////////
042
fun_();
//выставляем показания на экраны
043
PUSK =
false
;
044
///////////
045
}
046
047
void
loop
()
048
{
049
fun_();
//выставляем показания на экраны
050
delay(t);
051
}
052
////////////////////////////
053
////////////////////////////
054
///////////////////////////
055
void
dis_1() {
//функции обновления изображений на экранах
056
digitalWrite(disp_1, HIGH); myOLED.update(); digitalWrite(disp_1, LOW); myOLED.clrScr();
// очищаем дисплей
057
}
058
void
dis_2() {
059
digitalWrite(disp_2, HIGH); myOLED.update(); digitalWrite(disp_2, LOW); myOLED.clrScr();
// очищаем дисплей
060
}
061
void
dis_3() {
062
digitalWrite(disp_3, HIGH); myOLED.update(); digitalWrite(disp_3, LOW); myOLED.clrScr();
// очищаем дисплей
063
}
064
/////////////////////////
065
/////////////////////////
066
///////////////////////// функция рисования стрелки ////////////////////////////////
067
void
primitiv_1(
int
x,
int
y,
int
r1,
int
r2,
int
n,
float
rotor) {
//x,y координаты центра фигуры; r1,r2 радиусы зубцов и впадин фигуры; n число зубцов;rotor угол поворота фигуры
068
for
(
float
i = 0 + rotor; i < 1 * PI + rotor; i = i + 2 * PI / n) {
069
myOLED.drawLine(x + r1 * cos(i) , y + r1 * sin(i), x + r2 * cos(i + PI / n) , y + r2 * sin(i + PI / n) );
070
myOLED.drawLine(x + r2 * cos(i + PI / n) , y + r2 * sin(i + PI / n), x + r1 * cos(i + 2 * PI / n) , y + r1 * sin(i + 2 * PI / n));
071
}
072
}
073
///////////////////////// функция рисования прибора-шкалы //////////////////////////
074
void
pribor_ (String str,
int
x1,
int
y1,
int
n1,
float
rotor1,
float
pologenie) {
//str название шкалы; x1,y1 координаты положения центра; n1 число делений; rotor1 начальный угол положения стрелки; pologenie угол указанного положения стрелки
075
for
(
int
i = 22; i < 29; i++) {
076
primitiv_1(x1, y1, 7, i, 2, (2 * PI / n1)*pologenie + rotor1);
//стрелка
077
}
078
for
(
int
i = 6; i < 9; i++) {
079
myOLED.drawCircle(x1, y1, i);
080
}
081
082
myOLED.drawCircle(x1 - 1, y1 - 1, 30);
//шкала
083
for
(
float
i = 0; i < 2 * PI; i = i + 2 * PI / n1) {
084
if
(i >= PI / 2 && i < PI / 2 + 2 * PI / n1) {
085
myOLED.drawLine(x1 - 15 * cos(i), y1 - 15 * sin(i), x1 - 30 * cos(i), y1 - 30 * sin(i));
086
}
else
{
087
myOLED.drawLine(x1 - 25 * cos(i), y1 - 25 * sin(i), x1 - 30 * cos(i), y1 - 30 * sin(i));
088
}
089
}
090
myOLED.print(str, x1 - 10, y1 + 15);
// название шкалы
091
}
092
////////////////////// функция выставления значений времени по шкалам
093
void
fun_() {
094
time.gettime();
//
095
pribor_(
"CTR"
, 31, 32, 12, -PI, time.seconds / 5.0);
// шкала секунд
096
pribor_(
"LTY"
, 97, 32, 7, -PI + 0.2, time.weekday);
//шкала дня недели
097
dis_2();
//обработка и обновление данных на 2 индикаторе
098
if
(time.seconds == 0 || PUSK) {
099
pribor_(
"XFC"
, 31, 32, 12, -PI, time.hours + time.minutes / 60.0);
//шкала часов
100
pribor_(
"VBY"
, 97, 32, 12, -PI, time.minutes / 5.0 + time.seconds / 300.0);
// шкала минут
101
dis_3();
//обработка и обновление данных на 3 индикаторе
102
}
103
if
((time.Hours == 0 && time.minutes == 0 && time.seconds == 0) || PUSK) {
104
pribor_(
"XBC"
, 31, 32, 31, -PI, time.day);
//шкала числа месяца
105
pribor_(
"VTC"
, 97, 32, 12, -PI, time.month);
// шкала месяца года
106
dis_1();
//обработка и обновление данных на 1 индикаторе
107
}
108
}
Часы могут иметь несколько тем для отображения данных. Потом "темные скетчи" можно сложить в один.
По модулю (по ходу) ds3231 возник вопрос - различает ли он самостоятельно дни в месяце, где 28,29,30,31 или в каждом шпарит по 31?
В некоторых Dallas-ах ещё был автопереход на летнее/зимнее время.
1
time.settime(0,58,18,20,8,19,2);
// 0 сек, 58 мин, 18 час, 20, АВГУСТА, 2019 года, ВТОРНИК
Просто смутило, что в начальных настройках весь набор вводится. А если ввести с ошибкой данные они не пройдут, пройдут, но результаты будут с ошибкой?
А проверить? Насколько помню, введётся с ошибкой, но по ходу исправится на корректное значение.
Я именно о DS, а не о библиотеке.
Понял. Но библиотека любая, по идее, просто выводит в переменных что ей дают, без программной обработки?
Добавил третью тему отображения данных из часов реального времени. А вот интересно функцию ниже можно использовать в loop?
time.settime(0,58,18,20,8,19,2);
// 0 сек, 58 мин, 18 час, 20, АВГУСТА, 2019 года, ВТОРНИК
001
///////////// ЧАСЫ-ОВАЛ НА 3 ИНДИКАТОРАХ
002
#include <OLED_I2C.h>
003
OLED myOLED(SDA, SCL);
004
#define disp_1 12 // управляющие дисплееями выводы
005
#define disp_2 11
006
#define disp_3 10
007
/////////////
008
#include <iarduino_RTC.h>
009
iarduino_RTC time(RTC_DS3231);
010
//SDA - A4 //SCL - A5 //ПОДКЛЮЧЕНИЕ ВЫВОДОВ МОДУЛЯ ВРЕМЕНИ
011
extern
uint8_t RusFont[];
012
int
t = 222;
// пауза между считываниями данных
013
014
float
minuti = 0.00;
//пременные хранения углов
015
float
tcshasi = 0.00;
//
016
float
sekundi = 0.00;
//
017
018
int
dlina_1 = 60;
//задаём геометрию-форму часов
019
int
dlina_2 = 28;
020
bool
PUSK =
true
;
//флаг для начального включения-обновления данных всех экранов
021
int
N=31;
//переменная числа дней в месяце
022
023
void
setup
()
024
{
025
////// подключение всех дисплеев
026
pinMode(disp_1, OUTPUT);
027
digitalWrite(disp_1, HIGH);
028
myOLED.begin();
029
digitalWrite(disp_1, LOW);
030
delay(50);
031
//////
032
pinMode(disp_2, OUTPUT);
033
digitalWrite(disp_2, HIGH);
034
myOLED.begin();
035
digitalWrite(disp_2, LOW);
036
delay(50);
037
////////
038
pinMode(disp_3, OUTPUT);
039
digitalWrite(disp_3, HIGH);
040
myOLED.begin();
041
digitalWrite(disp_3, LOW);
042
delay(50);
043
////////
044
myOLED.setFont(RusFont);
045
time.begin();
046
////////начальная установка часов////////
047
//time.settime(0,58,18,20,8,19,2); // 0 сек, 58 мин, 18 час, 20, АВГУСТА, 2019 года, ВТОРНИК (раскомментить, выставить желаемое, загрузить скетч, закомментить,загрузить скетч)
048
/////////////
049
fun_B();
//выставляем показания на экраны
050
PUSK =
false
;
051
///////////
052
}
053
054
void
loop
()
055
{
056
fun_B();
//выставляем показания на экраны
057
delay(t);
058
}
059
////////////////////////////
060
////////////////////////////
061
///////////////////////////
062
void
dis_1() {
//функции обновления изображений на экранах
063
digitalWrite(disp_1, HIGH); myOLED.update(); digitalWrite(disp_1, LOW); myOLED.clrScr();
// очищаем дисплей
064
}
065
void
dis_2() {
066
digitalWrite(disp_2, HIGH); myOLED.update(); digitalWrite(disp_2, LOW); myOLED.clrScr();
// очищаем дисплей
067
}
068
void
dis_3() {
069
digitalWrite(disp_3, HIGH); myOLED.update(); digitalWrite(disp_3, LOW); myOLED.clrScr();
// очищаем дисплей
070
}
071
/////////////////////////
072
void
fun_B() {
073
////////////
074
time.gettime();
//
075
sekundi=time.seconds*2*PI/60.0;
//
076
minuti=time.minutes*2*PI/60.0;
//
077
tcshasi=time.hours*2*PI/12.0+minuti/12.0 ;
//
078
for
(
float
i = 0; i < 2 * PI - 0.01; i = i + PI / 6) {
// рисуем окружности-риски по эллипсу
079
myOLED.drawCircle( 63 + cos(i)*dlina_1, 32 + sin(i)*dlina_2, 3);
//
080
}
081
myOLED.drawLine(63,32,63 + cos(sekundi - PI / 2) * (dlina_1), 32 + sin(sekundi - PI / 2)* (dlina_2));
//секундная стрелка рисуется
082
myOLED.drawLine(63 + cos(minuti-0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(minuti-0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(minuti - PI / 2) * (dlina_1*1.1), 32 + sin(minuti - PI / 2) * (dlina_2*1.1));
//минутная стрелка рисуется
083
myOLED.drawLine(63 + cos(minuti+0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(minuti+0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(minuti - PI / 2) * (dlina_1), 32 + sin(minuti - PI / 2) * (dlina_2));
//минутная стрелка рисуется
084
myOLED.drawLine(63 + cos(tcshasi-0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(tcshasi-0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(tcshasi - PI / 2) * (dlina_1*0.5), 32 + sin(tcshasi - PI / 2) * (dlina_2*0.5));
//часовая стрелка рисуется
085
myOLED.drawLine(63 + cos(tcshasi+0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(tcshasi+0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(tcshasi - PI / 2) * (dlina_1*0.5), 32 + sin(tcshasi - PI / 2) * (dlina_2*0.5));
//часовая стрелка рисуется
086
myOLED.drawCircle( 63, 32, 4);
//точка крепления стрелки
087
dis_3();
088
///////////
089
if
(sekundi==0 || PUSK){
090
if
(time.month==1||time.month==3||time.month==5||time.month==7||time.month==8||time.month==10||time.month==12){N=31;}
else
{
if
(time.month==2){N=28;}
else
{N=30;}}
//условия определения числа дней в месяцах
091
int
D=time.day;
//число месяца
092
int
Dn=time.weekday;
if
(Dn==0){Dn=7;}
//день недели определяем и переводим в интервал 1-7
093
for
(
int
i=D-1;i>=1;i--){Dn=Dn-1;
if
(Dn==0){Dn=7;}}
//определяем день недели для первого числа (от 1 до 7 результат пн.-вс.)
094
int
k=Dn-2;
095
096
for
(
int
i=0;i<6;i++){
//вертикаль
097
for
(
int
j=0;j<7;j++){
//горизонталь
098
if
(j-k+7*i<=N&&j-k+7*i>0){ myOLED. printNumI(j-k+7*i, j*18, i*11);}
//
099
if
(j-k+7*i==D){ myOLED.drawCircle( j*18+6, i*11+4,8);}
//
100
}
101
}
102
dis_1();
103
////////////
104
Dn=time.weekday;
if
(Dn==0){Dn=7;}
//день недели определяем и переводим в интервал 1-7
105
if
(Dn==1){ myOLED.print(
"GJYTLTKMYBR"
, 30, 20);}
// название дня недели
106
if
(Dn==2){ myOLED.print(
" DNJHYBR"
, 30, 20);}
107
if
(Dn==3){ myOLED.print(
" CHTLF"
, 30, 20);}
108
if
(Dn==4){ myOLED.print(
" XTNDTHU"
, 30, 20);}
109
if
(Dn==5){ myOLED.print(
" GZNYBWF"
, 30, 20);}
110
if
(Dn==6){ myOLED.print(
" CE,,JNF"
, 30, 20);}
111
if
(Dn==7){ myOLED.print(
"DJCRHTCTYMT"
, 30, 20);}
112
if
(time.month==1){ myOLED.print(
"ZYDFHZ"
, 60, 40);}
//название месяца
113
if
(time.month==2){ myOLED.print(
"ATDHFKZ"
, 60, 40);}
114
if
(time.month==3){ myOLED.print(
"VFHNF"
, 60, 40);}
115
if
(time.month==4){ myOLED.print(
"FGHTKZ"
, 60, 40);}
116
if
(time.month==5){ myOLED.print(
"VFZ"
, 60, 40);}
117
if
(time.month==6){ myOLED.print(
"B.YZ"
, 60, 40);}
118
if
(time.month==7){ myOLED.print(
"B.KZ"
, 60, 40);}
119
if
(time.month==8){ myOLED.print(
"FDUECNF"
, 60, 40);}
120
if
(time.month==9){ myOLED.print(
"CTYNZ,HZ"
, 60, 40);}
121
if
(time.month==10){ myOLED.print(
"JRNZ,HZ"
, 60, 40);}
122
if
(time.month==11){ myOLED.print(
"YJZ,HZ"
, 60, 40);}
123
if
(time.month==12){ myOLED.print(
"LTRF,HZ"
, 60, 40);}
124
myOLED.drawRoundRect(5, 5, 122, 59);
//рамка
125
dis_2();
126
}
127
}
Почему ж нельзя? Она просто пишет в регистры новые значения. Ей без разницы - из лупа или из майна.
Циклы и массивы строк (DOW/Month) придадут коду стройности.
Ещё можно в пятницу 13-го выводить жуткий циферблат, а 1-го апреля время отображать по рандомайзу.
001
///////////// ЧАСЫ ТЕМАТИЧЕСКИЕ НА 3 ДИСПЛЕЯХ
002
003
#include <OLED_I2C.h>
004
OLED myOLED(SDA, SCL);
005
#define disp_1 12 // управляющие дисплееями выводы
006
#define disp_2 11
007
#define disp_3 10
008
/////////////
009
#include <iarduino_RTC.h>
010
iarduino_RTC time(RTC_DS3231);
011
//SDA - A4 //SCL - A5 //ПОДКЛЮЧЕНИЕ ВЫВОДОВ МОДУЛЯ ВРЕМЕНИ
012
String cmd1 =
""
;
//перменнные для хранения значений текущего времени
013
int
K;
//
014
////////////////
015
/////////////////
016
byte
TEMA=0;
//ФЛАГ ВЫБОРА ТЕМЫ ОТОБРАЖЕНИЯ
017
/////////////////
018
////////////////
019
float
minuti = 0.00;
//пременные хранения углов
020
float
tcshasi = 0.00;
//
021
float
sekundi = 0.00;
//
022
023
int
dlina_1 = 60;
//задаём геометрию-форму часов
024
int
dlina_2 = 28;
025
bool
PUSK =
true
;
//флаг для начального включения-обновления данных всех экранов
026
int
N=31;
//переменная числа дней в месяце
027
///////////
028
int
t = 222;
// пауза между считыванием данных по времени с модуля
029
extern
uint8_t BigZif_0_9[];
//внебиблиотечные цифры - самопальный шрифт, добавленный в библиотеку экранчика
030
extern
uint8_t SmallZif_0_9[];
//внебиблиотечные цифры - самопальный шрифт, добавленный в библиотеку экранчика
031
extern
uint8_t RusFont[];
032
extern
uint8_t MegaNumbers[];
033
034
void
setup
()
035
{
036
delay(50);
037
pinMode(7, INPUT);
//кнопку подключить
038
digitalWrite(7, HIGH);
// включить подтягивающий резистор к ней
039
////// подключение всех дисплеев
040
pinMode(disp_1, OUTPUT);
041
digitalWrite(disp_1, HIGH);
042
myOLED.begin();
043
digitalWrite(disp_1, LOW);
044
delay(50);
045
//////
046
pinMode(disp_2, OUTPUT);
047
digitalWrite(disp_2, HIGH);
048
myOLED.begin();
049
digitalWrite(disp_2, LOW);
050
delay(50);
051
////////
052
pinMode(disp_3, OUTPUT);
053
digitalWrite(disp_3, HIGH);
054
myOLED.begin();
055
digitalWrite(disp_3, LOW);
056
delay(50);
057
/////////////
058
time.begin();
059
////////начальная установка часов////////
060
//time.settime(0,58,18,20,8,19,2); // 0 сек, 58 мин, 18 час, 20, АВГУСТА, 2019 года, ВТОРНИК (раскомментить, выставить желаемое, загрузить скетч, закомментить,загрузить скетч)
061
/////////////
062
myOLED.setFont(BigZif_0_9);
//внебиблиотечные цифры - самопальный шрифт
063
tschasi();
064
}
065
066
void
loop
()
067
{
068
//////////////////////////////////////////////////////////////////////////////////////
069
if
(digitalRead (7)==LOW){
//если нажата кнопка 7 вывода
070
TEMA++;
if
(TEMA==4){TEMA=0;}
071
if
(TEMA==0){ myOLED.setFont(BigZif_0_9); tschasi();}
072
if
(TEMA==1){PUSK =
true
;myOLED.setFont(RusFont);fun_();PUSK =
false
;}
073
if
(TEMA==2){PUSK =
true
;myOLED.setFont(RusFont);fun_B();PUSK =
false
;}
074
if
(TEMA==3){PUSK =
true
;myOLED.setFont(MegaNumbers);fun_C();PUSK =
false
;}
075
delay(50);
076
}
077
//////////////////////////////////////////////////////////////////////////////////////
078
if
(TEMA==0){
079
////////////////////
080
cmd1 = time.gettime(
"s"
);
int
P = cmd1.substring(0, 2).toInt();
081
K = cmd1.substring(0, 1).toInt();
082
myOLED.setFont(SmallZif_0_9);
//внебиблиотечные цифры - самопальный шрифт
083
myOLED. printNumI(K, 0, 0);
//десятки секунд
084
K = cmd1.substring(1).toInt();
085
myOLED.printNumI( K, 48, 0);
//единицы секунд
086
myOLED.drawLine(0, 49, 96, 49);
//разделительная линия
087
myOLED.setFont(BigZif_0_9);
//внебиблиотечные цифры - самопальный шрифт
088
dis_1();
089
////
090
if
(P == 0) {
091
tschasi();
092
}
093
}
094
/////////////////////////////////////////////////////////////////////////////////////////
095
if
(TEMA==1){myOLED.setFont(RusFont);fun_();}
//выставляем показания на экраны
096
/////////////////////////////////////////////////////////////////////////////////////////
097
if
(TEMA==2){myOLED.setFont(RusFont);fun_B();}
//выставляем показания на экраны
098
/////////////////////////////////////////////////////////////////////////////////////////
099
if
(TEMA==3){myOLED.setFont(MegaNumbers);fun_C();}
//выставляем показания на экраны
100
///////////////////////////////////////////////////////////////////////////////////////
101
delay(t);
102
103
104
}
105
////////////////////////////
106
////////////////////////////
107
///////////////////////////
108
void
dis_1() {
//функции обновления изображений на экранах
109
digitalWrite(disp_1, HIGH); myOLED.update(); digitalWrite(disp_1, LOW); myOLED.clrScr();
// очищаем дисплей
110
}
111
void
dis_2() {
112
digitalWrite(disp_2, HIGH); myOLED.update(); digitalWrite(disp_2, LOW); myOLED.clrScr();
// очищаем дисплей
113
}
114
void
dis_3() {
115
digitalWrite(disp_3, HIGH); myOLED.update(); digitalWrite(disp_3, LOW); myOLED.clrScr();
// очищаем дисплей
116
}
117
///////////////////////// ТЕМА 1 "ОСНОВНАЯ"
118
///////////////////////// функция прорисовки часов
119
void
tschasi() {
120
cmd1 = time.gettime(
"H"
); K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0);
//десятки часов
121
K = cmd1.substring(1).toInt(); myOLED.printNumI( K, 63, 0);
//единицы часов
122
myOLED.drawLine(127, 0, 127, 63);
//разделительная линия
123
dis_3();
124
////
125
cmd1 = time.gettime(
"i"
); K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0);
//десятки минут
126
K = cmd1.substring(1).toInt(); myOLED.printNumI( K, 63, 0);
//единицы минут
127
myOLED.drawLine(0, 0, 0, 63); myOLED.drawLine(127, 0, 127, 63);
//разделительные линии
128
dis_2();
129
130
}
131
///////////////
132
///////////////////////// функция рисования стрелки ////////////////////////////////
133
void
primitiv_1(
int
x,
int
y,
int
r1,
int
r2,
int
n,
float
rotor) {
//x,y координаты центра фигуры; r1,r2 радиусы зубцов и впадин фигуры; n число зубцов;rotor угол поворота фигуры
134
for
(
float
i = 0 + rotor; i < 1 * PI + rotor; i = i + 2 * PI / n) {
135
myOLED.drawLine(x + r1 * cos(i) , y + r1 * sin(i), x + r2 * cos(i + PI / n) , y + r2 * sin(i + PI / n) );
136
myOLED.drawLine(x + r2 * cos(i + PI / n) , y + r2 * sin(i + PI / n), x + r1 * cos(i + 2 * PI / n) , y + r1 * sin(i + 2 * PI / n));
137
}
138
}
139
////////////////////////// ТЕМА 2 "СТИЛЬНАЯ"
140
///////////////////////// функция рисования прибора-шкалы //////////////////////////
141
void
pribor_ (String str,
int
x1,
int
y1,
int
n1,
float
rotor1,
float
pologenie) {
//str название шкалы; x1,y1 координаты положения центра; n1 число делений; rotor1 начальный угол положения стрелки; pologenie угол указанного положения стрелки
142
for
(
int
i = 22; i < 29; i++) {
143
primitiv_1(x1, y1, 7, i, 2, (2 * PI / n1)*pologenie + rotor1);
//стрелка
144
}
145
for
(
int
i = 6; i < 9; i++) {
146
myOLED.drawCircle(x1, y1, i);
147
}
148
149
myOLED.drawCircle(x1 - 1, y1 - 1, 30);
//шкала
150
for
(
float
i = 0; i < 2 * PI; i = i + 2 * PI / n1) {
151
if
(i >= PI / 2 && i < PI / 2 + 2 * PI / n1) {
152
myOLED.drawLine(x1 - 15 * cos(i), y1 - 15 * sin(i), x1 - 30 * cos(i), y1 - 30 * sin(i));
153
}
else
{
154
myOLED.drawLine(x1 - 25 * cos(i), y1 - 25 * sin(i), x1 - 30 * cos(i), y1 - 30 * sin(i));
155
}
156
}
157
myOLED.print(str, x1 - 10, y1 + 15);
// название шкалы
158
}
159
////////////////////// функция выставления значений времени по шкалам
160
void
fun_() {
161
time.gettime();
//
162
pribor_(
"CTR"
, 31, 32, 12, -PI, time.seconds / 5.0);
// шкала секунд
163
pribor_(
"LTY"
, 97, 32, 7, -PI + 0.2, time.weekday);
//шкала дня недели
164
dis_2();
//обработка и обновление данных на 2 индикаторе
165
if
(time.seconds == 0 || PUSK) {
166
pribor_(
"XFC"
, 31, 32, 12, -PI, time.hours + time.minutes / 60.0);
//шкала часов
167
pribor_(
"VBY"
, 97, 32, 12, -PI, time.minutes / 5.0 + time.seconds / 300.0);
// шкала минут
168
dis_3();
//обработка и обновление данных на 3 индикаторе
169
}
170
if
((time.Hours == 0 && time.minutes == 0 && time.seconds == 0) || PUSK) {
171
pribor_(
"XBC"
, 31, 32, 31, -PI, time.day);
//шкала числа месяца
172
pribor_(
"VTC"
, 97, 32, 12, -PI, time.month);
// шкала месяца года
173
dis_1();
//обработка и обновление данных на 1 индикаторе
174
}
175
}
176
///////////////////////////// ТЕМА 3 "УНИВЕРСАЛЬНАЯ"
177
/////////////////////////
178
void
fun_B() {
179
////////////
180
time.gettime();
//
181
sekundi=time.seconds*2*PI/60.0;
//
182
minuti=time.minutes*2*PI/60.0;
//
183
tcshasi=time.hours*2*PI/12.0+minuti/12.0 ;
//
184
for
(
float
i = 0; i < 2 * PI - 0.01; i = i + PI / 6) {
// рисуем окружности-риски по эллипсу
185
myOLED.drawCircle( 63 + cos(i)*dlina_1, 32 + sin(i)*dlina_2, 3);
//
186
}
187
myOLED.drawLine(63,32,63 + cos(sekundi - PI / 2) * (dlina_1), 32 + sin(sekundi - PI / 2)* (dlina_2));
//секундная стрелка рисуется
188
myOLED.drawLine(63 + cos(minuti-0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(minuti-0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(minuti - PI / 2) * (dlina_1*1.1), 32 + sin(minuti - PI / 2) * (dlina_2*1.1));
//минутная стрелка рисуется
189
myOLED.drawLine(63 + cos(minuti+0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(minuti+0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(minuti - PI / 2) * (dlina_1), 32 + sin(minuti - PI / 2) * (dlina_2));
//минутная стрелка рисуется
190
myOLED.drawLine(63 + cos(tcshasi-0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(tcshasi-0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(tcshasi - PI / 2) * (dlina_1*0.5), 32 + sin(tcshasi - PI / 2) * (dlina_2*0.5));
//часовая стрелка рисуется
191
myOLED.drawLine(63 + cos(tcshasi+0.5 - PI / 2) * (dlina_1*0.15), 32 + sin(tcshasi+0.5 - PI / 2) * (dlina_2*0.15) , 63 + cos(tcshasi - PI / 2) * (dlina_1*0.5), 32 + sin(tcshasi - PI / 2) * (dlina_2*0.5));
//часовая стрелка рисуется
192
myOLED.drawCircle( 63, 32, 4);
//точка крепления стрелки
193
dis_3();
194
///////////
195
if
(sekundi==0 || PUSK){
196
if
(time.month==1||time.month==3||time.month==5||time.month==7||time.month==8||time.month==10||time.month==12){N=31;}
else
{
if
(time.month==2){N=28;}
else
{N=30;}}
//условия определения числа дней в месяцах
197
int
D=time.day;
//число месяца
198
int
Dn=time.weekday;
if
(Dn==0){Dn=7;}
//день недели определяем и переводим в интервал 1-7
199
for
(
int
i=D-1;i>=1;i--){Dn=Dn-1;
if
(Dn==0){Dn=7;}}
//определяем день недели для первого числа (от 1 до 7 результат пн.-вс.)
200
int
k=Dn-2;
201
202
for
(
int
i=0;i<6;i++){
//вертикаль
203
for
(
int
j=0;j<7;j++){
//горизонталь
204
if
(j-k+7*i<=N&&j-k+7*i>0){ myOLED. printNumI(j-k+7*i, j*18, i*11);}
//
205
if
(j-k+7*i==D){ myOLED.drawCircle( j*18+6, i*11+4,8);}
//
206
}
207
}
208
dis_1();
209
////////////
210
Dn=time.weekday;
if
(Dn==0){Dn=7;}
//день недели определяем и переводим в интервал 1-7
211
if
(Dn==1){ myOLED.print(
"GJYTLTKMYBR"
, 30, 20);}
// название дня недели
212
if
(Dn==2){ myOLED.print(
" DNJHYBR"
, 30, 20);}
213
if
(Dn==3){ myOLED.print(
" CHTLF"
, 30, 20);}
214
if
(Dn==4){ myOLED.print(
" XTNDTHU"
, 30, 20);}
215
if
(Dn==5){ myOLED.print(
" GZNYBWF"
, 30, 20);}
216
if
(Dn==6){ myOLED.print(
" CE,,JNF"
, 30, 20);}
217
if
(Dn==7){ myOLED.print(
"DJCRHTCTYMT"
, 30, 20);}
218
if
(time.month==1){ myOLED.print(
"ZYDFHZ"
, 60, 40);}
//название месяца
219
if
(time.month==2){ myOLED.print(
"ATDHFKZ"
, 60, 40);}
220
if
(time.month==3){ myOLED.print(
"VFHNF"
, 60, 40);}
221
if
(time.month==4){ myOLED.print(
"FGHTKZ"
, 60, 40);}
222
if
(time.month==5){ myOLED.print(
"VFZ"
, 60, 40);}
223
if
(time.month==6){ myOLED.print(
"B.YZ"
, 60, 40);}
224
if
(time.month==7){ myOLED.print(
"B.KZ"
, 60, 40);}
225
if
(time.month==8){ myOLED.print(
"FDUECNF"
, 60, 40);}
226
if
(time.month==9){ myOLED.print(
"CTYNZ,HZ"
, 60, 40);}
227
if
(time.month==10){ myOLED.print(
"JRNZ,HZ"
, 60, 40);}
228
if
(time.month==11){ myOLED.print(
"YJZ,HZ"
, 60, 40);}
229
if
(time.month==12){ myOLED.print(
"LTRF,HZ"
, 60, 40);}
230
myOLED.drawRoundRect(5, 5, 122, 59);
//рамка
231
dis_2();
232
}
233
}
234
///////////////// ТЕМА 4 "ЛАКОНИЧНАЯ"
235
//////////////////////////////////////////////
236
void
fun_C() {
237
////////////
238
time.gettime();
//
239
if
(time.seconds==0 || PUSK){
240
if
(time.Hours<10) {myOLED. printNumI(0,10,10);myOLED. printNumI(time.Hours,35,10);}
else
{myOLED. printNumI(time.Hours,10,10);}
//
241
myOLED.drawCircle( 66, 20, 3); myOLED.drawCircle( 66, 40, 3);
//точки
242
if
(time.minutes<10) {myOLED. printNumI(0,75,10);myOLED. printNumI(time.minutes,100,10);}
else
{myOLED. printNumI(time.minutes,75,10);}
//
243
dis_2(); dis_1(); dis_3();
244
}
245
}
246
//////////////////////////////////////////////
Добавил 4 тему и кнопку перебора тем, объединил в один скетч, почти 90 процентов памяти занял. Влезет ещё 1-2 темы :-)
Да, верно, наверное надо подумать об особой - праздничной теме, 1 апреля, день рождения владельцев или влюблённых день, или пятница 13.
В зависимости от выбранной темы потребляет конструкция 20-30мА. Можно и подумать о вариантах снижения потребления :-(
Периодическая сборка-разборка макета часов показала неожиданную досаду! Модуль часов реального времени, со вставленной литиевой батарейкой отстал от часов на ПК на 20 секунд за 40 суток! Как так?
То есть теперь надо как то изгаляться, писать 5 тему для возможности редактирования отображаемого времени - одной кнопкой. Больше кнопок добавлять не хочется и типов нажатий тоже. Как логику темы построить?
Может записать __TIME__? И сменить батарейку.
01
#include <iarduino_RTC.h> // Подключаем библиотеку
02
iarduino_RTC watch(RTC_DS1307);
// Объявляем объект watch для модуля на базе чипа DS1307
03
//
04
// Определяем системное время: // Время загрузки скетча.
05
const
char
* strM=
"JanFebMarAprMayJunJulAugSepOctNovDec"
;
// Определяем массив всех вариантов текстового представления текущего месяца.
06
const
char
* sysT=__TIME__;
// Получаем время компиляции скетча в формате "SS:MM:HH".
07
const
char
* sysD=__DATE__;
// Получаем дату компиляции скетча в формате "MMM:DD:YYYY", где МММ - текстовое представление текущего месяца, например: Jul.
08
// Парсим полученные значения sysT и sysD в массив i: // Определяем массив «i» из 6 элементов типа int, содержащий следующие значения: секунды, минуты, часы, день, месяц и год компиляции скетча.
09
const
int
i[6] {(sysT[6]-48)*10+(sysT[7]-48), (sysT[3]-48)*10+(sysT[4]-48), (sysT[0]-48)*10+(sysT[1]-48), (sysD[4]-48)*10+(sysD[5]-48), ((
int
)memmem(strM,36,sysD,3)+3-(
int
)&strM[0])/3, (sysD[9]-48)*10+(sysD[10]-48)};
10
//
11
void
setup
() {
12
Serial
.begin(9600);
// Инициируем передачу данных в монитор последовательного порта
13
watch.begin();
// Инициируем RTC модуль
14
watch.settime(i[0],i[1],i[2],i[3],i[4],i[5]);
// Устанавливаем время в модуль: i[0] сек, i[1] мин, i[2] час, i[3] день, i[4] месяц, i[5] год, без указания дня недели.
15
// watch.settime(i[0],i[1],i[2],i[3],i[4],i[5], 2); // Можно установить время с указанием дня недели, где последний параметр, это день недели (указывается вручную) в формате: 0-воскресенье, 1-понедельник, ... , 6-суббота.
16
}
17
void
loop
(){
18
if
(millis()%1000==0){
// Если прошла 1 секунда
19
Serial
.println(watch.gettime(
"d-m-Y, H:i:s, D"
));
// Выводим время в монитор, одной строкой
20
delay(2);
// Приостанавливаем скетч на 2 мс.
21
}
22
}
Я не нашёл подробное описание функции, только такой пример. Не совсем ясно, можно этот "тайм" вызывать при подключении к пк - по кнопке и переустанавливать время?
Делаю так.
01
uint8_t bcd_clock[CLOCK_SIZE];
//packed BCD
02
03
04
static
uint8_t conv2bcd(
const
char
* p) {
05
uint8_t v = 0;
06
if
(*p >=
'0'
&& *p <=
'9'
)
07
v = *p -
'0'
;
08
return
(v << 4) | (*++p -
'0'
);
09
}
10
11
12
// Set the compiler's time: setClock(__DATE__, __TIME__);
13
void
setClock(
const
char
* date,
const
char
* time) {
14
// sample input: date = "Dec 26 2009", time = "12:34:56"
15
// clock[YEAR] = conv2bcd(date + 9);
16
// Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
17
uint8_t m = 0x12;
//wo case 'D'
18
switch
(date[0]) {
19
case
'J'
: m = (date[1] ==
'a'
) ? 1 : ((date[2] ==
'n'
) ? 6 : 7);
break
;
20
case
'F'
: m = 2;
break
;
21
case
'A'
: m = date[2] ==
'r'
? 4 : 8;
break
;
22
case
'M'
: m = date[2] ==
'r'
? 3 : 5;
break
;
23
case
'S'
: m = 9;
break
;
24
case
'O'
: m = 0x10;
break
;
25
case
'N'
: m = 0x11;
break
;
26
// case 'D': m = 0x12; break;
27
}
28
bcd_clock[YEAR] = conv2bcd(date + 9);
29
bcd_clock[MONTH] = m;
30
bcd_clock[DAY] = conv2bcd(date + 4);
31
bcd_clock[HOUR] = conv2bcd(time);
32
bcd_clock[MINUTE] = conv2bcd(time + 3);
33
bcd_clock[SECOND] = conv2bcd(time + 6);
34
bcd_clock[DAY_OF_WEAK] = CUR_DAY_OF_WEAK;
35
ds1307Buf2Clock(bcd_clock);
36
}
какой функции не нашел, _TIME_ ? :)
Это не функция, это макрос, эта строчка при компиляции заменяется текущим временем компиляции.
Из этого следует (для любого программиста очевидно :). что никак этот _TIME_ вызывать нельзя :) Точнее, вставить-то в функцию его можно, только время в нем будет всегда одно и тоже - время компиляции
Человеку как раз и надо ОДНАЖДЫ установить время.)
Человеку как раз и надо ОДНАЖДЫ установить время.)
судя по его вопросу - совсем нет, он хочет вызывать по кнопке - а значит многократно
можно этот "тайм" вызывать при подключении к пк - по кнопке и переустанавливать время?
Иногда делал установку из терминала, типа: 2109261127.)
Как бы, можно написать программулину на ПК, которая бы слала системное время в ком-порт. Но её ведь ещё и запускать надо.
Понял ваши объяснения. Просто думал, функция библиотеки это - послал запрос: получил ответ:-)
Тогда, как вариант, но делать не буду :-) послал время со смартфона через блютуз. Так я уже делал, надо поискать и вспомнить, а вот с кнопкой одной ещё не пробовал.
Тогда, как вариант, но делать не буду :-) послал время со смартфона через блютуз.
тогда уж просто коррекцию времени по сети через есп8266 - не дороже БТ, но много функциональнее
Нее, из схемы выходить не хочу, одна кнопка и всё :-)
Была мысль по совету Григория из 14 поста - прикрутить пьезоизлучатель, чтоб в нужный день играть "хеппи бёздей туюю", но... нет.
Нее, из схемы выходить не хочу, одна кнопка и всё :-)
Так и одной кнопкой можно делать установку. Не очень удобно, но можно. Не так это часто требуется.
Вот я и спрашиваю как логику работы сделать?, имея возможность только нажатий (без коротких и длинных). С ходу в голове не придумывается сценарий.
Как это без "коротких и длинных"?
1
if
(digitalRead (7)==LOW){
//если нажата кнопка 7 вывода
2
TEMA++;
if
(TEMA==4){TEMA=0;}
3
if
(TEMA==0){ myOLED.setFont(BigZif_0_9); tschasi();}
4
if
(TEMA==1){PUSK =
true
;myOLED.setFont(RusFont);fun_();PUSK =
false
;}
5
if
(TEMA==2){PUSK =
true
;myOLED.setFont(RusFont);fun_B();PUSK =
false
;}
6
if
(TEMA==3){PUSK =
true
;myOLED.setFont(MegaNumbers);fun_C();PUSK =
false
;}
7
delay(50);
8
}
Вот так примерно.
А словами никак? ТЕМА, tschasi, PUSK... Ужос!
Длинное нажатие - следующая цифра, короткое - крутим по кругу. 2х2.
:-)
В этой кнопке всё просто: короткое нажатие - переход на следующую тему, долгое нажатие - переходы на следующие темы, нажатие просто - закольцованный переход между темами. Теперь в эту гармонию надо добавить 5-ю тему, а в неё надо вставить ещё одну гармонию, только перебирающую-выставляющую новое значение времени. Делов то :-), только как оптимально сделать?
Ну, между темами вы же как то переходите. А теперь нужно вставить в 5-й теме вход в настройки. Ну, а дальше я уже расписал.
С одной кнопкой, обычно определяются короткие, длинные и очень длинные нажатия. Как вариант. В некоторых случаях двойные нажатия, на любителя.
Доп значки на дисплей в каком режиме находишься.
Ну это уже user friendly интерфейс.)
Доп значки на дисплей в каком режиме находишься.
Да, весь трёхглазый дисплей думаю задействовать для отображения процесса в теме " №5 установка времени".
Пока выдумывается такой сценарий: при очередном нажатии кнопки переходим в тему 5 - экран соответственно рисуется, далее ожидание-таймер на 5-10 сек. Если нажимаем кнопку до срабатывания, то переходим вновь к теме №1, иначе запускается процедура установки нового значения времени... Дальше пока не придумал.
Вы это людЯм объясните. То бишь, вы должны думать со стороны конечного пользователя, что бы ИМ было удобно, в первую очередь.
Вы это людЯм объясните. То бишь, вы должны думать со стороны конечного пользователя, что бы ИМ было удобно, в первую очередь.
Это да, так как библиотека iarduino_RTC от царя-гороха чуток поправил, чтобы можно было добавлять через менеджер библиотек ZIP файлом. Здесь же и библиотеку OLED_I2C форкнул и чуток поправил, заменил файл шрифтов и в коде явные логические ошибки.
Теперь обе можно поставить через менеджер библиотек подключив скачанные ZIP файлы.
Но осталось еще очень много предупреждений, помогайте, что еще там надо поправить?
01
Компиляция скетча...
02
"C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++"
-c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10809 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR
"-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.3\\cores\\arduino"
"-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.3\\variants\\eightanaloginputs"
"-IC:\\Users\\User\\Documents\\Arduino\\libraries\\OLED_I2C-master"
"-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.3\\libraries\\SPI\\src"
"-IC:\\Users\\User\\Documents\\Arduino\\libraries\\iarduino_RTC-master\\src"
"C:\\temp\\arduino_build_952248\\sketch\\CHASY_SSD1303-Multi.ino.cpp"
-o
"C:\\temp\\arduino_build_952248\\sketch\\CHASY_SSD1303-Multi.ino.cpp.o"
03
C:\Users\User\Documents\Arduino\2021\ALL\CHASY_SSD1303-Multi\CHASY_SSD1303-Multi.ino: In function
'void loop()'
:
04
05
C:\Users\User\Documents\Arduino\2021\ALL\CHASY_SSD1303-Multi\CHASY_SSD1303-Multi.ino:52:33: warning: ISO C++ forbids converting a
string
constant to
'char*'
[-Wwrite-strings]
06
07
String cmd1 = time.gettime(
"H"
);
int
K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0);
//десятки часов
08
09
^
10
11
C:\Users\User\Documents\Arduino\2021\ALL\CHASY_SSD1303-Multi\CHASY_SSD1303-Multi.ino:57:26: warning: ISO C++ forbids converting a
string
constant to
'char*'
[-Wwrite-strings]
12
13
cmd1 = time.gettime(
"i"
); K = cmd1.substring(0, 1).toInt(); myOLED. printNumI(K, 0, 0);
//десятки минут
14
15
^
16
17
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp: In member function
'char* iarduino_RTC::gettime(char*)'
:
18
19
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:44:47: warning: array subscript has type
'char'
[-Wchar-subscripts]
20
21
default
: RTC_char_RETURN[RTC_uint_RETURN]=RTC_enter_string[RTC_var_I]; RTC_uint_RETURN++;
22
23
^
24
25
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:46:38: warning: array subscript has type
'char'
[-Wchar-subscripts]
26
27
} RTC_char_RETURN[RTC_uint_RETURN]=
'\0'
;
28
29
^
30
31
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp: In member function
'void iarduino_RTC::gettime()'
:
32
33
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:58:41: warning: ISO C++ forbids converting a
string
constant to
'char*'
[-Wwrite-strings]
34
35
void
iarduino_RTC::gettime(){gettime(
""
);}
36
37
^
38
39
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp: In member function
'void iarduino_RTC::RTC_func_FILL_RESULTS(uint8_t, uint8_t)'
:
40
41
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:167:62: warning: array subscript has type
'char'
[-Wchar-subscripts]
42
43
/* 4 знака */
case
0: RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)%10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data%10+48; RTC_uint_RETURN++;
break
;
44
45
^
46
47
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:167:142: warning: array subscript has type
'char'
[-Wchar-subscripts]
48
49
/* 4 знака */
case
0: RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)%10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data%10+48; RTC_uint_RETURN++;
break
;
50
51
^
52
53
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:167:222: warning: array subscript has type
'char'
[-Wchar-subscripts]
54
55
/* 4 знака */
case
0: RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)%10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data%10+48; RTC_uint_RETURN++;
break
;
56
57
^
58
59
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:167:290: warning: array subscript has type
'char'
[-Wchar-subscripts]
60
61
/* 4 знака */
case
0: RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=(RTC_uint_CENTURY-1)%10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data%10+48; RTC_uint_RETURN++;
break
;
62
63
^
64
65
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:168:60: warning: array subscript has type
'char'
[-Wchar-subscripts]
66
67
/* 1 знак */
case
1: RTC_char_RETURN[RTC_uint_RETURN]=RTC_data+48; RTC_uint_RETURN++;
break
;
68
69
^
70
71
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:169:62: warning: array subscript has type
'char'
[-Wchar-subscripts]
72
73
/* 2 знака */
case
2: RTC_char_RETURN[RTC_uint_RETURN]=RTC_data/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data%10+48; RTC_uint_RETURN++;
break
;
74
75
^
76
77
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:169:130: warning: array subscript has type
'char'
[-Wchar-subscripts]
78
79
/* 2 знака */
case
2: RTC_char_RETURN[RTC_uint_RETURN]=RTC_data/10+48; RTC_uint_RETURN++; RTC_char_RETURN[RTC_uint_RETURN]=RTC_data%10+48; RTC_uint_RETURN++;
break
;
80
81
^
82
83
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:170:96: warning: array subscript has type
'char'
[-Wchar-subscripts]
84
85
/* AM / PM */
case
3:
if
(RTC_data< 4){
for
(
int
i=0; i<2; i++){RTC_char_RETURN[RTC_uint_RETURN]=RTC_char_MIDDAY[RTC_data][i]; RTC_uint_RETURN++;}}
break
;
86
87
^
88
89
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:171:102: warning: array subscript has type
'char'
[-Wchar-subscripts]
90
91
/* дн / мес */
case
4:
if
(RTC_data<19){
for
(
int
i=0; i<3; i++){RTC_char_RETURN[RTC_uint_RETURN]=RTC_char_DayMon[RTC_data][i]; RTC_uint_RETURN++;}}
break
;
92
93
^
94
95
C:\Users\User\Documents\Arduino\libraries\iarduino_RTC-master\src\iarduino_RTC.cpp:172:94: warning: array subscript has type
'char'
[-Wchar-subscripts]
96
97
/* пробелы */
case
5:
for
(
int
i=0; i<RTC_data; i++){RTC_char_RETURN[RTC_uint_RETURN]=32; RTC_uint_RETURN++;}
break
;
98
99
^
Теперь обе можно поставить через менеджер библиотек подключив скачанные ZIP файлы.
если библиотеки уже скачаны как ZIP - нафига еще менеджер? Кладешь в папку libraries и все
зачем нам это? Автор кода где? - пусть сам исправляет
lilik
Не думали заменить атмегу на esp8266? Тогда возможны 2 варианта по корректировке времени: либо периодический запрос NTP, либо простенькая веб-морда для настроек всего
Теперь обе можно поставить через менеджер библиотек подключив скачанные ZIP файлы.
если библиотеки уже скачаны как ZIP - нафига еще менеджер? Кладешь в папку libraries и все
зачем нам это? Автор кода где? - пусть сам исправляет
Троллишь?
Троллишь?
нет. Ни одну библиотеку в жизни не устанавливал через менеджер. Скачать Zip архивом проще
"Ты меня не тролль, ты меня не тролль..." Нештатные библиотеки размещаю в папке со скетчем. Особенно актуально для глупых юзеров.)
Троллишь?
нет. Ни одну библиотеку в жизни не устанавливал через менеджер. Скачать Zip архивом проще
только при установке через менеджер он сразу сообщит, что библиотека кривая, не соответствует стандарту и не установит, а так да, "можно сделать защиту от дурака но не от изобретательного"
менеджер сразу сообщит, что библиотека кривая, не соответствует стандарту и не установит
фигасе...
а нахера мне это надо, чтобы менеджер за меня решал, какие либы устанавливать, а какие нет?
и что такое "кривая либа" или "не соответвует стандарту"? - ни разу такого не видел
менеджер сразу сообщит, что библиотека кривая, не соответствует стандарту и не установит
фигасе...
а нахера мне это надо, чтобы менеджер за меня решал, какие либы устанавливать, а какие нет?
и что такое "кривая либа" или "не соответвует стандарту"? - ни разу такого не видел
видимо ПАТАМУШТА не писал библиотек, а вот DetSimen пришлось, я ему мозг немного повыносил и даже не налил, каюсь )))
видимо ПАТАМУШТА не писал библиотек, а вот DetSimen пришлось
Чесноговоря, мне абсолютно пох на то, встанет биб-ка в эту убогую IDE или нет, я ей не пользуюсь. Ты сам потом всякие keywords вставлял и прочую шнягу для "менеджера"
Чесноговоря, мне абсолютно пох на то, встанет биб-ка в эту убогую IDE или нет, я ей не пользуюсь. Ты сам потом всякие keywords вставлял и прочую шнягу для "менеджера"
думаю юзеры перебьются и без keywords... пусть сначала сами научаться писать либы. а потом претензии предъявляют :)
видимо ПАТАМУШТА не писал библиотек, а вот DetSimen пришлось
Чесноговоря, мне абсолютно пох на то, встанет биб-ка в эту убогую IDE или нет, я ей не пользуюсь. Ты сам потом всякие keywords вставлял и прочую шнягу для "менеджера"
было дело )))
PS а вот как собрать своё ядро на ГИТхабе по фэншую - не дошло, не в те папки IDE размещает