---
# System prepended metadata

title: Test

---

## **Test**

## **1. vaja**
Naloga 1: Dinamična svetlobna intenzivnost
Zgradite vezje, ki vključuje potenciometer in NeoPixel diodo. Ko obračate potenciometer, naj se intenzivnost svetlobe na NeoPixel diodi dinamično spreminja od najsvetlejše do najtemnejše. Dodajte gumb, ki omogoča preklop med barvnimi načini (npr. rdeča, zelena, modra).


```python=

from machine import Pin, ADC
import neopixel
import time

# Nastavitev pinov
potentiometer_pin = 34
button_pin = 14
neopixel_pin = 12

# Nastavitev NeoPixel diode
num_leds = 1
np = neopixel.NeoPixel(Pin(neopixel_pin), num_leds)

# Nastavitev potenciometra
pot = ADC(Pin(potentiometer_pin))


# Nastavitev gumba
button = Pin(button_pin, Pin.IN, Pin.PULL_UP)

# Barvni načini
colors = [(255, 0, 0), (0, 255, 0), (0, 0, 255)]  # Rdeča, Zelena, Modra
color_mode = 0

while True:
    # Branje vrednosti potenciometra
    pot_value = pot.read()

    # Prilagajanje svetlosti glede na vrednost potenciometra
    brightness = pot_value / 4095.0  # 4095 je maksimalna vrednost za 12-bitni ADC
    np[0] = tuple(int(brightness * c) for c in colors[color_mode])
    np.write()

    # Preverjanje stanja gumba za preklop barvnih načinov
    if not button.value():
        color_mode = (color_mode + 1) % len(colors)

    # Počakaj malo, da se zmanjša obremenitev
    time.sleep(0.1)


```

![image](https://hackmd.io/_uploads/HJGNvK2LT.png)



## **2. vaja**
Naloga 2: Barvno mešanje s potenciometri
Uporabite tri potenciometre za nadzor intenzivnosti rdeče, zelene in modre barve na NeoPixel diodi. Ustvarite vezje, ki omogoča mešanje barv z obračanjem potenciometrov. Gumb naj omogoča preklop med različnimi barvnimi vzorci, ki izkoriščajo mešanje barv

```python=
import machine
import neopixel
import time

# Nastavitve pinov za potenciometre
potentiometer_pins = [34, 35, 32]  # Prilagodite glede na vaše povezave

# Nastavitve za gumb
button_pin = 12  # Prilagodite glede na vaše povezave
button_state = False
last_button_state = False

# Število NeoPixel diod
num_pixels = 1  # Prilagodite glede na vaše potrebe

# Ustvarite objekt za NeoPixel
pixels = neopixel.NeoPixel(machine.Pin(5), num_pixels)

# Inicializacija potenciometrov
potentiometers = [machine.ADC(machine.Pin(pin)) for pin in potentiometer_pins]

# Sledenje trenutnemu urejanemu potenciometru
current_potentiometer = 0

# Glavna zanka
while True:
    # Preberi vrednosti potenciometrov
    red_value = potentiometers[0].read()
    green_value = potentiometers[1].read()
    blue_value = potentiometers[2].read()

    # Preveri gumb
    button_state = machine.Pin(button_pin).value()
    if button_state != last_button_state and button_state == 1:
        # Povečaj indeks trenutnega potenciometra
        current_potentiometer = (current_potentiometer + 1) % len(potentiometers)

    # Nastavi barvo glede na vrednosti trenutnega potenciometra
    if current_potentiometer == 0:
        pixels[0] = (int(red_value / 4096 * 255), 0, 0)
    elif current_potentiometer == 1:
        pixels[0] = (0, int(green_value / 4096 * 255), 0)
    elif current_potentiometer == 2:
        pixels[0] = (0, 0, int(blue_value / 4096 * 255))

    pixels.write()

    last_button_state = button_state

    # Počakaj malo, da se zmanjša obremenitev
    time.sleep_ms(10)

    # Ko so vse barve urejene, pomešaj barve
    if current_potentiometer == 0 and button_state == 1:
        mixed_color = (
            int(red_value / 4096 * 255),
            int(green_value / 4096 * 255),
            int(blue_value / 4096 * 255)
        )
        pixels[0] = mixed_color
        pixels.write()
        time.sleep_ms(500)  # Dodaten odmik, lahko prilagodite
        current_potentiometer = 0  # Ponastavi sledenje trenutnemu potenciometru

```
![image](https://hackmd.io/_uploads/Hkl1oc2U6.png)

