Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Yazı Tipi BoyutlandırıcıAa
  • Anasayfa
  • Teknoloji
    • Siber Güvenlik
    • Yapay Zeka
    • Donanım
    • Bilim
  • Yazılım
  • Savunma & İstihbarat
  • Oyun
  • Yaşam
    • Finans
    • Sinema
    • Dünyadan Haberler
  • İş Birliği
Okuma: Raspberry Pi Pico W ve CircuitPython İle Nasıl Haber Alınır
Paylaş
Yazı Tipi BoyutlandırıcıAa
Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Ara
Bizi Takip Et
  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti
© 2026 Teknomers. All Rights Reserved.

Anasayfa » Raspberry Pi Pico W ve CircuitPython İle Nasıl Haber Alınır

Liste

Raspberry Pi Pico W ve CircuitPython İle Nasıl Haber Alınır

teknomers
Son güncelleme: 22 Ekim 2022 18:33
teknomers
Paylaş
Paylaş


Contents
  • Devreyi Kurmak
  • CircuitPython’u Yapılandırma
  • CircuitPython ile Çalışmak
  • Secrets.py Kod Listeleme
  • Komple Kod Listeleme

Raspberry Pi Pico, 2021’de kediyi kesinlikle güvercinlerin arasına soktu, ancak bir önemli özelliği, Wi-Fi’yi kaçırdı. Elbette kendi çözümümüzü hackleyebiliriz ancak resmi destek alabilmek için Raspberry Pi’nin Raspberry Pi Pico W’yi duyurması için 2022 ortalarına kadar beklememiz gerekti.

Raspberry Pi Pico W, sağlam bir MicroPython bellenimi ile piyasaya sürüldü, ancak DevrePython, en sevdiğimiz mikrodenetleyici Python sürümü ne yazık ki destekten yoksundu. Birkaç ay sürmüş olabilir, ancak sıkı çalışmasına @jeffepler Artık Pico W için Wi-Fi desteği sunan ve aynı zamanda tanıdık CircuitPython ekosistemini koruyan CircuitPython 8 Beta 2’ye sahibiz.

Bu dönüm noktasını kutlamak için Raspberry Pi Pico W üzerinde CircuitPython’u vurgulayacak bir proje hazırladık. Bir RSS haber akışından alınan, JSON’a dönüştürülen ve ardından küçük bir OLED ekranda görüntülenen canlı verilerle çalışacağız.

Devreyi Kurmak

Raspberry Pi İle Nasıl Haber Alınır?

(İmaj kredisi: Tom’un Donanımı)

Bu proje için ihtiyacınız olacak

Devre aslında sadece bir I2C bağlantısı aracılığıyla Raspberry Pi Pico’ya bağlı OLED ekrandır. Devreye eklenen tek şey, Pico’nun + rayına ve SDA ve SCL pinlerine bağlanan iki adet 4.7K Ohm dirençtir. Bu ray 3.3V’a bağlıdır ve dirençler pinleri yükseğe çekmek için kullanılır, veri göndermeye ve almaya hazırdır.

Bağlantılar aşağıdaki gibidir

Tel RengiAhududu Pi Pico Wekmek tahtasıOLED Ekran
YeşilGP0 (SDA)YokSDA
SarıGP1 (SCL)YokSCL
Kırmızı3V3 Çıkışı+şasi numarası
SiyahGNDYokGND

CircuitPython’u Yapılandırma

1. Raspberry Pi Pico W için resmi CircuitPython sayfasına gidin ve en son sürüm UF2 üretici yazılımı görüntüsünü indirin. Yazma sırasında bu CircuitPython 8 Beta 2 idi.

2. BOOTSEL düğmesini basılı tutarken Raspberry Pi Pico W’yi bilgisayarınıza bağlayın. Yeni bir sürücü, RPI-RP2 görünecek

3. İndirilen CircuitPython UF2 dosyasını RPI-RP2’ye kopyalayın. Bu, CircuitPython’u Pico W’nin dahili flaş belleğine yazacaktır. Yeni bir sürücü, CIRCUTPY görünecektir.

Devam edebilmemiz için birkaç CircuitPython kitaplığına ihtiyacımız var. Bu önceden yazılmış kod kitaplıkları, bir projeye ekstra özellikler ekler.

1. İndirmek kitaplık paketi Pico W’da kurulu olan CircuitPython’un aynı sürümü için. CircuitPython 8’i kurduk, böylece sürüm 8.x paketini indirdik.

2. Paketi masaüstünüze çıkarın ve sonra lib klasörünü açın içinde yer alır.

Raspberry Pi İle Nasıl Haber Alınır?

(İmaj kredisi: Tom’un Donanımı)

