RGB LED cube 5x5x5  1.0
Martin Stejskal, Schmidt Dominik
 All Files Functions Variables Macros Groups Pages
anim_snake.c
Go to the documentation of this file.
1 
10 #include "anim_snake.h"
11 
12 /* Data format (binary data for framebuffer)
13  * |MSB| |LSB|MSB| |LSB|MSB| |LSB|
14  * +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
15  * | 0 | R | R | R | R | R | G | G | G | G | G | B | B | B | B | B |
16  * +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
17  *
18  * Instruction format (if MSB is 1, then it is possible change some settings)
19  * |MSB| |LSB|MSB| |LSB|MSB| |LSB|
20  * +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
21  * | 1 | C | C | C | C | C | C | C | V | V | V | V | V | V | V | V |
22  * +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
23  * C - command (0~127)
24  * V - value (0~255)
25  *
26  */
27 const uint16_t bin_anim_snake[] PROGMEM =
28  { // Serial stream of data
29  // Command start of animation + value (slowdown factor)
30  cmd_anim_start + 3,
31  //Data + other commands (body)
32  // Frame 0
33  0x1000,0x1000,0x1000,0x0000,0x0000,
34  0x0000,0x0000,0x0000,0x0000,0x0000,
35  0x0000,0x0000,0x0000,0x0000,0x0000,
36  0x0000,0x0000,0x0000,0x0000,0x0000,
37  0x0000,0x0000,0x0000,0x0000,0x0000,
38 
39 
40  // Frame 1
41  0x0000,0x1000,0x1000,0x1000,0x0000,
42  0x0000,0x0000,0x0000,0x0000,0x0000,
43  0x0000,0x0000,0x0000,0x0000,0x0000,
44  0x0000,0x0000,0x0000,0x0000,0x0000,
45  0x0000,0x0000,0x0000,0x0000,0x0000,
46 
47 
48  // Frame 2
49  0x0000,0x0000,0x1000,0x3000,0x0000,
50  0x0000,0x0000,0x0000,0x0000,0x0000,
51  0x0000,0x0000,0x0000,0x0000,0x0000,
52  0x0000,0x0000,0x0000,0x0000,0x0000,
53  0x0000,0x0000,0x0000,0x0000,0x0000,
54 
55 
56  // Frame 3
57  0x0000,0x0000,0x0000,0x7000,0x0000,
58  0x0000,0x0000,0x0000,0x0000,0x0000,
59  0x0000,0x0000,0x0000,0x0000,0x0000,
60  0x0000,0x0000,0x0000,0x0000,0x0000,
61  0x0000,0x0000,0x0000,0x0000,0x0000,
62 
63 
64  // Frame 4
65  0x0000,0x0000,0x0000,0x6000,0x0000,
66  0x0000,0x0000,0x0000,0x4000,0x0000,
67  0x0000,0x0000,0x0000,0x0000,0x0000,
68  0x0000,0x0000,0x0000,0x0000,0x0000,
69  0x0000,0x0000,0x0000,0x0000,0x0000,
70 
71 
72  // Frame 5
73  0x0000,0x0000,0x0000,0x4000,0x0000,
74  0x0000,0x0000,0x0000,0x4000,0x0000,
75  0x0000,0x0000,0x0000,0x4000,0x0000,
76  0x0000,0x0000,0x0000,0x0000,0x0000,
77  0x0000,0x0000,0x0000,0x0000,0x0000,
78 
79 
80  // Frame 6
81  0x0000,0x0000,0x0000,0x0000,0x0000,
82  0x0000,0x0000,0x0000,0x4000,0x0000,
83  0x0000,0x0000,0x0000,0x4000,0x0000,
84  0x0000,0x0000,0x0000,0x4000,0x0000,
85  0x0000,0x0000,0x0000,0x0000,0x0000,
86 
87 
88  // Frame 7
89  0x0000,0x0000,0x0000,0x0000,0x0000,
90  0x0000,0x0000,0x0000,0x0000,0x0000,
91  0x0000,0x0000,0x0000,0x4000,0x0000,
92  0x0000,0x0000,0x0000,0x4000,0x0000,
93  0x0000,0x0000,0x0000,0x4000,0x0000,
94 
95 
96  // Frame 8
97  0x0000,0x0000,0x0000,0x0000,0x0000,
98  0x0000,0x0000,0x0000,0x0000,0x0000,
99  0x0000,0x0000,0x0000,0x0000,0x0000,
100  0x0000,0x0000,0x0000,0x4000,0x0000,
101  0x0000,0x0000,0x0000,0x6000,0x0000,
102 
103 
104  // Frame 9
105  0x0000,0x0000,0x0000,0x0000,0x0000,
106  0x0000,0x0000,0x0000,0x0000,0x0000,
107  0x0000,0x0000,0x0000,0x0000,0x0000,
108  0x0000,0x0000,0x0000,0x0000,0x0000,
109  0x0000,0x0000,0x0000,0x7000,0x0000,
110 
111 
112  // Frame 10
113  0x0000,0x0000,0x0000,0x0000,0x0000,
114  0x0000,0x0000,0x0000,0x0000,0x0000,
115  0x0000,0x0000,0x0000,0x0000,0x0000,
116  0x0000,0x0000,0x0000,0x0000,0x0000,
117  0x0000,0x0000,0x0000,0x3800,0x0000,
118 
119 
120  // Frame 11
121  0x0000,0x0000,0x0000,0x0000,0x0000,
122  0x0000,0x0000,0x0000,0x0000,0x0000,
123  0x0000,0x0000,0x0000,0x0000,0x0000,
124  0x0000,0x0000,0x0000,0x0000,0x0000,
125  0x0000,0x0000,0x0000,0x1C00,0x0000,
126 
127 
128  // Frame 12
129  0x0000,0x0000,0x0000,0x0000,0x0000,
130  0x0000,0x0000,0x0000,0x0000,0x0000,
131  0x0000,0x0000,0x0000,0x0000,0x0000,
132  0x0000,0x0000,0x0000,0x0400,0x0000,
133  0x0000,0x0000,0x0000,0x0C00,0x0000,
134 
135 
136  // Frame 13
137  0x0000,0x0000,0x0000,0x0000,0x0000,
138  0x0000,0x0000,0x0000,0x0000,0x0000,
139  0x0000,0x0000,0x0000,0x0400,0x0000,
140  0x0000,0x0000,0x0000,0x0400,0x0000,
141  0x0000,0x0000,0x0000,0x0400,0x0000,
142 
143 
144  // Frame 14
145  0x0000,0x0000,0x0000,0x0000,0x0000,
146  0x0000,0x0000,0x0000,0x0000,0x0000,
147  0x0000,0x0000,0x0400,0x0400,0x0000,
148  0x0000,0x0000,0x0000,0x0400,0x0000,
149  0x0000,0x0000,0x0000,0x0000,0x0000,
150 
151 
152  // Frame 15
153  0x0000,0x0000,0x0000,0x0000,0x0000,
154  0x0000,0x0000,0x0000,0x0000,0x0000,
155  0x0000,0x0600,0x0400,0x0400,0x0000,
156  0x0000,0x0000,0x0000,0x0000,0x0000,
157  0x0000,0x0000,0x0000,0x0000,0x0000,
158 
159 
160  // Frame 16
161  0x0000,0x0000,0x0000,0x0000,0x0000,
162  0x0000,0x0000,0x0000,0x0000,0x0000,
163  0x0000,0x0E00,0x0400,0x0000,0x0000,
164  0x0000,0x0000,0x0000,0x0000,0x0000,
165  0x0000,0x0000,0x0000,0x0000,0x0000,
166 
167 
168  // Frame 17
169  0x0000,0x0000,0x0000,0x0000,0x0000,
170  0x0000,0x0000,0x0000,0x0000,0x0000,
171  0x0000,0x1E00,0x0000,0x0000,0x0000,
172  0x0000,0x0000,0x0000,0x0000,0x0000,
173  0x0000,0x0000,0x0000,0x0000,0x0000,
174 
175 
176  // Frame 18
177  0x0000,0x0000,0x0000,0x0000,0x0000,
178  0x0000,0x0000,0x0000,0x0000,0x0000,
179  0x0000,0x3A00,0x0000,0x0000,0x0000,
180  0x0000,0x0000,0x0000,0x0000,0x0000,
181  0x0000,0x0000,0x0000,0x0000,0x0000,
182 
183 
184  // Frame 19
185  0x0000,0x0000,0x0000,0x0000,0x0000,
186  0x0000,0x0000,0x0000,0x0000,0x0000,
187  0x0000,0x7A00,0x0000,0x0000,0x0000,
188  0x0000,0x0000,0x0000,0x0000,0x0000,
189  0x0000,0x0000,0x0000,0x0000,0x0000,
190 
191 
192  // Frame 20
193  0x0000,0x0000,0x0000,0x0000,0x0000,
194  0x0000,0x4000,0x0000,0x0000,0x0000,
195  0x0000,0x7000,0x0000,0x0000,0x0000,
196  0x0000,0x0000,0x0000,0x0000,0x0000,
197  0x0000,0x0000,0x0000,0x0000,0x0000,
198 
199 
200  // Frame 21
201  0x0000,0x4000,0x0000,0x0000,0x0000,
202  0x0000,0x4000,0x0000,0x0000,0x0000,
203  0x0000,0x6000,0x0000,0x0000,0x0000,
204  0x0000,0x0000,0x0000,0x0000,0x0000,
205  0x0000,0x0000,0x0000,0x0000,0x0000,
206 
207 
208  // Frame 22
209  0x0000,0x4000,0x4000,0x0000,0x0000,
210  0x0000,0x4000,0x0000,0x0000,0x0000,
211  0x0000,0x4000,0x0000,0x0000,0x0000,
212  0x0000,0x0000,0x0000,0x0000,0x0000,
213  0x0000,0x0000,0x0000,0x0000,0x0000,
214 
215 
216  // Frame 23
217  0x0040,0x4000,0x4000,0x4000,0x0000,
218  0x0000,0x4000,0x0000,0x0000,0x0000,
219  0x0000,0x0000,0x0000,0x0000,0x0000,
220  0x0000,0x0000,0x0000,0x0000,0x0000,
221  0x0000,0x0000,0x0000,0x0000,0x0000,
222 
223 
224  // Frame 24
225  0x0040,0x4000,0x4000,0x6000,0x0000,
226  0x0000,0x0000,0x0000,0x0000,0x0000,
227  0x0000,0x0000,0x0000,0x0000,0x0000,
228  0x0000,0x0000,0x0000,0x0000,0x0000,
229  0x0000,0x0000,0x0000,0x0000,0x0000,
230 
231 
232  // Frame 25
233  0x0040,0x0000,0x4000,0x7000,0x0000,
234  0x0000,0x0000,0x0000,0x0000,0x0000,
235  0x0000,0x0000,0x0000,0x0000,0x0000,
236  0x0000,0x0000,0x0000,0x0000,0x0000,
237  0x0000,0x0000,0x0000,0x0000,0x0000,
238 
239 
240  // Frame 26
241  0x0040,0x0000,0x0000,0x7800,0x0000,
242  0x0000,0x0000,0x0000,0x0000,0x0000,
243  0x0000,0x0000,0x0000,0x0000,0x0000,
244  0x0000,0x0000,0x0000,0x0000,0x0000,
245  0x0000,0x0000,0x0000,0x0000,0x0000,
246 
247 
248  // Frame 27
249  0x0040,0x0000,0x0800,0x3800,0x0000,
250  0x0000,0x0000,0x0000,0x0000,0x0000,
251  0x0000,0x0000,0x0000,0x0000,0x0000,
252  0x0000,0x0000,0x0000,0x0000,0x0000,
253  0x0000,0x0000,0x0000,0x0000,0x0000,
254 
255 
256  // Frame 28
257  0x0040,0x0800,0x0800,0x1800,0x0000,
258  0x0000,0x0000,0x0000,0x0000,0x0000,
259  0x0000,0x0000,0x0000,0x0000,0x0000,
260  0x0000,0x0000,0x0000,0x0000,0x0000,
261  0x0000,0x0000,0x0000,0x0000,0x0000,
262 
263 
264  // Frame 29
265  0x0840,0x0800,0x0800,0x0800,0x0000,
266  0x0000,0x0000,0x0000,0x0000,0x0000,
267  0x0000,0x0000,0x0000,0x0000,0x0000,
268  0x0000,0x0000,0x0000,0x0000,0x0000,
269  0x0000,0x0000,0x0000,0x0000,0x0000,
270 
271 
272  // Frame 30
273  0x0800,0x0800,0x0800,0x0800,0x0000,
274  0x0800,0x0000,0x0000,0x0000,0x0000,
275  0x0000,0x0000,0x0000,0x0000,0x0000,
276  0x0000,0x0000,0x0000,0x0000,0x0000,
277  0x0000,0x0000,0x0000,0x0000,0x0000,
278 
279 
280  // Frame 31
281  0x0800,0x0800,0x0900,0x0000,0x0000,
282  0x0800,0x0000,0x0000,0x0000,0x0000,
283  0x0800,0x0000,0x0000,0x0000,0x0000,
284  0x0000,0x0000,0x0000,0x0000,0x0000,
285  0x0000,0x0000,0x0000,0x0000,0x0000,
286 
287 
288  // Frame 32
289  0x0800,0x0800,0x0100,0x0000,0x0000,
290  0x0800,0x0000,0x0000,0x0000,0x0000,
291  0x0800,0x0800,0x0000,0x0000,0x0000,
292  0x0000,0x0000,0x0000,0x0000,0x0000,
293  0x0000,0x0000,0x0000,0x0000,0x0000,
294 
295 
296  // Frame 33
297  0x0800,0x0000,0x0100,0x0000,0x0000,
298  0x0800,0x0000,0x0000,0x0000,0x0000,
299  0x0800,0x0800,0x0800,0x0000,0x0000,
300  0x0000,0x0000,0x0000,0x0000,0x0000,
301  0x0000,0x0000,0x0000,0x0000,0x0000,
302 
303 
304  // Frame 34
305  0x0000,0x0000,0x0100,0x0000,0x0000,
306  0x0800,0x0000,0x0000,0x0000,0x0000,
307  0x0800,0x0800,0x1800,0x0000,0x0000,
308  0x0000,0x0000,0x0000,0x0000,0x0000,
309  0x0000,0x0000,0x0000,0x0000,0x0000,
310 
311 
312  // Frame 35
313  0x0000,0x0000,0x0100,0x0000,0x0000,
314  0x0800,0x0000,0x0000,0x0000,0x0000,
315  0x0800,0x0800,0x3800,0x0000,0x0000,
316  0x0000,0x0000,0x0000,0x0000,0x0000,
317  0x0000,0x0000,0x0000,0x0000,0x0000,
318 
319 
320  // Frame 36
321  0x0000,0x0000,0x0100,0x0000,0x0000,
322  0x0000,0x0000,0x2000,0x0000,0x0000,
323  0x0800,0x0800,0x3800,0x0000,0x0000,
324  0x0000,0x0000,0x0000,0x0000,0x0000,
325  0x0000,0x0000,0x0000,0x0000,0x0000,
326 
327 
328  // Frame 37
329  0x0000,0x0000,0x2100,0x0000,0x0000,
330  0x0000,0x0000,0x2000,0x0000,0x0000,
331  0x0000,0x0800,0x3800,0x0000,0x0000,
332  0x0000,0x0000,0x0000,0x0000,0x0000,
333  0x0000,0x0000,0x0000,0x0000,0x0000,
334 
335 
336  // Frame 38
337  0x0000,0x0000,0x2000,0x2000,0x0000,
338  0x0000,0x0000,0x2000,0x0000,0x0000,
339  0x0000,0x0000,0x3800,0x0000,0x0000,
340  0x0000,0x0000,0x0000,0x0000,0x0000,
341  0x0000,0x0000,0x0000,0x0000,0x0000,
342 
343 
344  // Frame 39
345  0x0000,0x0000,0x2000,0x2000,0x2000,
346  0x0000,0x0000,0x2000,0x0000,0x0000,
347  0x0000,0x0000,0x3000,0x0000,0x0000,
348  0x0000,0x0000,0x0000,0x0000,0x0000,
349  0x0000,0x0000,0x0000,0x0000,0x0000,
350 
351 
352  // Frame 40
353  0x0000,0x0004,0x2000,0x2000,0x3800,
354  0x0000,0x0000,0x2000,0x0000,0x0000,
355  0x0000,0x0000,0x2000,0x0000,0x0000,
356  0x0000,0x0000,0x0000,0x0000,0x0000,
357  0x0000,0x0000,0x0000,0x0000,0x0000,
358 
359 
360  // Frame 41
361  0x0000,0x0004,0x2000,0x2800,0x3800,
362  0x0000,0x0000,0x2000,0x0000,0x0000,
363  0x0000,0x0000,0x0000,0x0000,0x0000,
364  0x0000,0x0000,0x0000,0x0000,0x0000,
365  0x0000,0x0000,0x0000,0x0000,0x0000,
366 
367 
368  // Frame 42
369  0x0000,0x0004,0x2800,0x2800,0x3800,
370  0x0000,0x0000,0x0000,0x0000,0x0000,
371  0x0000,0x0000,0x0000,0x0000,0x0000,
372  0x0000,0x0000,0x0000,0x0000,0x0000,
373  0x0000,0x0000,0x0000,0x0000,0x0000,
374 
375 
376  // Frame 43
377 /* 0x0000,0x0004,0x2800,0x2800,0x3800,
378  0x0000,0x0000,0x0000,0x0000,0x0000,
379  0x0000,0x0000,0x0000,0x0000,0x0000,
380  0x0000,0x0000,0x0000,0x0000,0x0000,
381  0x0000,0x0000,0x0000,0x0000,0x0000,
382  */
383 
384  // Frame 44
385  0x0000,0x0804,0x0800,0x2800,0x3800,
386  0x0000,0x0000,0x0000,0x0000,0x0000,
387  0x0000,0x0000,0x0000,0x0000,0x0000,
388  0x0000,0x0000,0x0000,0x0000,0x0000,
389  0x0000,0x0000,0x0000,0x0000,0x0000,
390 
391 
392  // Frame 45
393  0x0000,0x1804,0x0800,0x0800,0x3800,
394  0x0000,0x0000,0x0000,0x0000,0x0000,
395  0x0000,0x0000,0x0000,0x0000,0x0000,
396  0x0000,0x0000,0x0000,0x0000,0x0000,
397  0x0000,0x0000,0x0000,0x0000,0x0000,
398 
399 
400  // Frame 46
401 /* 0x0000,0x1806,0x0800,0x0800,0x3800,
402  0x0000,0x0000,0x0000,0x0000,0x0000,
403  0x0000,0x0000,0x0000,0x0000,0x0000,
404  0x0000,0x0000,0x0000,0x0000,0x0000,
405  0x0000,0x0000,0x0000,0x0000,0x0000,
406  */
407 
408  // Frame 47
409  0x0000,0x1806,0x0802,0x0802,0x380E,
410  0x0000,0x0000,0x0000,0x0000,0x0000,
411  0x0000,0x0000,0x0000,0x0000,0x0000,
412  0x0000,0x0000,0x0000,0x0000,0x0000,
413  0x0000,0x0000,0x0000,0x0000,0x0000,
414 
415 
416  // Frame 48
417  0x0000,0x18C6,0x0842,0x0842,0x39CE,
418  0x0000,0x0000,0x0000,0x0000,0x0000,
419  0x0000,0x0000,0x0000,0x0000,0x0000,
420  0x0000,0x0000,0x0000,0x0000,0x0000,
421  0x0000,0x0000,0x0000,0x0000,0x0000,
422 
423 
424  // Frame 49
425  cmd_set_pwm_r + 180,
426  cmd_set_pwm_g + 180,
427  0x0000,0x18C6,0x0842,0x0842,0x39CE,
428  0x0000,0x0000,0x0000,0x0000,0x0000,
429  0x0000,0x0000,0x0000,0x0000,0x0000,
430  0x0000,0x0000,0x0000,0x0000,0x0000,
431  0x0000,0x0000,0x0000,0x0000,0x0000,
432 
433 
434  // Frame 50
435  cmd_set_pwm_r + 120,
436  cmd_set_pwm_g + 120,
437  cmd_set_pwm_b + 180,
438  0x0000,0x18C6,0x0842,0x0842,0x39CE,
439  0x0000,0x0000,0x0000,0x0000,0x0000,
440  0x0000,0x0000,0x0000,0x0000,0x0000,
441  0x0000,0x0000,0x0000,0x0000,0x0000,
442  0x0000,0x0000,0x0000,0x0000,0x0000,
443 
444 
445  // Frame 51
446  cmd_set_pwm_r + 60,
447  cmd_set_pwm_g + 60,
448  cmd_set_pwm_b + 130,
449  0x0000,0x18C6,0x0842,0x0842,0x39CE,
450  0x0000,0x0000,0x0000,0x0000,0x0000,
451  0x0000,0x0000,0x0000,0x0000,0x0000,
452  0x0000,0x0000,0x0000,0x0000,0x0000,
453  0x0000,0x0000,0x0000,0x0000,0x0000,
454 
455 
456  // Frame 52
457  cmd_set_pwm_r + 30,
458  cmd_set_pwm_g + 30,
459  cmd_set_pwm_b + 60,
460  0x0000,0x18C6,0x0842,0x0842,0x39CE,
461  0x0000,0x0000,0x0000,0x0000,0x0000,
462  0x0000,0x0000,0x0000,0x0000,0x0000,
463  0x0000,0x0000,0x0000,0x0000,0x0000,
464  0x0000,0x0000,0x0000,0x0000,0x0000,
465 
466 
467  // Frame 53
468  cmd_set_pwm_r + 0,
469  cmd_set_pwm_g + 0,
470  cmd_set_pwm_b + 30,
471  0x0000,0x18C6,0x0842,0x0842,0x39CE,
472  0x0000,0x0000,0x0000,0x0000,0x0000,
473  0x0000,0x0000,0x0000,0x0000,0x0000,
474  0x0000,0x0000,0x0000,0x0000,0x0000,
475  0x0000,0x0000,0x0000,0x0000,0x0000,
476 
477 
478  // Frame 54
479  cmd_set_pwm_b + 0,
480  0x0000,0x18C6,0x0842,0x0842,0x39CE,
481  0x0000,0x0000,0x0000,0x0000,0x0000,
482  0x0000,0x0000,0x0000,0x0000,0x0000,
483  0x0000,0x0000,0x0000,0x0000,0x0000,
484  0x0000,0x0000,0x0000,0x0000,0x0000,
485 
486 
487  // Frame 55
488  // End of animation + option
489  cmd_anim_stop + 1
490  };