---
title: "Mikrodenetleyiciden Ekranlara: Dijital Kaosu Donanıma Uyarlama Rehberi"
description: "Her yeni projeye başladığımda beni en çok heyecanlandıran şey, tamamen öngörülemez bir sistemin belirli kurallar dahilinde tutarlı bir çıktı üretmesini…"
date: 2026-11-01T20:54:39Z
updated: 2026-11-01T20:54:39Z
author: "Alper Kaya"
site: "Sıfırdan Kod Satırına"
language: "tr"
tags: ["mikrodenetleyici", "rastgelelik", "donanım", "iot", "arduino"]
url: "https://devirmakina99.nasilalinir.com/mikrodenetleyiciden-ekranlara-dijital-kaosu-donanima-uyarlama-rehberi"
---

# Mikrodenetleyiciden Ekranlara: Dijital Kaosu Donanıma Uyarlama Rehberi

Her yeni projeye başladığımda beni en çok heyecanlandıran şey, tamamen öngörülemez bir sistemin belirli kurallar dahilinde tutarlı bir çıktı üretmesini sağlamaktır. Bu, sadece yazılımda değil, en temel donanım seviyesinde de geçerlidir. Kontrol edilemez görünen bir kaosu yakalayıp onu istenen, ölçülebilir bir duruma dönüştürmek; bu benim için her zaman en tatmin edici mühendislik görevlerinden biri oldu.

Bu yazıda, yalnızca bir bilgisayarın `rand()` fonksiyonunu çağırmaktan öteye geçerek, gerçekten **fiziksel bir entropi kaynağını** mikrodenetleyicilerimize nasıl aktarabileceğimizi anlatacağım. Birçok amatör proje, bilgisayarın zamanlayıcısına güvenerek "rastgelelik" üretmeye çalışır. Ama gerçek dünya, binlerce farklı gürültü kaynağı sunuyor; biz sadece onu dinlemeyi öğrenmeliyiz.

## Dijital Tohum Yerine Fiziksel Gürültü Yakalamak

Eğer projemizin kalbi, gerçekten öngörülemez bir olay olmalıysa—örneğin bir IoT ağında beklenmedik veri paketleri göndermek veya bir sensörü bilinmezlik sınırlarında çalıştırmak istiyorsak—sanal sayaçlar bizi yanıltır. Bizim ihtiyacımız olan şey, çevreyle etkileşimden doğan doğal bir belirsizliktir.

Bunu mikrodenetleyici seviyesinde birkaç farklı yolla yapabiliriz:

1. **Analog Gürültüyü Dijitalleştirmek (ADC ile):** Buradaki sihir, bir analog-dijital dönüştürücü (ADC) kullanmaktır. Örneğin, beklenmedik seviyede gelen bir ses dalgasını (çok düşük voltajdaki beyaz gürültü bile olabilir) veya hatta basitçe sıcaklık sensöründen gelen hafif sapmaları okuyarak, bu sürekli değişen analog voltajı dijital sayılara çeviriyoruz. Bu sayılar, doğanın bize sunduğu en saf rastgelelik tohumlarıdır.
2. **Zamanlama Kaosunu Kullanmak:** Eğer harici bir gürültü kaynağına ulaşamıyorsak, yazılımsal olarak en iyi rastgeleliği elde etmek için, farklı kesme (interrupt) sürelerinin veya donanımın doğal gecikmelerinin varyasyonunu kullanabiliriz. Ancak bu, mikrodenetleyicinin saat modülüne çok derinlemesine hakim olmayı gerektirir.

## Uygulama Örneği: Seri Port Üzerinden Tohum Beslemesi

Benim son denemelerimde, en temiz sonucu aldığım yöntem, bir seri porta (UART/USB) üzerinden harici bir düşük seviye gürültü kaynağını okumaktır.

Diyelim ki Raspberry Pi'nin GPIO pinlerinden birine bağlı, hassas bir ses okuyucu ile mikrodenetleyicimizi besliyoruz. Mikrodenetleyici, sadece bu ADC değerlerini okuyarak gelen gürültünün "anlık fotoğrafını" çekiyor.

Bu ham veriyi aldığımızda, onu kullanabileceğimiz bir sayı dizisine dönüştürüyoruz. Önemli olan şu ki, bu değerler *tekrar eden* bir desene sahip olmamalıdır. Eğer sürekli olarak aynı ortam gürültüsünü okuyorsak, entropi tükenir. Bu yüzden sensörün farklı bir yere konumlandırılması veya fiziksel ortamın sürekli değişmesi gerekir.

**Pratik İpuçları:**

* **Örneklem Hızı vs. Veri Kalitesi:** Yüksek örnekleme hızı, gürültüyü çoğaltabilir; bu yüzden önce uygun bir okuma hızını bulun.
* **Filtreleme Tuzağından Kaçın:** Gürültü kaynağınız saf bir kaossa, ilk başta hiçbir filtre uygulamayın. Filtreler, var olan entropiyi öldürür ve onu öngörülebilir bir ortalamaya çeker.
* **Tohum Depolama:** Aldığınız bu ham, yüksek kaliteli rastgele sayıları (entropi tohumlarını), kendi belirlediğiniz bir algoritma ile hash'layarak veya zincirleme bir üreticiye besleyerek uygulamaya uygun, yüksek kaliteli bir diziye dönüştürün.

Kontrol yanılgısı yaşamak kolaydır. Her şeyin altında bir mekanizma vardır, evet. Ama bazen o mekanizmayı başlatmak için ihtiyacımız olan şey, tasarladığımız bir algoritmanın değil; tamamen dışarıdan, kaotik ve öngörülemez gelen bir titreşimdir. İyi okumalar dilerim.