3. Aşağıdaki dosyaları / klasörleri bu lib klasöründen CIRCUTPY sürücüsündeki lib klasörüne kopyalayın.

adafruit_bitmap_font

adafruit_display_text

adafruit_displayio_ssd1306.mpy

adafruit_requests.mpy

Raspberry Pi İle Nasıl Haber Alınır?

(İmaj kredisi: Tom’un Donanımı)

CircuitPython ile Çalışmak

1. Thonny’yi indirin ve yükleyin zaten sahip değilsen. Thonny, Python 3, MicroPython ve CircuitPython’u kapsayan bir Python editörüdür.

2. Thonny’yi açın ve Araçlar >> Seçenekler’e gidin.

Raspberry Pi İle Nasıl Haber Alınır?

(İmaj kredisi: Tom’un Donanımı)

3. Yorumlayıcı’yı seçin, ardından yorumlayıcıyı CircuitPython, bağlantı noktası otomatik olarak ayarlayın ve Tamam’a tıklayın. Thonny şimdi CircuitPython çalıştıran Pico W’ye bağlanacak.

Proje kodumuz secrets.py ve code.py olmak üzere iki dosyadan oluşmaktadır. secrets.py dosyası esasen Wi-Fi erişim noktamızın SSID’sini ve şifreyi içeren iki değişkenli bir Python modülüdür. Wi-Fi ayrıntılarınızı secrets.py adlı ayrı bir dosyaya kaydetmek en iyi yöntemdir; bu, kimlik bilgilerinizi yanlışlıkla paylaşma riskini azaltır. Bu işlem CircuitPython ve MicroPython için çalışır.

1. Yeni bir dosya oluşturun ve orada ssid ve password olmak üzere iki nesne oluşturun.

2. ssid nesnesi için, ona Wi-Fi erişim noktanızın / yönlendiricinizin adını atayın.

ssid = “YOUR WI-FI AP NAME HERE”

3. Şifre için Wi-Fi şifresini atayın.

password = “YOUR SECRET PASSWORD”

4. Dosyayı CIRCUTPY sürücüsüne secrets.py olarak kaydedin.

Secrets.py Kod Listeleme

ssid = "YOUR WI-FI AP NAME HERE"
password = "YOUR SECRET PASSWORD"

Bu projenin kodu, code.py adlı bir dosyada bulunur. Bu dosya Pico W açıldığında otomatik olarak çalışacaktır, bu CircuitPython’un bir özelliğidir. MicroPython’da aynı sonucu elde etmek için main.py dosyasını adlandırırdık. Şimdi projemizi oluşturacak kodu yazma işlemine başlıyoruz.

1. Dosya >> Aç’a tıklayın ve CircuitPython cihazını seçin. CIRCUTPY sürücüsünde code.py’yi açın. Dosyadaki herhangi bir kodu silin.

Raspberry Pi İle Nasıl Haber Alınır?

(İmaj kredisi: Tom’un Donanımı)

2. Önceden yazılmış kodun modüllerini içe aktarın kodumuzu duraklatmak (zaman) için bir IP adresi belirlemek, Pico W’nin Wi-Fi çipini kullanmak ve web soketleri oluşturmak için.

import time
import ipaddress
import wifi
import socketpool

3. Dört modül daha içe aktarın güvenli bağlantılar, web istekleri yapmak için, Wi-Fi oturum açma bilgilerimizi içeren bir modül ve GPIO ile etkileşime geçmek için bir modül.

import ssl
import adafruit_requests
import secrets
import board

4. Son modül grubunu içe aktarın hızlandırılmış veri yolu erişimi için bir ekran kitaplığı, bir terminal stili metin modülü, kayan metin ve OLED ekran için bir sürücü.

import busio
import displayio
import terminalio
from adafruit_display_text.scrolling_label import ScrollingLabel
import adafruit_displayio_ssd1306

5. CircuitPython için ekranı serbest bırakın kullanmak için ve sonra I2C için kullanılan GPIO pinlerini belirtin.

displayio.release_displays()
i2c = busio.I2C(board.GP1, board.GP0)

6. OLED ekranı için I2C arayüzünü ve I2C adresini belirtin ekran veriyolunda ve ardından bunu bir görüntüleme nesnesi oluşturmak için kullanın. Genişliği ve yüksekliği OLED ekranınıza göre ayarlamayı unutmayın. OLED ekranın I2C adresini bulmak için veri sayfasına bakın veya aramak için bir I2C tarayıcı kullanın.

display_bus = displayio.I2CDisplay(i2c, device_address=0x3C)
display = adafruit_displayio_ssd1306.SSD1306(display_bus, width=128, height=32)

