Apa Itu Raspberry Pi Pico? Instalasi MicroPython, Pinout, dan Proyek Pertama
Apa itu Raspberry Pi Pico dan apa bedanya dengan Raspberry Pi dan Arduino? Fitur RP2040, Pico W dan Pico 2, pinout, instalasi MicroPython dengan Thonny, serta kode pertama untuk LED, tombol, PWM, dan pembacaan analog.
Raspberry Pi Pico adalah board mikrokontroler yang sangat murah dan seukuran telapak tangan, dibangun di sekitar RP2040, chip yang dirancang sendiri oleh Raspberry Pi Foundation. Keunggulan utamanya, board ini bisa diprogram dengan MicroPython, dengan kata lain dengan Python: kamu menulis kode, menjalankannya, dan langsung melihat hasilnya tanpa menunggu kompilasi. Itu menjadikannya pintu masuk yang bagus bagi siswa yang belajar Python dan pemula elektronika. Kalau mau, kamu juga bisa memprogramnya dengan C/C++ atau dengan Arduino IDE.

Apa itu Raspberry Pi Pico? Bedanya dengan Raspberry Pi
Meskipun namanya mirip, Pico bukan komputer seperti Raspberry Pi 4 atau 5. Pico tidak punya sistem operasi, output HDMI, maupun desktop; seperti Arduino, Pico adalah board mikrokontroler yang menjalankan satu program. Programmu langsung mulai begitu board diberi daya, konsumsi energinya sangat kecil, dan board ini menangani tugas seperti membaca sensor, menyalakan LED, dan menggerakkan motor secara real time.
| Fitur | Raspberry Pi Pico | Arduino Uno R3 | Raspberry Pi 4 / 5 |
|---|---|---|---|
| Jenis | Board mikrokontroler | Board mikrokontroler | Komputer papan tunggal |
| Sistem operasi | Tidak ada | Tidak ada | Linux |
| Bahasa pemrograman | MicroPython, C/C++, Arduino | C/C++ (Arduino) | Python dan hampir semua bahasa |
| Waktu booting | Instan | Instan | 20–30 detik |
| Konsumsi daya | Sekitar 25 mA | Sekitar 45 mA | Beberapa watt |
| Pemakaian umum | Sensor, LED, motor, pengaturan waktu | Sensor, LED, motor | Kamera, server, komputer desktop |
Spesifikasi: Pico, Pico W, dan Pico 2
| Fitur | Pico | Pico W | Pico 2 |
|---|---|---|---|
| Chip | RP2040, Cortex-M0+ dua inti, 133 MHz | RP2040, Cortex-M0+ dua inti, 133 MHz | RP2350, Cortex-M33 dua inti, 150 MHz |
| RAM | 264 KB | 264 KB | 520 KB |
| Flash | 2 MB | 2 MB | 4 MB |
| Nirkabel | Tidak ada | Wi-Fi (2,4 GHz) + Bluetooth | Tidak ada (tersedia di Pico 2 W) |
| GPIO yang bisa dipakai | 26 | 26 | 26 |
| Input analog (ADC) | 3 channel, 12-bit | 3 channel, 12-bit | 3 channel, 12-bit |
| Tegangan kerja | 3,3 V | 3,3 V | 3,3 V |
Pinout Pico
Pico punya total 40 pin di kedua sisinya. Setiap pin dari 26 pin GPIO, mulai GP0 sampai GP28, bisa mengeluarkan PWM, dan I2C, SPI, serta UART bisa dipakai di beberapa pin alternatif. Input analog hanya tersedia di GP26, GP27, dan GP28. Kamu bisa melihat peta pin lengkap board ini di alat Pinout; pin daya dan pin khusus yang penting adalah:
| Pin | Fungsi |
|---|---|
| VBUS | 5 V dari USB |
| VSYS | Input catu daya eksternal (1,8–5,5 V) |
| 3V3(OUT) | Output 3,3 V untuk sensor (sampai sekitar 300 mA) |
| GND | Ground (ada 8 di board) |
| GP0–GP22 | Input/output digital, PWM, I2C, SPI, UART |
| GP26–GP28 | Juga input analog (ADC0–ADC2) |
| RUN | Me-reset board ketika dihubungkan ke GND |
Menginstal MicroPython (dengan Thonny)
- Unduh dan instal Thonny dari thonny.org.
- Tahan tombol BOOTSEL di Pico sambil mencolokkan kabel USB ke komputer; Pico akan muncul sebagai drive bernama RPI-RP2 (RP2350 di Pico 2).
- Di menu interpreter di kanan bawah Thonny, pilih MicroPython (Raspberry Pi Pico), lalu pakai “Install or update MicroPython” untuk menginstal versi yang sesuai dengan board-mu (Pico, Pico W, atau Pico 2). Kamu juga bisa mengunduh file .uf2 dari micropython.org lalu menyeretnya ke drive tersebut.
- Ketika instalasi selesai, Pico akan restart. Kalau kamu melihat prompt >>> di Shell di bagian bawah Thonny, kamu sudah siap.
- Kalau kodemu kamu simpan ke Pico sebagai main.py, kode itu otomatis berjalan setiap kali board diberi daya, bahkan ketika tidak terhubung ke komputer.
Program pertama: mengedipkan LED bawaan
1from machine import Pin
2import time
3
4led = Pin(25, Pin.OUT) # Pico'da dahili LED; Pico W ve Pico 2 W'de Pin("LED") yaz
5 # onboard LED on Pico; use Pin("LED") on Pico W / Pico 2 W
6
7while True:
8 led.toggle() # durumu tersine çevir / flip the state
9 time.sleep(0.5)Mengendalikan LED dengan tombol
Hubungkan LED ke GP15 melalui resistor 220 Ω dan tombol ke GP14. Kaki tombol yang lain masuk ke GND, dan resistor pull-up internal Pico diaktifkan, jadi tombol membaca 1 ketika dilepas dan 0 ketika ditekan:
1from machine import Pin
2
3led = Pin(15, Pin.OUT)
4button = Pin(14, Pin.IN, Pin.PULL_UP) # butonun diğer ucu GND'de / other leg to GND
5
6while True:
7 led.value(not button.value()) # basılıyken yanar / on while pressedKecerahan LED dengan PWM
Setiap pin GPIO di Pico bisa mengeluarkan PWM. Di MicroPython, nilai duty berkisar dari 0 sampai 65535. Kode di bawah menerangkan LED pelan-pelan lalu mengulanginya dari awal; konsep di balik PWM dijelaskan secara detail di Apa Itu PWM?
1from machine import Pin, PWM
2import time
3
4led = PWM(Pin(15), freq=1000)
5
6while True:
7 for d in range(0, 65536, 1024): # yavaşça yan / fade in
8 led.duty_u16(d)
9 time.sleep_ms(10)Pembacaan analog dan sensor suhu bawaan
Hubungkan pin tengah potensiometer ke GP26 dan pin luarnya ke 3V3 dan GND. read_u16() mengembalikan nilai dari 0 sampai 65535. Pico juga punya sensor suhu di dalamnya yang terhubung ke channel ke-4 ADC; pembacaannya hanya kasar, tetapi ini cara yang seru untuk mengukur suhu tanpa komponen tambahan:
1from machine import ADC
2import time
3
4pot = ADC(26) # GP26 (ADC0) / potansiyometre orta ucu / pot wiper
5sensor = ADC(4) # dahili sıcaklık sensörü / internal temperature sensor
6
7while True:
8 value = pot.read_u16() # 0–65535
9 volts = sensor.read_u16() * 3.3 / 65535
10 temp = 27 - (volts - 0.706) / 0.001721 # °C (yaklaşık / approximate)
11 print(value, round(temp, 1))
12 time.sleep(1)Memprogram Pico dengan Arduino IDE
Kalau kamu lebih suka C++ dan library Arduino, Pico juga bisa dipakai dengan Arduino IDE. Tambahkan https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json ke kolom URL board tambahan di File > Preferences, lalu instal paket Raspberry Pi Pico/RP2040/RP2350 buatan Earle Philhower dari Boards Manager. Untuk upload pertama, tahan tombol BOOTSEL sambil menghubungkan board; setelah itu, upload berjalan normal. Contoh Blink dengan LED_BUILTIN dan sebagian besar library Arduino berfungsi tanpa masalah.
Pico, ESP32, atau Arduino?
| Yang kamu butuhkan | Board yang disarankan |
|---|---|
| Proyek pertama, sensor 5 V, contoh dan sumber belajar paling banyak | Arduino Uno |
| Wi-Fi, Bluetooth, internet, kendali dari ponsel | ESP32 atau Pico W |
| Belajar pemrograman dengan Python | Raspberry Pi Pico |
| Harga sangat murah, pewaktuan presisi (PIO) | Raspberry Pi Pico |
| Proyek kamera dan audio | ESP32-S3 atau ESP32-CAM |
Untuk proyek yang butuh nirkabel, kenali ESP32 di Apa Itu ESP32? Kekuatan khas Pico adalah blok PIO (input/output yang bisa diprogram): blok ini menangani tugas yang kritis soal pewaktuan, seperti LED strip WS2812B atau protokol komunikasi khusus, tanpa membebani prosesor.
Ide proyek dengan Raspberry Pi Pico
- Lampu lalu lintas: lampu lalu lintas dengan tiga LED yang menyala berurutan.
- Knight Rider: efek cahaya yang berlari bolak-balik di enam LED.
- Tombol dan interrupt (IRQ): kode yang menangkap tekanan tombol tanpa menunggu loop utama.
- Siklus warna RGB: efek pelangi di LED RGB dengan tiga channel PWM.
- Web server Pico W: kendalikan LED atau relay dari halaman yang dibuka di ponselmu.
- Termometer mini: tampilkan hasil pembacaan sensor suhu bawaan di layar OLED.
Kesalahan umum dan cara mengatasinya
- Drive RPI-RP2 tidak muncul: board dicolokkan tanpa menahan BOOTSEL, atau kabelnya hanya untuk mengecas; pakai kabel data.
- Thonny tidak menemukan board: interpreter yang dipilih salah, atau MicroPython belum terinstal di board.
- LED tidak menyala di Pico W: di Pico W, LED bawaan terhubung ke chip nirkabel; pakai Pin("LED"), bukan Pin(25).
- Menghubungkan sinyal 5 V: GPIO bekerja di 3,3 V; sinyal 5 V bisa merusak pin.
- Kode tidak berjalan ketika dicabut dari komputer: kodenya tidak disimpan ke Pico sebagai main.py.
- Tegangan terlalu tinggi di VSYS: VSYS menerima paling tinggi 5,5 V; jangan hubungkan adaptor 9 V atau 12 V secara langsung.
Dengan harganya yang murah dan dukungan Python, Raspberry Pi Pico adalah salah satu cara termudah untuk memadukan coding dan elektronika. Dasar-dasar LED bisa kamu temukan di Apa Itu LED?; di aplikasi BlueGrays kamu akan menemukan proyek Pico untuk mengedipkan LED, lampu lalu lintas, Knight Rider, interrupt tombol, efek bernapas dengan PWM, dan siklus warna RGB, langkah demi langkah lengkap dengan skema rangkaian dan kode MicroPython.
Pertanyaan umum
Apakah Raspberry Pi Pico adalah komputer Raspberry Pi?
Bukan. Pico adalah board mikrokontroler buatan Raspberry Pi Foundation; board ini tidak punya sistem operasi, output layar, maupun desktop. Seperti Arduino, Pico menjalankan satu program. Raspberry Pi 4 dan 5 adalah komputer lengkap yang menjalankan Linux.
Dengan bahasa apa Raspberry Pi Pico diprogram?
Pilihan paling umum adalah MicroPython; mudah diinstal dengan Thonny dan siapa pun yang bisa Python bisa langsung mulai. SDK C/C++ resmi dan Arduino IDE (dengan paket buatan Earle Philhower) juga bisa dipakai. CircuitPython juga didukung.
Apa perbedaan Pico dan Pico W?
Pico W menambahkan chip nirkabel yang memberi Pico Wi-Fi 2,4 GHz dan Bluetooth; selebihnya sama. Karena LED bawaan di Pico W terhubung ke chip itu, di kode kamu memakai Pin("LED"), bukan Pin(25).
Apakah Raspberry Pi Pico bisa bekerja dengan 5 V?
Board ini bisa diberi daya dari 5 V USB atau dengan 1,8–5,5 V di pin VSYS. Namun pin GPIO bekerja di 3,3 V dan tidak tahan 5 V, jadi kamu tidak boleh menghubungkan sinyal 5 V langsung ke pin-pin itu.
Berapa banyak input analog di Pico?
Ada tiga input analog yang bisa dipakai: GP26 (ADC0), GP27 (ADC1), dan GP28 (ADC2). Channel ke-4 ADC juga terhubung ke sensor suhu di dalam chip. Di MicroPython, read_u16() mengembalikan nilai dari 0 sampai 65535.
Bisakah Raspberry Pi Pico diprogram dengan Arduino IDE?
Bisa. Setelah kamu menginstal paket board Raspberry Pi Pico/RP2040/RP2350 buatan Earle Philhower di Arduino IDE, kamu bisa memprogram Pico dengan perintah Arduino dan memakai sebagian besar library Arduino. Untuk upload pertama, kamu perlu menahan tombol BOOTSEL sambil menghubungkan board.
Proyek untuk dibuat setelah membaca ini
Lihat semua proyek
Kedip LED Bawaan Raspberry Pi Pico (Pico dan Pico W)
Proyek pembuka seri Raspberry Pi Pico! Kita mengedipkan LED hijau bawaan untuk memastikan board bekerja; percobaan "Hello World" klasik. TANPA komponen eksternal, hanya Pico dan kabel USB. Kodenya ditulis dalam MicroPython (bahasa resmi dari Raspberry Pi Foundation). Pelajari kelas machine.Pin, mode Pin.OUT, metode led.on()/off(), dan time.sleep() di Thonny IDE, dan ikuti setiap perubahan di output Serial (REPL). Juga pas untuk menguji firmware MicroPython.

