#include "mbed.h"
// Definisanje pinova za RGB LED
DigitalOut R(p12);
DigitalOut G(p13);
DigitalOut B(p14);
// Početne vrijednosti
int trajanje = 100;
int temp = 0;
// Pomoćna funkcija za promjenu boje LED
void promijeni_boju(bool r, bool g, bool b) {
R = r;
G = g;
B = b;
ThisThread::sleep_for(trajanje);
}
int main() {
while (true) {
// Postavimo RGB LED-a na isključeno
promijeni_boju(0, 0, 0);
// Promjena boje na plavu (0,0,1)
promijeni_boju(0, 0, 1);
// Promjena na ostale kombinacije boja
promijeni_boju(0, 1, 0); // Zelena
promijeni_boju(0, 1, 1); // Žuta
promijeni_boju(1, 0, 0); // Crvena
promijeni_boju(1, 0, 1); // Ljubičasta
promijeni_boju(1, 1, 0); // Narandžasta
promijeni_boju(1, 1, 1); // Bijela
// Nakon svih kombinacija boja, postavimo RGB LED-a na isključeno
promijeni_boju(0, 0, 0);
// Provjeravamo da li je potrebno povećati trajanje
if (trajanje <= 1000 && temp == 0) {
trajanje += 100;
}
// Provjeravamo da li je potrebno smanjiti trajanje
if (trajanje >= 1000 && temp == 1) {
trajanje -= 100;
}
// Postavljamo temp varijable za sljedeći korak
if (trajanje == 1000) {
temp = 1;
}
if (trajanje == 100) {
temp = 0;
}
}
}