Raspberry Pi Pico ile MicroPython Kullanımı

2012’de, Raspberry Pi Foundation bizi tek kartlı bir bilgisayar olan Raspberry Pi ile tanıştırdı ve bu bilgisayar temel olarak çocuklara bilgisayar biliminin temellerini öğretmek için tanıtıldı. Ancak 9 uzun yıl sonra, 2021 yılında, Raspberry Pi Foundation bizi Raspberry Pi Foundation’ın kendi silikon çipi RP2040 ile birlikte gelen Raspberry Pi Pico adlı bir mikrodenetleyici kartıyla tanıştırdı.

Raspberry Pi Pico, düşük maliyetli bir mikrodenetleyicidir ve fiyatı 4 dolardır. GPIO ve Dijital/Analog çevre birimlerinin yanı sıra Çift Çekirdekli ARM işlemciye sahip olduğu için, mikro ve küçük ölçekli gömülü uygulamaları kolayca oluşturabiliriz. Bu eğitimde, MicroPython kullanarak Raspberry Pi Pico’nun Nasıl Programlanacağını öğreneceğiz ve kartın temellerini anlayacağız.

Specifications of the Raspberry Pi Pico

Raspberry Pi Pico 133 MHz’e kadar çalışabilen Çift Çekirdekli ARM Cortex M0+ işlemciyle birlikte gelir. 264 KB SRAM ve 2 MB yerleşik flash depolamaya sahiptir, ancak özel bir Quad-SPI veri yolu aracılığıyla 16 MB’a kadar çip dışı Flash belleği genişletebiliriz. 3.3v dijital G/Ç’yi destekleyen toplam 26 adet çok işlevli GPIO’ya sahibiz ve bunların 3’ü aynı zamanda analog giriştir. Raspberry Pi Pico ayrıca mikro USB, harici sarf malzemeleri veya piller gibi oldukça esnek güç kaynağı mimarisini destekler.

Alt görselde de gördüğümüz üzere Raspberry Pi Pico 40 adet pin çıkışına sahip ve bunların 26 tanesi multi-fonksiyonel GPIO’dur. Ayrıca, GPIO25’e bağlı yerleşik bir LED’e sahiptir. En hayal kırıklığı yaratan şeyler, mikro usb gibi eski bir konnektör kullanması ve kart üzerinde donanım sıfırlama düğmesi olmamasıdır. Raspberry Pi Pico kartının pin yapısı aşağıda gösterilmiştir.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Linux Tabanlı Sistemde Raspberry Pi Pico için MicroPython Kurulumu

Donanımı anladığımızda, uygulamaları geliştirmek için bir MicroPython yazılım geliştirme ortamına ihtiyacımız var. MicroPython ortamını kurmak için Ubuntu 20.04 LTS kullanıyoruz.

MicroPython Python’un C ile yazılmış ve Raspberry Pi Pico gibi daha küçük mikrodenetleyiciler için optimize edilmiş bir sürümüdür. MicroPython’a kod yüklemek ve yazmak için Geliştirme sistemine Python’u yüklememiz gerekir. Bizim durumumuzda, Ubuntu geliştirme sistemimde Python3 kullanıyoruz.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Python’u yükledikten sonra, kodu kusursuz bir şekilde geliştirmek için Python IDE “Thonny”yi yüklememiz gerekir. Thonny IDE, Windows/MacOS’u da destekler. Geliştirme sistemimize göre IDE’yi indirmemiz ve kurmamız yeterli.

pip3 install thonny
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Raspberry Pi Pico’ya Program Nasıl Yüklenir?

