Skip to main content

İşlemci Saat Yapısı

Bu sayfa, B107AA R6 ana işlemcisinin saat (clock) mimarisini ve bu seçimin haberleşme kararlılığına etkisini tanımlar. Saat kaynağı; yalnızca CPU hızını değil, UART baud oranı doğruluğunu, zamanlayıcıların (timer) hassasiyetini ve sahada gürültülü ortamlarda sistemin deterministik davranışını doğrudan etkiler.


İç osilatör / harici kristal seçimi

ATmega2560 ailesi dahili RC osilatör ile çalıştırılabilir; ancak sahada GSM/RS‑485 gibi seri haberleşme hatlarının stabil çalışması için frekans doğruluğu kritik hâle gelir. Dahili RC osilatör;

  • besleme gerilimi,
  • sıcaklık,
  • üretim toleransı

gibi değişkenlere bağlı olarak anlamlı miktarda sapma gösterebilir. Bu sapma, UART gibi asenkron haberleşmede karşı taraftaki osilatör hatasıyla birleştiğinde bit örnekleme noktalarının kaymasına ve özellikle yüksek baud hızlarında paket/çerçeve hatalarına yol açabilir.

Bu nedenle B107AA R6’da ana işlemci harici kuvars kristal ile çalıştırılır. Harici kristal, hem frekans doğruluğunu hem de sıcaklıkla sürüklenme davranışını daha öngörülebilir hâle getirerek saha kararlılığını artırır.


Seçilen frekans: 7.3728 MHz

R6’da tercih edilen saat frekansı 7.3728 MHz’dir. Bu seçim “alışılmış 8/16 MHz” yaklaşımından bilinçli bir sapmadır ve temel motivasyon UART baud hatasını minimize etmektir.

Neden 7.3728 MHz?

7.3728 MHz, standart UART baud hızlarıyla tam bölünebilir bir frekanstır. Örneğin 115200 baud için klasik UART formülü:

baud=FCPU16(UBRR+1)\text{baud} = \frac{F_{CPU}}{16\,(UBRR+1)}

FCPU=7,372,800F_{CPU}=7{,}372{,}800 seçildiğinde 115200 için:

UBRR=FCPU16baud1=7,372,80016115,2001=41=3UBRR = \frac{F_{CPU}}{16\,\text{baud}} - 1 = \frac{7{,}372{,}800}{16\cdot 115{,}200} - 1 = 4 - 1 = 3

Bu da 115200 baud’u tam (0% teorik hata) ile üretmemizi sağlar. Benzer şekilde 9600, 19200, 38400, 57600 gibi pek çok standart baud da çok düşük/0’a yakın hata ile elde edilir.

Bu yaklaşım özellikle şu iki blok için sahada kritik avantaj üretir:

  • GSM modem: yüksek baud hızlarında, uzun kablo/toprak problemi ve EMI altında çerçeve hatalarını azaltır.
  • RS‑485 (varsa): saha kabloları ve ortak referans problemlerinde toleransı artırır.

Yan etkiler

7.3728 MHz; 16 MHz’e göre daha düşük işlem gücü ve bazı timer çözünürlüklerinde farklılık getirir. Ancak B107AA mimarisi olay‑tabanlıdır; yüksek CPU throughput’tan çok, deterministik ve hatasız iletişim önceliklidir. Bu nedenle frekans seçimi ürün hedefiyle uyumludur.


RTC ile zaman doğruluğu ilişkisi

Kart üzerinde RTC bulunması (zaman tutma için ayrı saat kaynağı) saat mimarisini ikiye ayırır:

  1. Mutlak zaman doğruluğu (date/time): RTC tarafından sağlanır. Dolayısıyla ana MCU kristalinin ppm doğruluğu, “saat kaç?” sorusunun doğruluğunu belirlemez.

  2. İletişim ve zamanlayıcı davranışı: MCU clock’u tarafından belirlenir. UART bit zamanlaması, modem timeout’ları, kısa süreli gecikmeler ve bazı protokol zaman pencereleri (örn. AT komut cevap pencereleri) MCU clock doğruluğundan etkilenir.

R6 mimarisinde periyodik telemetri akışı RTC alarm interrupt’ı ile tetiklendiği için “5 dk / 15 dk” gibi periyotların doğruluğu RTC’ye dayanır. Bu, MCU clock drift’inin periyotların kaymasına sebep olmasını engeller. MCU clock burada daha çok “iletişimi hatasız yürütme” rolündedir.


Clock toleransı ve haberleşme stabilitesi

UART, iki uçtaki saat hatalarının toplamına duyarlıdır. Bir uçtaki clock sapması küçük bile olsa, karşı uçtaki sapmayla birleştiğinde toplam hata büyür. Yüksek baud hızlarında (örn. 115200) örnekleme penceresi daraldığı için tolerans daha kritik hâle gelir.

