equal
deleted
inserted
replaced
37 dmx_low(); |
37 dmx_low(); |
38 dmx_pause(22); |
38 dmx_pause(22); |
39 |
39 |
40 // mark-after-break (MAB) |
40 // mark-after-break (MAB) |
41 dmx_high(); |
41 dmx_high(); |
42 dmx_pause(2); |
42 dmx_pause(3); // min 2, recommended 3 |
43 } |
43 } |
44 |
44 |
45 #include "dmx_frame.c" |
45 #include "dmx_frame.c" |
46 |
46 |
|
47 /* |
|
48 * Send out a full DMX packet, including the start-code frame and a frame for each channel given. |
|
49 * |
|
50 * Uses 3-bit mark-times between frames, since some fixtures don't seem happy with 2-bit mark-times. |
|
51 */ |
47 static void dmx_packet (byte count, byte *out) |
52 static void dmx_packet (byte count, byte *out) |
48 { |
53 { |
49 dmx_break(); |
54 dmx_break(); |
50 dmx_frame(0); |
55 dmx_frame(0); |
|
56 dmx_pause(1); // MTBF 2+1 = 3 |
51 |
57 |
52 for (byte i = 0; i < count; i++) { |
58 for (byte i = 0; i < count; i++) { |
53 dmx_frame(out[i]); |
59 dmx_frame(out[i]); |
|
60 |
|
61 // MTBF 2+1 = 3 |
|
62 dmx_pause(1); |
54 } |
63 } |
55 } |
64 } |