Raspberry Pi Pico: Mengendalikan LED Eksternal (Breadboard)
Langkah berikutnya setelah LED bawaan Pico: menyambungkan LED eksternal ke breadboard dan mengendalikannya lewat pin GP14. Di proyek ini, kamu belajar memakai pin GPIO serbaguna Pico mana pun sebagai output, polaritas LED (kaki panjang = anoda/+, kaki pendek = katoda/–), dan kenapa resistor pembatas arus (220Ω) diperlukan. Tanpa resistor, arus berlebih mengalir melalui LED dan LED bisa terbakar. Rangkaiannya sangat sederhana: Pico GP14 → resistor 220Ω → LED → GND.

Simulator Lampu Lalu Lintas Raspberry Pi Pico (3 LED Berurutan)
Kita menyimulasikan lampu lalu lintas sungguhan dengan LED merah, kuning, dan hijau; proyek 3 LED pertama di seri Pico! Hijau 4 detik "jalan", kuning 1,5 detik "siap", merah 3 detik "berhenti", dan merah+kuning 1 detik "bersiap" (pola Eropa). Pelajari pendefinisian fungsi (def all_off()), logika state machine, dan sinkronisasi beberapa GPIO. 3 LED di GP11 (Hijau), GP12 (Kuning), GP13 (Merah), masing-masing dengan resistor 220Ω, berdampingan di board.