Thonny IDE’yi indirip yükledikten sonra, şimdi Raspberry Pi Pico’yu geliştirme sistemiyle önyükleyiciye bağlama zamanı. Bildiğimiz gibi, Raspberry Pi Pico’yu programlamak için herhangi bir programcıya ihtiyacımız yok. Yerleşik BOOTSEL düğmesine Pico sistem tarafından tanınana kadar basılı tutarken USB’yi Pico ile beraber takmamız ve ardından BOOTSEL düğmesini bırakmamız gerekir.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Yerleşik bir BOOTSEL düğmesi, Raspberry Pi Pico’yu seçerek Bootloader(önyükleyici) moduna girmeye yarıyor, yeni firmware yazılımını yüklemek veya doğrudan MicroPython’da kod yazmak için kullanılır. Raspberry Pi Pico önyükleyici moduna girdikten sonra, RPI-RP2 adıyla bir depolama birimini bilgisayar üzerinde kurulur. Şimdi takılı sürücü olarak görülen RPI-RP2’ye tıklayın ve açın.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Şimdi Thonny Python IDE’yi açmak için Ctrl+Alt+T komutunu python3 -m thonny yazıp terminali açın ve Raspberry Pi Pico’nun sisteme takılı olduğundan emin olun.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Şimdi Thonny IDE’de Pico kodunu geliştirmek için kullandığımız Python yorumlayıcısı “MicroPython (Raspberry Pi Pico)” seçmek için Thonny penceresinin sağ alt kısmındaki “Python”u ve ardından bir sürüm numarasını tıklayın.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

“MicroPython (Raspberry Pi Pico)” yorumlayıcısını seçtikten sonra, ekranda bir Kurulum penceresi açılacaktır. Bu kurulum penceresinde, en son MicroPython sabit yazılımını Raspberry Pi Pico’ya güncellemek/kurmak için kur düğmesine tıklamamız gerekiyor.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Micropython’u Raspberry Pi Pico’ya yükledikten sonra, RPI-RP2 sürücüsü kendisini sistemden otomatik olarak ayırır ve Shell panelinde bir Micropython REPL etkileşimli kabuğunun istemi gösterilir.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Raspberry Pi Pico’nun MicroPython REPL etkileşimli kabuğunda, tıpkı komut/terminal istemi gibi python kodu yazabilir ve doğrudan çalıştırabiliriz.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı
>>> print ('Hello Pico!')
Hello Pico!
>>>
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

İlk Projeyi Derleyin ve Yükleyin [LED Yakıp Söndürme]

Artık her şey hazır olduğuna göre, IDE ve MicroPython Library’nin olması gerektiği gibi çalışıp çalışmadığını kontrol etmek için ilk projemizi [led blink] derlemeye çalışalım.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Şimdi Blink-Led python kodunu Thonny IDE’nin ana paneline yazın ve ardından kontrol çubuğunun üst kısmındaki ÇALIŞTIR [Yeşil Düğme]’ye tıklayın.

from machine import Pin
import time
led = Pin(25, Pin.OUT)
while True:
    led.high()
    time.sleep(.25)
    led.low()
    time.sleep(.25)
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

ÇALIŞTIR düğmesine tıkladıktan sonra, Kaydetme konumunu seçmek için bir pop-up pencere açılacaktır. “Raspberry Pi Pico” seçmemiz ve dosyayı “main.py” adıyla kaydetmemiz gerekiyor. Dosyayı kaydettikten sonra, yerleşik led yanıp sönmeye başlayacak ve Raspberry Pi Pico’yu güç bankasıyla çalıştırdığımızda bile led yanıp sönmeye başlayacak.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı
Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Not: Dosyayı “main.py” adıyla kaydetmemiz gerekir çünkü Raspberry Pi Pico açılışında, önceden yüklenmiş MicroPython Ürün Yazılımı sistemi başlatmak için main.py’yi arar. Tıpkı C/C++ ana işlevi(main function) gibi.

Raspberry Pi Pico ile MicroPython Kullanımı Raspberry Pi Pico ile MicroPython Kullanımı

Kodun Tamamı

from machine import Pin
import time

led = Pin(25, Pin.OUT)

while True:
    led.high()
    time.sleep(.25)
    led.low()
    time.sleep(.25)