Zadatak
Na pinove broj 6 i 7 Arduino pločice spojimo jedno tipkalo i jednu LE diodu i napišimo program koji će upravljati LE diodom na način da kada je tipkalo pritisnuto uključi LE diodu a kada je tipkalo otpušteno isključi LE diodu.
Komponente:
- 1 * Arduino UNO R3 mikrokontroler,
- 1 * USB kabal,
- 1 * LE dioda,
- 1 * Otpornik 220 Ω,
- 1 * Tipkalo
- 1 * Eksperimentalna pločica,
- 5 * Kratkospojničke žice (muško-muške)
Šta je PWM?
Tipkalo (eng. Pushbutton) je jedna od najčešćih komponenti za unos podataka. Tipkalo ima dva stanja: otpušteno (PULL UP) i pritisnuto (PULL DOWN).
![](https://stemlab.ba/wp-content/uploads/2023/12/5.jpg)
Kao što se može vidjeti na slici ispod krajevi 1 i 3 su uvijek povezani, kao i krajevi 2 i 4.
![](https://stemlab.ba/wp-content/uploads/2023/12/5-1.jpg)
U slučaju kada je tipkalo pritisnuto ostvaruje se veze između dva kraja. Na slici ispod je prikazana šema i kod, gdje je korišten interni otpornik naredbom INPUT_PULLUP. Također, postavljen je i jedan uslov if. Obzirom da je korištena naredba digitalRead moguća su dva digitalna stanja, 0 ili 1. Prema šemi i korištenju INPUT_PULLUP (internog otpornika), kao rezultat dobit ćemo stanje 1 kada tipkalo nije pritisnuto i stanje 0 kada je tipkalo pritisnuto.
1. Izgradite sklop
![](https://stemlab.ba/wp-content/uploads/2023/12/6.jpg)
2. Program
/***********************************************************
Tipkalo i LE dioda
STEM Lab
***********************************************************/
int ledPin = 7; // Definiranje digitalnog pina 7 kao pina za upravljanje LE diodom
int buttonPin = 6; // Definiranje digitalnog pina 6 kao pina za upravljanje tipkalom
int stateButton; // Deklaracija varijable stanje tipkala
void setup() {
pinMode(ledPin, OUTPUT); // Postavite digitalni način rada s pina 7, IZLAZ: izlazni način
pinMode(buttonPin, INPUT_PULLUP); // Postavite digitalni način rada s pina 6, ULAZ: ulazni način
digitalWrite(ledPin, LOW); // ledPin (pin 7) postavite u stanje ISKLJUČI
}
void loop() {
stateButton = digitalRead(buttonPin); // Očitavanje stanja tipkala
if (stateButton == HIGH) { // Ako je tipkalo pritisnuto
digitalWrite(ledPin, LOW); // Uključi LE diodu
} else { // Ako je tipkalo otpušteno
digitalWrite(ledPin, HIGH); // Isključi LE diodu
}
}
3. Prenesite program na Arduino UNO pločicu.