LED Berjalan Raspberry Pi Pico (6 LED)
Animasi "LED berjalan" klasik dengan Pico, versi 6 LED! 6 LED menyala berurutan dari kiri ke kanan, seperti cahaya yang berjalan. Pelajari list Python, list comprehension ([Pin(p, Pin.OUT) for p in LED_PINS]), loop for dengan kendali pin, dan enumerate(). 6 LED di GP9-GP14, masing-masing dengan resistor 220Ω. Alih-alih mendefinisikan LED satu per satu, kita memakai list; kamu bisa menambah LED sebanyak pin GPIO yang bebas. Untuk 100 LED, pakai LED beralamat seperti WS2812B.

LED yang Dikendalikan Tombol Raspberry Pi Pico (Tekan)
Proyek input pertama dengan Pico: membaca tombol! LED menyala selama tombol ditekan, dan mati ketika dilepas. Ini langkah besar setelah animasi LED: sinyal masuk dari dunia luar ke Pico. Pelajari Pin.IN (mode input), Pin.PULL_UP (resistor pull-up internal, standar untuk tombol), dan pembacaan button.value(). LED di GP14, tombol di GP2 (PULL_UP internal). Ditekan = LOW (0), dilepas = HIGH (1); logika terbalik ini awalnya terasa membingungkan, tetapi merupakan standar industri.

