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 + 10,
31  //Data + other commands (body)
32  // Frame 0
33  0x4000,0x4000,0x4000,0x0000,0x0000,
35  cmd_param_2D_frame + 0,
36  cmd_param_2D_frame + 0,
37 
38 
39  // Frame 1
40  cmd_param_2D_frame + 0,
41  0x0000,0x4000,0x4000,0x4000,0x0000,
42  cmd_param_2D_frame + 0,
43  cmd_param_2D_frame + 0,
44  cmd_param_2D_frame + 0,
45 
46 
47  // Frame 2
48  cmd_param_2D_frame + 0,
49  0x0000,0x0000,0x4000,0x6000,0x0000,
50  cmd_param_2D_frame + 0,
51  cmd_param_2D_frame + 0,
52  cmd_param_2D_frame + 0,
53 
54 
55  // Frame 3
56  cmd_param_2D_frame + 0,
57  0x0000,0x0000,0x0000,0x7000,0x0000,
58  cmd_param_2D_frame + 0,
59  cmd_param_2D_frame + 0,
60  cmd_param_2D_frame + 0,
61 
62 
63  // Frame 4
64  cmd_param_2D_frame + 0,
65  0x0000,0x0000,0x0000,0x0380,0x0000,
66  cmd_param_2D_frame + 0,
67  cmd_param_2D_frame + 0,
68  cmd_param_2D_frame + 0,
69  0x7FFF,0x7FFF,0x7FFF,0x7FFF,0x7FFF,
70 
71 
72  // Frame 5
73  cmd_set_pwm_r + 180,
74  cmd_set_pwm_r + 120,
75  0x0000,0x0000,0x0000,0x0380,0x0000,
76  cmd_param_2D_frame + 0,
77  cmd_param_2D_frame + 0,
78  cmd_param_2D_frame + 0,
79  0x7FFF,0x7FFF,0x7FFF,0x7FFF,0x7FFF,
80 
81 
82  // Frame 6
83  0x0000,0x0000,0x0000,0x0380,0x0000,
84  cmd_param_2D_frame + 0,
85  cmd_param_2D_frame + 0,
86  cmd_param_2D_frame + 0,
87  0x7FFF,0x7FFF,0x7FFF,0x7FFF,0x7FFF,
88 
89 
90  // Frame 7
91  cmd_set_pwm_r + 80,
92  0x0000,0x0000,0x0000,0x0380,0x0000,
93  cmd_param_2D_frame + 0,
94  cmd_param_2D_frame + 0,
95  cmd_param_2D_frame + 0,
96  0x7FFF,0x7FFF,0x7FFF,0x7FFF,0x7FFF,
97 
98 
99  // Frame 8
100  cmd_set_pwm_r + 50,
101  0x0000,0x0000,0x0000,0x0380,0x0000,
102  cmd_param_2D_frame + 0,
103  cmd_param_2D_frame + 0,
104  cmd_param_2D_frame + 0,
105  0x7FFF,0x7FFF,0x7FFF,0x7FFF,0x7FFF,
106 
107 
108  // Frame 9
109  cmd_set_pwm_r + 0,
110  0x0000,0x0000,0x0000,0x0380,0x0000,
111  cmd_param_2D_frame + 0,
112  cmd_param_2D_frame + 0,
113  cmd_param_2D_frame + 0,
114  0x7FFF,0x7FFF,0x7FFF,0x7FFF,0x7FFF,
115 
116 
117  // Frame 10
118  // End of animation + option
119  cmd_anim_stop + 1
120  };