-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathledtest.lua
50 lines (45 loc) · 2.15 KB
/
ledtest.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
-- blink
interval = 100
patterns = {
string.char(255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(64, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 64, 0, 0, 255, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 64, 0, 0, 255, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 255, 0, 0, 64, 0, 0),
string.char(0, 0, 0, 255, 0, 0, 64, 0, 0, 0, 0, 0),
string.char(255, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 64, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 64, 0, 0, 255, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 255, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 64, 0),
string.char(0, 0, 0, 0, 255, 0, 0, 64, 0, 0, 0, 0),
string.char(0, 255, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 64, 0, 0, 255, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 64, 0, 0, 255, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 255),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 64),
string.char(0, 0, 0, 0, 0, 255, 0, 0, 64, 0, 0, 0),
string.char(0, 0, 255, 0, 0, 64, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0),
string.char(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
}
leds = ws2812.newBuffer(4)
leds:fill(0, 0, 0)
id = 0
tmr.alarm(0, interval, tmr.ALARM_SEMI, function()
id = (id % table.getn(patterns)) + 1
leds:set(0, patterns[id])
leds:write(0)
-- restart timer, and re-set interval
tmr.interval(0, interval)
tmr.start(0)
end)