Debounce Tombol Raspberry Pi Pico: IRQ vs Polling Perangkat Lunak
Tekan tombol sekali, kode menghitung 3-4? Itu pantulan kontak: kontak logam bergetar beberapa mikrodetik! Bandingkan 2 metode di Serial: polling MENTAH (ikut menghitung pantulan) vs IRQ + debounce perangkat lunak (akurat). Pelajari pantulan kontak, debounce perangkat lunak (ticks_diff() > 50ms), interrupt Pin.irq(), pemicu IRQ_FALLING, handler ISR, serta global + keamanan ISR. LED berbalik lewat IRQ, dan Serial menampilkan kedua penghitung.

LED Fade PWM Raspberry Pi Pico (Efek Bernapas)
LED tidak lagi sekadar berkedip, ia bernapas! Dengan PWM (Pulse Width Modulation) Pico, kecerahan LED naik lalu turun perlahan, seperti lampu MacBook yang tidur. Pelajari kelas machine.PWM, duty_u16() (kecerahan 16-bit 0–65535), frekuensi PWM (freq(1000): 1000 siklus per detik, tanpa kedipan terlihat), loop range() bertahap, dan output mirip analog dari pin digital. PWM juga dipakai untuk warna RGB, motor, servo, dan buzzer.

Siklus Warna LED RGB Raspberry Pi Pico (PWM 3 Kanal)
Satu LED, jutaan warna! LED RGB berisi 3 LED: merah, hijau, dan biru. Masing-masing digerakkan dengan kanal PWM Pico sendiri: merah + hijau = kuning, hijau + biru = cyan, ketiganya = putih. LED berputar melewati 8 warna. Pelajari beberapa kanal PWM, mendefinisikan fungsi (def set_color(...)), pencampuran warna RGB (cara kerja layar), konversi 8-bit → 16-bit (x257 memetakan 0–255 ke 0–65535), dan LED katoda bersama vs anoda bersama.
Artikel lainnya
Aplikasi BlueGrays
Rakit rangkaian ini langkah demi langkah di ponselmu
Skema pengkabelan, kode, dan daftar komponen dalam satu layar. 200+ proyek Arduino, ESP32, dan Pico siap dibuat.
Pindai dengan ponselmu
Arahkan kamera ke kode ini dan toko aplikasi di ponselmu akan terbuka.
atau buka toko aplikasi