Bu nedenle iki prensip uygulanır:

  • Baud hatası matematiksel olarak minimize edilir (7.3728 MHz seçimi).
  • Kristalin efektif yük kapasitansı doğru kurulur (frekans çekilmesi/pulling azaltılır).

Kristal ve yük kapasitörleri

Seçilen kristal

Mevcut şematikte ana saat elemanı olarak aşağıdaki kristal kullanılmaktadır:

  • Abracon ABMM2-7.3728MHZ-E2-T
    • Frekans: 7.3728 MHz
    • Paket: SMD (ABMM2 serisi)
    • Yük kapasitansı (CL): 18 pF

Not: CL değeri kristalin hedef frekansta çalışması için gereken “efektif yük”tür. PCB kaçak/iz kapasiteleri de bu yüke dahil olur.

Yük kapasitörü hesabı

Kristalin gördüğü efektif yük kapasitansı yaklaşık olarak:

CLC1C2C1+C2+CstrayC_L \approx \frac{C_1\,C_2}{C_1+C_2} + C_{stray}

Simetrik seçimde C1=C2=CC_1=C_2=C kabul edilirse:

CLC2+CstrayC2(CLCstray)C_L \approx \frac{C}{2} + C_{stray} \Rightarrow C \approx 2\,(C_L - C_{stray})

Bu noktada kritik belirsizlik CstrayC_{stray}’dir (MCU pin kapasitansı + pad/iz + parazitikler). Pratikte 2–5 pF bandı makul bir başlangıçtır. CL=18 pF hedefiyle örnek değerler:

  • Cstray=2pFC_{stray}=2\,pFC32pFC\approx 32\,pF
  • Cstray=3pFC_{stray}=3\,pFC30pFC\approx 30\,pF
  • Cstray=4pFC_{stray}=4\,pFC28pFC\approx 28\,pF
  • Cstray=5pFC_{stray}=5\,pFC26pFC\approx 26\,pF

Bu nedenle CL=18 pF kristallerde tipik başlangıç seçimi 27 pF veya 30 pF (C0G/NP0) olur.

Mevcut tasarım notu (R6 doğrulama)

Mevcut şematikte C120/C121 değerleri 13 pF olarak görülmektedir. Bu değer, CL=18 pF hedefi için düşük kalabilir ve kristalin frekansını yukarı doğru çekerek UART tarafında istenmeyen sapmalara neden olabilir.

Bu sebeple R6 doğrulama adımında:

  • C120/C121 için 27 pF / 30 pF varyantı ile A/B test önerilir.
  • Osiloskop ile “başlatma” (startup) davranışı ve kristal genliği izlenir.
  • En ideali, bir frekans sayacı veya referans ölçüm ile MCU clock doğruluğu gözlenir.

Eğer 13 pF seçimi bilinçli bir “pulling” hedefiyle yapıldıysa, bu hedef ve ölçüm sonucu bu sayfaya eklenmelidir.

Kapasitör komponent seçimi

Yük kapasitörlerinde dielektrik seçimi önemlidir. X7R gibi kapasitörler gerilim/sıcaklıkla kapasitans kaydırabilir ve efektif CL’yi oynatır. Bu yüzden öneri:

  • C0G/NP0, 50V, 0402/0603

Layout ve EMC notları

Kristal devresi, PCB’de en hassas analog bölgelerden biridir. Aşağıdaki disiplinler uygulanmalıdır:

  • Kristal ve yük kapasitörleri MCU’ya çok yakın konumlandırılmalı.
  • XTAL1/XTAL2 izleri kısa, simetrik ve paralel gidiş‑dönüş döngüsü küçük olacak şekilde çizilmeli.
  • Yük kapasitörlerinin GND dönüşü, mümkünse aynı GND referansına kısa yoldan bağlanmalı (uzun via/izlerden kaçınılmalı).
  • Yüksek dv/dt taşıyan anahtarlamalı güç hatlarından ve GSM RF bölgesinden uzak tutulmalı.
  • Gerekirse kristal çevresinde GND guard uygulanabilir; ancak XTAL izlerinin altından agresif plane kesikleri yapılmamalı.

Alternatifler ve kararın özeti

Dahili osilatör; maliyeti ve BOM’u azaltabilir, ancak sahada UART kararlılığı için frekans sapması riskini büyütür. Harici kristal ile birlikte 7.3728 MHz seçimi, özellikle 115200 gibi yaygın baud hızlarında teorik baud hatasını sıfıra indirerek GSM/RS‑485 iletişimini daha güvenilir kılar.

R6 için saat mimarisinin özü şudur: “İletişim hatası üretmeyecek kadar doğru clock”.