Tecnologia vestible

Per començar Elements d'entrada Programació CircuitPython   Recursos CITCEA
Elements no electrònics Elements de sortida Programació Arduino    
Projectes Elements de control Dades pràctiques   Inici

Programa de prova per al LED DotStar

El LED DotStar es controla fent servir una comunicació SPI que està definida a la biblioteca busio. Definim un objecte per al LED en el que hem d'indicar les dues potes (internes) de comunicació que farà servir. Per enviar el color al LED cal primer fer-li un bloqueig (amb la funció try_lock) i després li enviem un vector de dotze valors. Els quatre primers valors són zero, després el valor dels colors (entre 0 i 255) en ordre invers (blau, verd, vermell) i els quatre darrers són 255. Un cop enviat el vector, desbloquegem el DotStar per tal que mostri el nou color. Per poder-ho repetir fàcilment, hem posat aquestes operacions en una funció. El bloqueig pot fallar (per exemple si el LED no està ben connectat), per això mirem si ha funcionat i si no ho ha fet sortim de la funció. En el programa principla cridarem set vegades la funció per mostrar els colors bàsics.

import busio
import board
import time
dotstar = busio.SPI(board.APA102_SCK, board.APA102_MOSI)
def setPixel(red, green, blue):
    if not dotstar.try_lock():
        return
    valors = bytearray([0, 0, 0, 0, 255, blue, green, red, 255, 255, 255, 255])
    dotstar.write(valors)
    dotstar.unlock()
    time.sleep(0.6)          # Pausa de 0,6 s
while True:
    setPixel(255, 0, 0)      # Vermell
    setPixel(0, 255, 0)      # Verd
    setPixel(0, 0, 255)      # Blau
    setPixel(255, 255, 0)    # Groc
    setPixel(255, 0, 255)    # Magenta
    setPixel(0, 255, 255)    # Cian
    setPixel(255, 255, 255)  # Blanc

 

 

 

En aquest web, les fotografies marcades amb [AF] són del web d'Adafruit, les marcades amb [SF] del web d'Sparkfun i les marcades amb [AU] del web d'Arduino.

 

 

 

 

 

 

 

 

 

 

Llicència de Creative Commons
Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.