“STM32F407 vs Raspberry Pi 4: MCU ile Embedded Linux Karşılaştırması”
Gömülü sistemler dünyasında en temel karar şudur: Projeniz için bir mikrodenetleyici (MCU) mi yoksa Linux çalıştırabilen bir tek kart…
“STM32F407 vs Raspberry Pi 4: MCU ile Embedded Linux Karşılaştırması”
Gömülü sistemler dünyasında en temel karar şudur: Projeniz için bir mikrodenetleyici (MCU) mi yoksa Linux çalıştırabilen bir tek kart bilgisayar mı kullanmalısınız? Bu yazıda, aynı ARM ailesinden gelen iki platformu karşılaştıracağız.
İki Platformun Kimlik Kartları
STM32F407 — STMicroelectronics tarafından üretilen bir mikrodenetleyicidir (MCU). ARM Cortex-M4F çekirdeğine sahiptir, 168 MHz’de çalışır, 192 KB RAM ve 1 MB Flash bellek barındırır. İşletim sistemi çalıştırmaz; kod doğrudan donanım üzerinde (bare-metal) çalışır. Fiyatı geliştirme kartıyla birlikte yaklaşık ₺150–300 civarıdır.
Raspberry Pi 4 — Raspberry Pi Foundation tarafından üretilen bir tek kart bilgisayardır (SBC). 4 çekirdekli ARM Cortex-A72 işlemciye sahiptir, 1.5 GHz’de çalışır, 2–8 GB RAM ve microSD depolama sunar. Tam bir Linux işletim sistemi çalıştırır. Fiyatı modele göre ₺2000–5000 arasındadır.
Donanım Mimarisi
STM32F407, her şeyin tek bir çipe sığdığı bir mikrodenetleyicidir. İşlemci, bellek, ADC, DAC, timer ve iletişim arayüzlerinin tamamı çip üzerindedir. MMU (Memory Management Unit) yoktur, yalnızca basit bir MPU (Memory Protection Unit) bulunur. Önbellek (cache) de yoktur. Fiziksel boyutu sadece ~14x14 mm’dir.
Raspberry Pi 4, bir SoC (System on Chip) etrafına inşa edilmiş tam bir bilgisayardır. Broadcom BCM2711 çipi içinde 4 çekirdekli işlemci, GPU (VideoCore VI) ve MMU yer alır. L1 ve L2 önbellek mevcuttur. Harici RAM, USB, HDMI, WiFi ve Bluetooth gibi bileşenler PCB üzerinde bulunur. Boyutu bir kredi kartı kadardır (~85x56 mm).
Temel fark: STM32'de MMU yok, yani sanal bellek veya süreç izolasyonu yapamazsınız. RPi4'te MMU sayesinde Linux’un tüm bellek yönetimi özellikleri çalışır.
Yazılım ve İşletim Sistemi
STM32F407'de işletim sistemi yoktur. Yazdığınız C/C++ kodu doğrudan donanım üzerinde çalışır. Donanımı kontrol etmek için HAL (Hardware Abstraction Layer) veya register seviyesinde programlama yaparsınız. Tek bir firmware çalışır, çoklu görev (multitasking) istiyorsanız kendiniz bir süper döngü (super loop) veya basit bir zamanlayıcı yazmanız gerekir. Dosya sistemi yoktur.
Raspberry Pi 4'te tam bir Linux çekirdeği çalışır. Çoklu görev, süreç yönetimi, sanal bellek, dosya sistemi (ext4, FAT32) ve TCP/IP ağ yığını gibi tüm işletim sistemi hizmetleri hazırdır. Python, Java, Node.js gibi üst düzey dillerle geliştirme yapabilir, apt paket yöneticisiyle binlerce yazılım kurabilirsiniz.
Temel fark: STM32'de her şey sizin kontrolünüzde ama sorumluluğunuzdadır. RPi4'te Linux birçok karmaşıklığı sizden soyutlar ama esneklik pahasına.
Boot (Önyükleme) Süreci
STM32F407 çok basit bir boot sürecine sahiptir. Güç verildiğinde işlemci reset vektöründen başlar, startup kodu clock ve bellek konfigürasyonu yapar, ardından doğrudan main() fonksiyonu çağrılır. Tüm bu süreç milisaniyeler içinde tamamlanır.
Raspberry Pi 4 çok aşamalı bir boot sürecine sahiptir. Önce GPU dahili ROM’dan 1. aşama bootloader’ı yükler, ardından SD karttan bootcode.bin ve start4.elf yüklenir, config.txt okunur, Linux çekirdeği (kernel8.img) RAM’e yüklenir, çekirdek başlatılır, donanım algılanır, sürücüler yüklenir ve son olarak systemd servisleri ayağa kalkar. Bu süreç 10–30 saniye sürer.
Temel fark: STM32 neredeyse anlık başlar, RPi4 bir bilgisayar gibi boot eder.
Gerçek Zamanlılık
Bu, iki platform arasındaki en kritik farktır.
STM32F407, hard real-time bir sistemdir. Bir kesme (interrupt) geldiğinde yaklaşık 12 saat çevrimi (~70 nanosaniye) içinde yanıt verir ve bu süre her zaman aynıdır (deterministik). Cache, MMU veya işletim sistemi kaynaklı beklenmeyen gecikmeler yoktur. Motor kontrol, PID döngüleri ve sensör okuma gibi zamanlama hassasiyeti gerektiren görevler için idealdir.
Raspberry Pi 4, soft real-time bir sistemdir. Linux çekirdeğinin zamanlaması, süreç değişimi (context switch) ve cache davranışı nedeniyle kesme gecikme süresi mikrosaniyeden milisaniyeye kadar değişebilir ve öngörülemez. PREEMPT_RT yaması ile kısmen iyileştirilebilir, ancak hard real-time garanti edilemez. Görüntü işleme ve veri toplama gibi zaman-kritik olmayan görevler için uygundur.
Temel fark: Zamanlama garantisi lazımsa STM32, işlem gücü lazımsa RPi4.
Güç Tüketimi
STM32F407 ~100–200 mW güç tüketir. Stop ve Standby uyku modlarında tüketim µA seviyesine düşer. Bir pille aylarca çalışabilir. IoT sensör düğümleri ve giyilebilir cihazlar için idealdir.
Raspberry Pi 4 ~3–7 W güç tüketir. Tam bir uyku modu yoktur. Sürekli bir güç kaynağına ihtiyaç duyar. Pille uzun süreli çalışma pratik değildir.
Temel fark: STM32 miliwatt, RPi4 watt düzeyinde enerji tüketir — aradaki fark yaklaşık 30–50 kat.
Geliştirme Ortamı
STM32F407 için STM32CubeIDE veya Keil µVision gibi IDE’ler kullanılır. Kod bilgisayarda çapraz derlenir (cross-compilation) ve ST-Link programlayıcı ile JTAG/SWD üzerinden çipe yazılır. STM32CubeMX aracıyla pin konfigürasyonu ve clock ayarları grafiksel olarak yapılabilir.
Raspberry Pi 4 üzerinde doğrudan VS Code veya terminal ile geliştirme yapılabilir. Yerel derleme mümkündür. SSH ile uzaktan erişim, GDB ile debug yapılabilir. Özel Linux dağıtımları oluşturmak için Yocto veya Buildroot kullanılır.
İletişim Arayüzleri
STM32F407 düşük seviye iletişimde üstündür: 6 UART, 3 SPI, 3 I2C, 2 CAN Bus, 3 ADC (12-bit) ve 2 DAC (12-bit) sunar. Ancak WiFi, Bluetooth ve HDMI gibi yüksek seviye arayüzler için harici modüller gerekir.
Raspberry Pi 4 yüksek seviye bağlantıda üstündür: Gigabit Ethernet, WiFi 5, Bluetooth 5.0, 2x USB 3.0, 2x micro HDMI (4K) dahili olarak gelir. Ancak ADC, DAC ve CAN Bus yoktur — bunlar için harici modüller gerekir. GPIO pinleri üzerinden SPI, I2C ve UART da kullanılabilir.
Temel fark: STM32 sensör/aktüatör dünyasına, RPi4 ağ/görüntü dünyasına yakındır.
Güvenlik
STM32F407'de güvenlik donanım seviyesindedir. Flash okuma koruması (RDP) ile firmware korunabilir. Ancak işletim sistemi olmadığı için yazılım seviyesinde güvenlik duvarı veya kullanıcı izinleri yoktur.
Raspberry Pi 4'te Linux’un tüm güvenlik mekanizmaları mevcuttur: kullanıcı izinleri, firewall (iptables), SSH, TLS/SSL, SELinux. Yazılım güncellemeleri apt ile kolayca yapılır. Ancak SD kart fiziksel olarak çıkarılabilir olduğu için fiziksel güvenlik riski vardır.
Ne Zaman Hangisi?
STM32F407'yi tercih edin:
- Motor/servo kontrol, sensör veri toplama
- Pille çalışan cihazlar (IoT sensör düğümleri)
- Endüstriyel otomasyon, robotik (düşük seviye kontrol)
- Mikrosaniye hassasiyetinde zamanlama gerektiğinde
Raspberry Pi 4'ü tercih edin:
- Görüntü/video işleme, kamera uygulamaları
- IoT gateway, web sunucusu
- Makine öğrenmesi (Edge AI)
- Ağ bağlantısı ve veri analizi gereken projelerde
Sonuç
STM32F407 ve Raspberry Pi 4, aynı ARM ailesinden gelmelerine rağmen tamamen farklı dünyalara hizmet eder. STM32 hız, düşük güç ve determinizm sunar; RPi4 işlem gücü, ağ bağlantısı ve yazılım zenginliği sunar.
Modern gömülü sistemlerde bu iki platform sıklıkla birlikte kullanılır: MCU düşük seviyeli kontrol görevlerini üstlenirken, Linux tabanlı sistem üst düzey veri işleme ve iletişim görevlerini yürütür.
Bu yazıyı faydalı bulduysanız 👏 bırakmayı unutmayın! Gömülü sistemler hakkında daha fazla içerik için takip edebilirsiniz.
메타데이터
- post_id
- 32c2e63ebd85
- slug
- stm32f407-vs-raspberry-pi-4-mcu-ile-embedded-linux-karşılaştırması-32c2e63ebd85
- url
- https://medium.com/@utkumertgecgel/stm32f407-vs-raspberry-pi-4-mcu-ile-embedded-linux-kar%C5%9F%C4%B1la%C5%9Ft%C4%B1rmas%C4%B1-32c2e63ebd85
- canonical_url
- https://medium.com/@utkumertgecgel/stm32f407-vs-raspberry-pi-4-mcu-ile-embedded-linux-kar%C5%9F%C4%B1la%C5%9Ft%C4%B1rmas%C4%B1-32c2e63ebd85
- author_url
- https://medium.com/@utkumertgecgel
- status
- ok
- fetched_at
- 2026-08-09 02:15:51