#149Pemula

Dua LED Bergantian Raspberry Pi Pico (Pola Kedip Bergantian)

Langkah berikutnya setelah satu LED di Pico: dua LED berkedip bergantian dengan pola flip-flop klasik. Ketika satu mati, yang lain menyala; contoh paling dasar koordinasi beberapa GPIO. Dua LED berbeda warna (merah di GP14, hijau di GP13) bertukar status setiap 500 ms, dan metode Pin.toggle() MicroPython membuat kodenya singkat. Logika yang sama menjadi dasar lampu lalu lintas, lampu polisi, dan LED berjalan. Setiap LED memakai resistor 220Ω-nya sendiri.

5.0(2)
19 selesai
Dua LED Bergantian Raspberry Pi Pico (Pola Kedip Bergantian)
Dua LED berkedip bergantian: ketika satu menyala, yang lain padam, persis seperti lampu peringatan di perlintasan kereta api. Raspberry Pi Pico menukar LED merah dan hijau setiap setengah detik. Ini langkah pertama mengendalikan lebih dari satu lampu sekaligus, dan proyek seperti lampu polisi dan lampu lalu lintas dibangun di atasnya.

Video

Skema rangkaian

Dua LED Bergantian Raspberry Pi Pico (Pola Kedip Bergantian) - Circuit

Kode sumber

MicroPython
1# ─────────────────────────────────────────
2#   BlueGrays · bluegrays.com
3#   Dua LED Bergantian Raspberry Pi Pico (Pola Kedip Bergantian)
4# ─────────────────────────────────────────
5# Dua LED berkedip bergantian setiap 0.5 s (flip-flop): satu menyala
6# selama yang lain mati. Pin.toggle() membuat kodenya singkat.
7#
8# Pin:
9#   GP14 -> LED merah (dengan resistor 220 ohm)
10#   GP13 -> LED hijau (dengan resistor 220 ohm)
11#   Katoda LED -> GND
12
13from machine import Pin
14from time import sleep
15
16# ============ PIN / PIN ============
17led1 = Pin(14, Pin.OUT)         # LED merah
18led2 = Pin(13, Pin.OUT)         # LED hijau
19
20# ============ INISIALISASI ============
21# Mulai dengan status berlawanan
22led1.value(1)
23led2.value(0)
24
25print("== BlueGrays: 2 LED Alternatif ==")
26print("LED1 (Kirmizi): GP14  |  LED2 (Yesil): GP13")
27
28# ============ LOOP UTAMA ============
29while True:
30    # Balik status kedua LED
31    led1.toggle()
32    led2.toggle()
33    sleep(0.5)                  # Delay 500 ms
34

FAQ

Apa yang dilakukan metode `toggle()`?

Metode ini membalik status pin yang sekarang: jika menyala, ia mematikannya; jika mati, ia menyalakannya. Jika di awal satu LED dinyalakan dan yang lain dimatikan, kedua LED bertukar tempat di setiap toggle.

Bagaimana cara mengubah kecepatan kedipnya?

Ubah nilai di `sleep(0.5)` di akhir kode; `sleep(0.2)` memberi pergantian lebih cepat, dan `sleep(1)` lebih lambat. Untuk memakai `sleep_ms()`, tambahkan juga `from time import sleep_ms`.

Apa yang harus aku lakukan jika di awal kedua LED menyala bersamaan?

Sebelum loop, mulai satu LED dengan `on()` dan yang lain dengan `off()`. Kalau tidak, keduanya mulai dari status yang sama dan berkedip bersamaan ketika kamu memakai `toggle`.

Bisakah aku mencoba proyek ini di Wokwi?

Ya, Wokwi mendukung Raspberry Pi Pico dan MicroPython. Kamu bisa menambahkan komponen dan menyambungkannya ke pin yang sama untuk menguji kodemu tanpa perangkat keras sungguhan.