Arm Programlamaya Giriş (Tutorial-1) - Mikrodenetleyiciler

Emperor Federico

Katılımcı Üye
5 Ocak 2013
876
0
Route 66
ARM Nedir? Arm Programlama Nedir? Arm Mimarisi Nedir?

ARM’ın açılımı Acorn RISC Machine’dir. Buradaki RISC ise Reduced Instruction Set Computing’dir.(Türkçe karşılığı İndirgenmiş Komut Setli Programlama’dır.) Bir çeşit işlemci mimarisidir, az enerji tüketerek çok verim alınabilmesinden dolayı tercih edilme sebebi oluyor. Nasıl bir verim alınıyor derseniz; 32-Bit yapısı ile, zengin evrionmental hardware dediğimiz çevresel donanım imkanlarıyla yüksek hızlara çıkabiliyor. Elektronik alanında büyük oranda ARM mimarisine sahip işlemciler kullanılıyor.

eMGQSL.png


ARM tek başına bir anlamı yok, yani işlemci özelliği taşımıyor. Firmalar bu mimariyi satın alıp, mimari özelliklerini kendi isteklerine göre şekillendiriyor ve kendi isimleriyle piyasa sürüyor.

C6x7bJ.png
S11GAS.jpg


Bunlara örnek olarak ST ve TI. Bunlar STMicroelectronics, Texax Instruments ve Philips gibi büyük birçok firma işlemcilerini ARM mimarisi ile şekillendirir. Bunları yaparken her firmanın ARM mimarisinde kendi kütüphaneleri oluyor, yani siz gidip STMicroelectronics mimarisinde Texas’ınkini kullanamazsınız. Mimari olarak bunlar 6 gruba ayrılıyor;

-Cortex-A
-Cortex-A50
-Cortex-R
-Cortex-M
-Classic ARM Processor
-SecureCore Processor

[+]Cortex A[+]
Mobil teknolojide yani telefonlar,tabletlerde, bilgisayarlarda ve sanayide, sanayiden kastım otomativ sektöründe yüksek teknolojiyi genel olarak kapsayan yerlerde Cortex-A kullanılır. Yüksek hız gerektiren işlemler için tasarlanmıştır diyebiliriz. Görüntü işleme, çok fonksiyonlu işletim sistemleri için kullanılır.

[+]Cortex-M[+]
Elekronikte alanının birçok yerinde ve yine özellikle sanayilerde hemen hemen Cortex-M tercih ediliyor bunun sebebi power saving, kolay kullanım ve yüksek performanslıdır, oldukça kullanışlıdır. 8 ve 16 Bitlik işlemcilere karşı çıkartılmış bir seridir. Ve maliyet bakımından uygundur.

[+]Cortex-R[+]
Modemlerde, harddisklerde genel olarak kullanılır. Gerçek zamanlıdır ve teknik cihazlar için kullanılır. Örneğin ev içerisindeki elektronik eşyalar gibi.

[+]SecureCore Processor[+]
Güvenliğin ön planda olduğu yerlerde örneğin Smart Cards’da kullanılır, Master Card'da kullanılır.

[+]Classic ARM Processor[+]
Günümüz teknolojilerine göre biraz ilkel kaldığı için bunlar yerine artık Cortex-M/R kullanılıyor.

O2GT0K.png


Ben bu seride STM32F4 geliştirme kitini kullanacağım, fiyatı uygundur yaklaşık 30-40$ arasında. Bu da Cortex-M4 grubundadır. Bu grubun mimarisini inceleyelim.


LROVOx.jpg


[+]NVIC: Interruptların vektörel yönlendirmesi için kullanılmaktadır.

[+]Floating Point Unit : Aritmetik işlemlerin yapıldığı yerdir, örneğin siz 32 bitlik 1 ve 0 dizisini toplayıp çıkaracaksınız, işaretin pozitif-negatif olduğunu veya opsiyonel bitler ile virgüllü işlemleri belirtir.

[+]Debug and Trace: Kapsadığı bölümler şu şekildedir; DAP Portu, Serial Wire Viewer Portu, Data Watchpoints, Flash Patch. Burada bilmemiz gereken Serial Wire Viewer'dır, dışarıdan harici USB veya herhangi bir bellekten data okuma işlemi için kullanılan porttur. Siz C veya Asm ile programlama kodladınız ama bakıyorsunuz program çalışması gerekiyor, hata göremiyorsunuz, siz bir sonuç beklerken bambaşka sonuç alıyorsunuz, burada doğru mu çalışıyor, yanlış mı çalışıyor diye debug işlemlerini bu kısımdan gerçekleştiriyorsunuz.

[+]Memory Protection Unit: RAM'ın içerisindeki bilgileri düzgün çalıştırabilmesi için size yardımcı olan devredir, koruma ünitesi gibi düşünebilirsiniz.

[+]Bus Matrix: Burası 2 portu kapsıyor, Code Interface ve SRAM; Code Interface harici bir bellekten kod görüntüleme portudur. SRAM ise Statik RAM'dan kod görüntüleme portudur.

Kullanacağımı Development Kit STM32F4

9HKIzA.jpg


Geliştirme ortamı olarak Keil Version5 kullanacağız.
Keil'ın sitesinden indirebiliriz.
Kütüphanemize ihtiyacımız olacak, kütüphanemize ise videonun açıklamasından ulaşabilirsiniz.

[ame="https://www.youtube.com/watch?v=7BRB7I365xI&feature=youtu.be"]https://www.youtube.com/watch?v=7BRB7I365xI&feature=youtu.be[/ame]

Bir dahaki konuda görüşmek üzere.

 
Son düzenleme:

k3~

Özel Üye
5 Eki 2015
2,980
21
Elinize sağlık. Gayet güzel bir seri olacak gibi görünüyor :)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.