7. Wi-Fi’ye bağlanın secrets modülünde saklanan ssid ve şifreyi kullanarak.

wifi.radio.connect(ssid=secrets.ssid,password=secrets.password)

8. Bir yuva havuzu oluşturun bağlantılar için kullanabileceğimiz ve ardından yeni bir HTTP oturumu oluşturun Web istekleri yaparken kullanılacak.

pool = socketpool.SocketPool(wifi.radio)
request = adafruit_requests.Session(pool, ssl.create_default_context())

9. Bir while True döngüsü oluşturun ana proje kodunu çalıştırmak için. Bu döngü, Pico W açık olduğu sürece devam edecektir.

while True:

10. Bir başlık oluşturun ve onu toms nesnesine kaydedin.Banner bir * dizisidir, ardından “Tom’s Hardware News” ve ardından 10 tane daha *.

toms = "*"*10+" Tom's Hardware News"+"*"*10

11. Metni kaydırmak için bir nesne oluşturun toms nesnesinde saklanır. Animasyon süresi kaydırma hızını yönetir, ölçek, 128×32 ekranımız için mevcut en büyük 3 olmak üzere metin boyutunu artırmak için kullanılır.

my_scrolling_label = ScrollingLabel(terminalio.FONT, text=toms, max_characters=20, animate_time=0.1, scale=3)

12. Metnin konumunu ayarlayın (yatay, x ve dikey, y).

my_scrolling_label.x = 10
my_scrolling_label.y = 10

13. Metni OLED ekranında gösterin.

display.show(my_scrolling_label)

14. Başlığı kaydırmak için bir for döngüsü kullanın ekran boyunca. Hoş bir kaydırma oluşturmak için toms nesnesinde saklanan metnin uzunluğunu eksi altı olarak kullanıyoruz. Bunun, banner metninize uyacak şekilde ayarlanması gerekecektir.

for i in range(len(toms)-6):
        my_scrolling_label.update()
        time.sleep(0.1)

15. Bir nesne oluşturun, besleyin ile haber başlıklarını içeren JSON beslemesinin URL’sini saklayın. Kullandığımız rss2json.com Tom’s Hardware RSS beslemesini CircuitPython’da kolayca çalışılabilen JSON’a dönüştürmek için.

feed = 
request.get("https://api.rss2json.com/v1/api.json?rss_url=https%3A%2F%2Fwww.tomshardware.com%2Ffeeds%2Fall")

16. İlk beş hikayeyi almak için bir for döngüsü kullanın beslemeden.

for story in range(5):

17. Hikayenin başlığını yazdırın Python kabuğuna.

print(feed.json()['items'][story]['title'])

18. Başlığı kaydırmak için kayan metni güncelleyinmetinden önce 20 boşlukluk bir arabellek ve 2’lik bir ölçek (metin boyutu) ile.

my_scrolling_label = ScrollingLabel(terminalio.FONT, text=" "*20+str(feed.json()['items'][story]['title']), max_characters=20, animate_time=0.1, scale=2)

19. Metnin konumunu ayarlayın (yatay, x ve dikey, y).

my_scrolling_label.x = 10
my_scrolling_label.y = 10

20. Metni OLED ekranında gösterin.

display.show(my_scrolling_label)

21. Başlık metnini kaydırmak için başka bir for döngüsü kullanın. Döngüdeki yinelemeler, başlığın uzunluğuna ve bir arabellek oluşturmak için 21 karaktere göre ayarlanır.

for i in range(len(feed.json()['items'][story]['title'])+21):
            my_scrolling_label.update()
            time.sleep(0.1)

22. Son olarak 30 dakikalık bir uyku ekleyin, (1800 saniye) Pico W’yi her yarım saatte bir yeni manşetleri kontrol edecek şekilde ayarlamak için.

time.sleep(1800)

23. Projeyi code.py olarak kaydedin DEVREYE girin ve kodu başlatmak için Çalıştır’a tıklayın.

Raspberry Pi İle Nasıl Haber Alınır?

(İmaj kredisi: Tom’un Donanımı)

OLED ekranın canlandığını ve bir banner’ı, ardından haber manşetlerini kaydırdığını görmelisiniz. Projeyi code.py dosyasına kaydettiğimiz için, Pico W açıldığında bu kod otomatik olarak çalışacaktır.

Komple Kod Listeleme

import time
import ipaddress
import wifi
import socketpool
import ssl
import adafruit_requests
import secrets
import board
import busio
import displayio
import terminalio
from adafruit_display_text.scrolling_label import ScrollingLabel
import adafruit_displayio_ssd1306

