Jump to content

NodeMCU Projects: Difference between revisions

→‎NeoPixel: new version
m (Protected "NodeMCU Projects" ([Edit=Allow only logged in users] (indefinite) [Move=Allow only logged in users] (indefinite) [Delete=Allow only logged in users] (indefinite)))
(→‎NeoPixel: new version)
Line 66:
import neopixel
import time
import urandom
 
pin = machine.Pin(14, machine.Pin.OUT)
np = neopixel.NeoPixel(pin, 16)
 
def demorand(np):
return urandom.getrandbits(8)
 
def cycle():
whilefor Truei in range(16):
np[i] = (0128, 0, 0)
np.write()
time.sleep_ms(25)
 
for i in range(n16):
np[ji] = (0, 0128, 0)
np.write()
time.sleep_ms(6025)
 
for i in range(16):
np[ji] = (0, 0, 128)
np.write()
time.sleep_ms(25)
 
def circle(x,y,z):
for j in range(n10):
x,y,z = rand(),rand(),rand()
for i in range(16):
np[i] = (255x,0y,0z)
np.write()
time.sleep_ms(25)
 
def circle_rainbow():
for j in range(n10):
for i in range(16):
np[i] = (0rand(),255rand(),0rand())
np.write()
time.sleep_ms(25)
 
def rainbowfade():
for i in range(16):
for np[i] =in range(0,0 4 * 256,255 8):
for ij in range(4 * n16):
if (i // n256) % 2 == 0:
np[n - 1 - (i % n)] val = (0,i 0,& 0)0xff
else:
np[i % n] val = 255 - (0,i 0,& 00xff)
np[i % n np[j] = (255val, 2550, 2550)
np.write()
time.sleep_ms(25)
i += 10
 
for i in range(0, 4 * n256, 8):
def circle(x,y,z):
for ij in range(16):
np[i] = if (x,y,zi // 256) % 2 == 0:
np.write() val = i & 0xff
time.sleep_ms(25) else:
val = 255 - (i & 0xff)
np[j] = (0, val, 0)
np.write()
 
def demo(np):
n = np.n
 
# cycle
for i in range(4 * n):
for j in range(n):
np[j] = (0, 0, 0)
np[i % n] = (255, 255, 255)
np.write()
time.sleep_ms(25)
 
# bounce
for i in range(4 * n):
for j in range(n):
np[j] = (0, 0, 128)
if (i // n) % 2 == 0:
np[i % n] = (0, 0, 0)
else:
np[n - 1 - (i % n)] = (0, 0, 0)
np.write()
time.sleep_ms(60)
 
# fade in/out
for i in range(0, 4 * 256, 8):
for j in range(n16):
if (i // 256) % 2 == 0:
val = i & 0xff
i += 10 else:
val = 255 - (i & 0xff)
np[j] = (0, 0, val)
np.write()
 
#def bounce():
for i in range(5):
x,y,z = rand(),rand(),rand()
for i in range(4 * 16):
for j in range(16):
np[j] = (x,y,z)
if (i // 16) % 2 == 0:
np[i % 16] = (0, 0, 0)
else:
valnp[16 =- 2551 - (i &% 16)] = (0, 0, 0xff0)
np[j] = .write(val, 0, 0)
np time.writesleep_ms(60)
 
# clear
for i in range(n):
np[i] = (0, 0, 0)
np.write()
 
# Under Construction
def rainbow():
pass
 
def off():
Line 140 ⟶ 151:
np.write()
 
cycle()
off()
time.sleep(1)
 
circle()
off()
time.sleep(1)
 
circle_rainbow()
off()
time.sleep(1)
 
fade()
off()
time.sleep(1)
 
bounce()
off()
</syntaxhighlight>
Cookies help us deliver our services. By using our services, you agree to our use of cookies.