---
# System prepended metadata

title: vaja 2

---

# vaja 2

Neopixel krog, potenciometer in gumb.

## 1. Hitrost animacije
Naredi preprosto animacijo na Neopixel krogu, kjer se ena LEDica vrti okoli kroga. S potenciometrom kontroliramo hitrost vrtenja.

## 2. Moč mutacije
Naredi animacijo na NeoPixel krogu, kjer se za prvo LEDico izbere naključna barva.
Vse nadaljne barve naj bodo naključna mutacija prve barve (torej naključno spremenimo RGB vrednosti prve barve). **Ko se krog konča, naj bodo vse LEDice prižgane.**
```python=
barva = [rand(255), rand(255), rand(255)]
while True:
    for i in range(NUM_LEDS):
        mocMutacije = potenciometer.povej() / hmmm
        leds[i] = barva
        # %256, da nikoli ne pridemo čez rgb vrednost nad 255
        barva = [(barva[0] + rand(-mocMutacije, mocMutacije)) % 256, ... ,...]
```
Ko se krog obrne, naj se izbere novo prvo barvo in se animacija nadaljuje v neskončno.
S potenciometrom kontroliraj moč mutacije (torej za koliko se prva barva spremenija).
* v konzolo tudi izpiši moč mutacije


## 3. Refleks igra
Napiši refleks igrico, kjer se na začetku igre vse LEDice v krogu pobarvajo na zeleno.
Po naključno dolgem času pobarvaj vse LEDice na rdečo.
Po prehodu na rdečo, čakaj, da uporabnik klikne gumb.
Izpiši v konzolo, kako dolgo je uporabnik potreboval, da je odreagiral na spremembo barve.
* opozori uporabnika, če goljufa (klika pred rdečo)
```mermaid
flowchart TD
    A[ZELENA] -->|random delay 1-4s| B[RDEČA]
    B -->|čakaj na klik gumba| C[Izpiši čas]
    C -->|delay 2s| A
```

```python=
#čas v nano sekundah
import time
print(time.time_ns())
```