Obsah

I2C RGB LED

English version

Jednoduchý RGB LED driver s rozhraním I2C řízený AVR mikrokontrolérem ATtiny45.

dir.adamh.cz_i2c-rgb-led_top-small.jpg

Ovlávání

I2C adresa modulu je 0x10, komunikace probíhá ve slave režimu.

Bajt 1. 2. 3. 4. 5.
Nastavení barvy 0x01 RED GREEN BLUE 0
Plynulý přechod (přechod) 0x02 RED GREEN BLUE DELAY


Příklad: Sekvence pro nastavení červené barvy (RED = 0xFF) by vypadala takto:

{0x01, 0xFF, 0x00, 0x00, 0x00}

Sekvence pro plynulý přechod do modré:

{0x02, 0x00, 0x00, 0xFF, 0x05}

Schéma zapojení a zdrojové kódy

Ke stažení:


Nastavení pojistek (fuses): Před naprogramováním mikrokontroléru je ptořeba vypnout „Divide clock by 8 internally“ (HFUSE = 0xDF, LFUSE = 0xE2). Pro avrdude: -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m

Po přivedení napájení LED dioda dvakrát červeně blikne.

ZIP archiv se schématy obsahuje dva motivy DPS, každý obsahuje jednu propojku. Jeden z nich je navržen pro univerzální plošný spoj (protoboard) s otvory v rastru 2,54 mm. Dva rohové otvory pro šrouby M3 jsou umístěny tak, aby pasovaly do rastru stavebnice Merkur (10 mm).

Za rutiny pro I2C pomocí periferie USI vycházející z aplikační poznámky AVR312 děkuji Andreasi Kaiserovi (zveřejněno v threadu „attiny USI Slave Implementierung“ - usi-slave.zip).

Fotografie

dir.adamh.cz_i2c-rgb-led_green.jpg dir.adamh.cz_i2c-rgb-led_blue.jpg