STM32F407 ile uğraşırken karşılaşacağımız terimleri ve açıklamalarını, ARM işlemciye uyarlanmış şekilde açıklayacağız.
AHB Advanced High performance Bus
ARM CPU ünitesi ile çevre birimleri arasındaki yüksek performanslı iletişim yolu
APB Advanced Peripheral Bus
ARM CPU ünitesi ile çevre birimleri arasındaki iletişim yolu
BOOT Reset işlemi ardından kodların koşmaya başlamasına verilen isim. Yada, Reset ardından koşturulacak kodların bulunduğu bölgeye verdiğimiz isim.
BUG
Bir düzenek çalışıyor fakat hata da yapıyorsa sistemde BUG vardır deriz. Sözkonusu hata, algoritmik bir yazım hatası olabilir,çipin yanlış tasarımı olabilir vs..
DEBUG Bir programı adım adım işleterek, değişkenleri, CPU registerlerini, hatta RAM alanını gözleyerek programı mercek altına yatırmak ve hata (BUG) aramak demektir.
DMA Direct Memory Access
CPU'yu hiç işin içine sokmadan veri taşımaya yarayan ünitenin adı.
Exception
İşlemci yada donanımın sakat bir durumla karşılaşması durumunda işlemcinin işi bırakıp banane ben oynamıyorum moduna girmesi. (Interruptlara çok benzer)
Exception Handler
Banane ben oynamıyorum diye küsüp işi bırakan işlemcinin gönlünü alma rutinleri.
GPIO General Purpose Input Output
Genel amaçlı giriş çıkış birimine verilen ad. Bir GPIO nun bir pini, donanımın yeteneklerine bağlı olarak istenirse input, istenirse output, istenirse ADC girişi, istenirse PWM çıkışı, istenirse Timer Counter Clk girişi vs vs ye dönüşebilir.
Interrupt
İşlemciye, işlediğin kodların durdur, başka kodları çalıştır ricası. (İşlemci bu ricayı kabul ederse işini yarıda bırakır, istenen kodları işler bitirir ve yarıda bıraktığı işin başına döner)
Interrupt Handler
İşlemciye, işlediğin kodların durdur, başka kodları çalıştır ricasında bulunmuştuk ya, işte bu çalıştırılmasını istediğimiz kodlara interrupt handler rutinleri diyoruz.
JITTER
PLL frekansımımızın sabit kalmayıp olması gereken frekans civarinda sürekli salınması demektir. Burdaki salınım küçüktür fakat rahatsız edicidir.
JTAG Joint Test Action Group
ARM işlemcinin içindeki donanımlara CPU nun içinde yazılımla değil de çipin bazı pinlerini kullanarak dışarıdan ulaşmak amacıyla kullanılan interface'e Jtag interface, Jtag interface üzerinden haberleşmeye yarayan donanıma da Jtag donanımı yada Jtag kartı diyoruz.
Program yükleme, Debug işleri gibi amaçlar için kullanılır.
PLL Phase Lock Loop
İşlecilerde referans bir clock sinyalinden yararlanarak daha yüksek frekanslarda clock sinyali üretilmesini sağlayan modülün adıdır.
Bu sayede örneğin 8Mhz Xtal frekansından 168Mhz CPU clock üretilebilir.
PCLK1 Peripheral Clock 1 PCLK1 = APB1 CLK
PCLK2 Peripheral Clock 2 PCLK2 = APB2 CLK
SWD Serial Wire Debug
Jtag'a alternatif olarak geliştirilmiş daha az sayıda bağlantı içeren teknolojinin adı. STM32F-Discovery kartımızda SWD kullanılıyor.
Vektör Tablosu
Özel fonksiyonların (Reset rutini, interrupt rutinleri, exception rutinleri) adreslerinin bulunduğu tablodur. Bu tabloda her bir adrese vektör saklama adresi denir.
Örneğin Reset rutininin adresi 0x0800.1000 ve bu adres değeri de 0x0000.0004 içinde saklanmışsa, 0x0800.1000 adresine reset vektörü deriz. Bu vektörü öğrenmek için 0x0000.0004 adresinin okumamız yeterlidir.
Wait State
Hızlı bir işlemcinin, çok daha yavaş donanımlarla veri alış verişi yapabilmesi için CLK cinsinden bekleme değeridir. Yavaş donanımla işi olmadığı zaman son surat işlem yaparken, donanıma erişmesi gerektiğinde wait state değeri kadar frene basar. Bizim çipimizde Flash ROM wait state istemektedir. Çünkü CPU dan daha yavaştır.
0 wait state: Hiç bekleme
1 wait state: 1 clk bekle
5 wait state: 5 clk bekle gibi
Motosikletli kapkacci son surat kurbanin yanina yaklasir yavaslar cantayi kapar gaza basar firlar. Burda wait state atiyor iste.