Dodajem treće i četvrto predavanje.

This commit is contained in:
2024-04-10 09:13:23 +02:00
parent 2e95796816
commit 44c02255b4
14 changed files with 209 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
int led_r = 9;
int led_g = 10;
int led_b = 11;
int button = 7;
int ptm = A0;
int color;
int value;
bool pressed;
void setup() {
pinMode(led_r, OUTPUT);
pinMode(led_g, OUTPUT);
pinMode(led_b, OUTPUT);
pinMode(button, INPUT);
pinMode(ptm, INPUT);
analogWrite(led_r, 0);
analogWrite(led_g, 0);
analogWrite(led_b, 0);
color = 0;
pressed = false;
Serial.begin(9600);
}
void loop() {
if (digitalRead(button) == HIGH){
if (pressed == false){
color = (color + 1) % 3;
pressed = true;
}
}
if (digitalRead(button) == LOW){
pressed = false;
}
value = analogRead(ptm);
if (value < 20) value = 0;
value = map(value, 0, 1023, 0, 255);
delay(1);
if(color == 0){
analogWrite(led_r, value);
}
if(color == 1){
analogWrite(led_g, value);
}
if(color == 2){
analogWrite(led_b, value);
}
Serial.println(value);
delay(100);
}

View File

@@ -0,0 +1,54 @@
const int led_r = 9;
const int led_g = 10;
const int led_b = 11;
const int touch_senzor = 12;
const int taster = 13;
const int pot = A0;
float pot_value;
/*
MOJA LED JE COMMON ANODE, TAKO DA SU VREDNOSTI ZA UPIS INVERTOVANE
AKO TREBA DA SVETLI CRVENA NA TOM PINU ĆE BITI NULA, A NA OSTALA DVA
ĆE BITI 255 (5 V)
*/
void setup()
{
pinMode(led_r, OUTPUT);
pinMode(led_g, OUTPUT);
pinMode(led_b, OUTPUT);
pinMode(touch_senzor, INPUT);
pinMode(taster, INPUT);
analogWrite(led_r, 255);
analogWrite(led_g, 255);
analogWrite(led_b, 255);
}
void loop()
{
if (digitalRead(touch_senzor) == HIGH){
while (digitalRead(taster) != HIGH){
// Ljubičasta
pot_value = analogRead(pot);
setColor(map(pot_value, 0, 1023, 255, 0), 255, map(pot_value, 0, 1023, 255, 0));
}
}
if (digitalRead(taster) == HIGH){
while (digitalRead(touch_senzor) != HIGH){
// Žuta
pot_value = analogRead(pot);
setColor(255 - 255*pot_value/1023, 255 - 255*pot_value/1023, 255);
//setColor(map(pot_value, 0, 1023, 255, 0), map(pot_value, 0, 1023, 255, 0), 255);
}
}
delay(1);
}
void setColor(int red_value, int green_value, int blue_value)
{
analogWrite(led_r, red_value);
analogWrite(led_g, green_value);
analogWrite(led_b, blue_value);
}

View File

@@ -0,0 +1,2 @@
default_port: /dev/ttyUSB0
default_fqbn: arduino:avr:uno