# Setup the display
displayio.release_displays()
i2c = busio.I2C(board.GP1, board.GP0)
display_bus = displayio.I2CDisplay(i2c, device_address=0x3C)
display = adafruit_displayio_ssd1306.SSD1306(display_bus, width=128, height=32)

wifi.radio.connect(ssid=secrets.ssid,password=secrets.password)
pool = socketpool.SocketPool(wifi.radio)
request = adafruit_requests.Session(pool, ssl.create_default_context())
while True:
    toms = "*"*10+" Tom's Hardware News"+"*"*10
    my_scrolling_label = ScrollingLabel(terminalio.FONT, text=toms, max_characters=20, animate_time=0.1, scale=3)
    my_scrolling_label.x = 10
    my_scrolling_label.y = 10
    display.show(my_scrolling_label)
    for i in range(len(toms)-6):
        my_scrolling_label.update()
        time.sleep(0.1)

    feed = request.get("https://api.rss2json.com/v1/api.json?rss_url=https%3A%2F%2Fwww.tomshardware.com%2Ffeeds%2Fall")
    for story in range(5):
        print(feed.json()['items'][story]['title'])
        my_scrolling_label = ScrollingLabel(terminalio.FONT, text=" "*20+str(feed.json()['items'][story]['title']), max_characters=20, animate_time=0.1, scale=2)
        my_scrolling_label.x = 10
        my_scrolling_label.y = 10
        display.show(my_scrolling_label)
        for i in range(len(feed.json()['items'][story]['title'])+21):
            my_scrolling_label.update()
            time.sleep(0.1)
time.sleep(1800)





genel-21

Burnley – Watford canlı akışı — Premier League 21/22 maçı çevrimiçi nasıl izlenir
Intel Foundry, dünyanın en büyük ikinci dökümhanesi olma hedefiyle Samsung’un Güney Koreli müşterilerini kaçırmaya çalışıyor: rapor
Meta, beş kıtayı birbirine bağlayan bir denizaltı kablosu dağıtacak
Ryzen AI 9 HX 375, Geekbench 6 kıyaslamasında parlıyor — Strix Point, Core i9-14900HX’ten daha yüksek tek çekirdek performansına sahip ancak çoklu çekirdekte geride kalıyor
Rethink, 50 milyon avroluk yeni fonla mobilite ve lojistiği yeniden değerlendiriyor
ETİKETLENDİ:AlınırCircuitPythonhaberilenasılPicoRaspberry
Bu Makaleyi Paylaş
Facebook Bağlantıyı Kopyala Yazdır
Paylaş
Önceki Makale Garip esnek ama tamam: WhatsApp, güvenli uygulamalara göre konum güvenlik açığından daha az duyarlı
Sonraki Makale Apple’ın ikinci nesil Magic Trackpad’i şimdiye kadarki en düşük fiyatıyla satışta

Sanal Medya

FacebookBeğen
452Takip Et
PinterestSabitle
237Takip Et

Son Eklenenler

Oturduğunuz yerden PC’nizi açmanızı sağlayan mükemmel alet
Donanım
Acil: Cisco Unified CM Açığı Kök Düzeyine Yazım Yolu Sızdırdı
Siber Güvenlik
PHP 8.5’in Pipe Operatörü ve Laravel Koleksiyonları: Piper Nerede Uygun, Nerede Uygun Değil
Yazılım
2026 Prime Day: Kaçırılmayacak MacBook Fırsatları!
Genel
Newegg’den 3 parçada 447 $ indirim: 4TB SSD, 32GB RAM, Anakart
Donanım
Hızla Değişen Dünyada Yatırım Yapmanın Yolları
Genel
//

Siber güvenlik, yapay zeka ve savunma sanayiinden; finans ve sinema dünyasına uzanan geniş bir yelpaze. Teknomers; teknoloji, strateji ve yazılım dünyasını sade bir dille sizlerle buluşturuyor.

Kurumsal

  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti

Kategoriler

  • Teknoloji
  • Oyun
  • Sinema
  • Siber Güvenlik
  • Bilim
  • Finans
  • Dünyadan Güncel Haberler

Populer

  • TV'de Ücretsiz İzlenebilen Şifresiz Erotik Kanallar (2025 Güncel Frekans Listesi)

  • The Last of Us PC Kontrolleri: Hızlı Silah Değiştirme ve Tüm Tuşlar (2025)

  • Hogwarts Legacy'de Odaklanma İksiri Nasıl Yapılır?

Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Bizi Takip Et
© 2026 Teknomers. All Rights Reserved.
Welcome Back!

Sign in to your account

Kullanıcı Adı veya E-posta Adresi
Şifre

Şifrenizi mi unuttunuz?