Mengakses Arduino - Membaca Data Analog Potensio Untuk Mengatur LED
Mikrokontroler merupakan sebuah komputer mikro dalam satu chip tunggal. Mikrokontroler memadukan CPU, ROM, RWM, I/O paralel, I/O seri, counter-timer, dan rangkaian clock dalam satu chip.
Pada pembahasan kali ini, kita akan mencoba membuat rangkaian mikrokontroler sederhana. Rangkaian ini nantinya akan membaca nilai analog dari potensio yang akan mengatur nyala LED pada rangkaian.
Alat dan Bahan yang diperlukan:
- Arduino Uno R3
- Trim Potensio
- Led (3 buah)
- Resistor 220 Ohm
- Software Arduino IDE
- PC/Laptop
- Kabel Jumper
- Breadboard
Setelah semua komponen terkumpul, silahkan rangkai rangkaian sesuai gambar dibawah.
- Hubungkan 5V dan GND dari Arduino ke Breadboard.
- Hubungkan kaki kanan Potensiometer ke VCC.
- Hubungkan kaki kiri Potensiometer ke GND.
- Hubungkan kaki tengah Potensiometer ke pin A0 Arduino.
- Untuk LED merah, hubungkan ke pin 7 Arduino.
- Untuk LED kuning, hubungkan ke pin 6 Arduino.
- Untuk LED hijau, hubungkan ke pin 5 Arduino.
Masukan program dan upload ke board arduino.
byte sensor= A0; byte ledMerah= 7; byte ledKuning= 6; byte ledHijau= 5; int nilai; void setup(){ pinMode(ledMerah, OUTPUT); pinMode(ledKuning, OUTPUT); pinMode(ledHijau, OUTPUT); } void loop(){ nilai= analogRead(sensor); if (nilai < 300 && nilai>0){ digitalWrite(ledMerah, HIGH); digitalWrite(ledKuning, LOW); digitalWrite(ledHijau, LOW); } else if (nilai>=300 && nilai < 700){ digitalWrite(ledMerah, LOW); digitalWrite(ledKuning, HIGH); digitalWrite(ledHijau, LOW); } else { digitalWrite(ledMerah, LOW); digitalWrite(ledKuning, LOW); digitalWrite(ledHijau, HIGH); } }
Terimakasih telah membaca, jangan lupa share!
#define ledHijau 3
ReplyDelete#define potPin A0
#define pushButton1 7
#define pushButton2 8
int hijau;
void setup() {
// put your setup code here, to run once:
pinMode (ledHijau, OUTPUT);
pinMode (potPin, INPUT);
pinMode (pushButton1, INPUT);
pinMode (pushButton2, INPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(ledHijau, LOW);
int nilai = analogRead(potPin);
int pin1 = digitalRead(pushButton1);
int pin2 = digitalRead(pushButton2);
hijau = map(nilai, 0, 1023, 0, 255);
if (pin1 == 1) {
analogWrite(ledHijau, hijau);
}
if (pin2 == HIGH)
{
if (nilai < 512)
{
digitalWrite(ledHijau, LOW);
}
if (nilai >= 512)
{
digitalWrite(ledHijau, HIGH);
}
}
Serial.print(" Value = ");
Serial.print(nilai);
Serial.print(" ");
Serial.print("Become = ");
Serial.println(hijau);
delay(100);
}