Eki 05

STM32 HAL (donanım soyutlama katmanı) Kütüphaneleri

Geçmişte sadece donanım işinde olan yarı-iletken firmaları bugün aynı zamanda yazılım firmaları haline gelmiş durumda. Sattıkları elektronik komponentleri piyasada tutundurmak ve kullanımını yaygınlaştırmak için tasarımcıların işlerini kolaylaştıracak yazılım ve yazılım bileşenleri de sunuyorlar.

ST firmasının STM32 serisi için yayınladığı HAL kütüphaneleri STM32 serisinin üyeleri ile çalışmamazı kolaylaştırmaya yarıyor (bazen zorlaştırabiliyor da). Bir önceki yazımda donanım soyutlama kavramından bahsetmiştim. Donanım soyutlama katmanları, adı üzerinde, bizi donanımın ayrıntılarından soyutlayarak arayüz fonksiyonlarıyla donanımı kullanabilmemizi sağlıyor. Bunun dışında farklı ürün serileri arasında ortak bir fonksiyon kütüphanesi sağlayarak ürün geçişlerinde yazılımın mümkün olduğunca sabit kalarak , taşıma işleminin sorunsuzca halledilmesine yardımcı olur.
Continue reading

Eyl 17

Donanım Soyutlama Katmanı ( Hardware Abstraction Layer) nedir?

Mikrodenetleyicilerin çevrebirim zenginliğinin artması ve ürün tasarım süreçlerinin de hızlanması ile birlikte artık tasarımcıların zaman kazandırıcı önlemlere ihtiyacı oluyor. Geçmişte herşeyi baştan tek tek yazma alışkanlıkları yerine modüler yazılım parçalarını ve sürücüleri hazır olarak kullanma eğitimlerine bırakıyor. Bu nedenle yarı iletken üreticileri de ürünlerini öne çıkarmak ve sadık bir tasarımcı kitlesi oluşturmak için çip üretmek yanında yazılım araçları, sürücüler de yayınlamaya başladılar. Yarı iletken üreticisi olmak yanında yazılım geliştirme konusunda da birşeyler yapmak durumunda olmaya geçişin sancıları da yaşanmıyor değil. ST firması da başlangıçta “Standard Peripheral Library” adı altında STM32 serisi için “sürücü” kütüphanesi yayınladı. Bu kütüphanede de birçok problem vardı ancak zamanla düzeltildi. ST firması sanırım başlangıçta dışarıda bir ekibe yazdırdıktan sonra “bu iş böyle olmayacak” deyip kendi içerisinde de yazılımcı istihdam etmeye başladı.
Continue reading

Ağu 21

C Programlama Öğrenmek İçin Kullanılabilecek Ortamlar

ANSI-C

Gömülü sistemler konusunda çalışmak için en başta bilinmesi gereken şeylerden birisi C programlama dilidir. Gömülü sistemler alanında en çok kullanılan C dili hakkında daha önce de birkaç yazı yazmıştım. Hatta Eclipse geliştirme ortamında C programlama için nelerin kurulması gerektiğini de anlatmıştım. C programlama hakkında çok fazla soru alıyorum. Bu yazımda da C programlama öğrenmek için başka hangi ortamları kullanabieceğimizden kısaca bahsedeceğim.

1 . Eclipse + GCC

Eclipse ve GCC derleyicisini kullanarak C programlama yapmak için gerekli olanları daha önceki bir yazımda anlatmıştım. Burada tekrarlamayacağım.
Continue reading

Mar 16

STM32F0 ve STM32L0 serileri için KEIL Artık Ücretsiz


Bu haber çıkalı ne kadar olmuş bilmiyorum ama ben bugün gördüm. ST Microelectronics ve ARM firmaları arasındaki anlaşma ile artık STM32F0 ve STM32L0 serileri için Keil MDK geliştirme ortamı ücretsiz hale geldi. Yani artık bu seriler için Keil geliştirme ortamı ve derleyicisini tam sürüm olarak ücretsiz kullanabileceğiz. ARM tabanlı mikrodenetleyicileri programlamak için en çok kullanılan ve en yaygın geliştirme ortamlarından birisinin Keil MDK olduğunu düşünürsek bu oldukça iyi bir haber. ARM tabanlı mikrodenetleyicilerle ilgili bulunan birçok örnek ilk olarak Keil MDK uyumlu olarak çıkıyor. Başlangıç yapmak için de Cortex- M0 serisi oldukça iyi bir seçim. ST’nin Cortex M0 serisini içeren modelleri arasında da birçok ihtiyacı giderecek seçenekler bulunuyor. Artık fiyatları da neredeyse 8 bit mikrodenetleyicilerin seviyesine inen 32 bit ARM-Cortex – M0 tabanlı mikrodenetleyicilerin daha da yaygınlaşacağını göreceğiz gibi geliyor.

STM32F0 / STML0 serisi için ücretsiz Keil MDK ortamını aşağıdaki linkten indirebilirsiniz:

http://www2.keil.com/stmicroelectronics-stm32/mdk

STM32F0 Serisi: http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1574?sc=stm32f0

STM32L0 Serisi: http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1817

Eki 26

mbed nedir?

mbedmbed, temel olarak ARM Cortex – M serisi mikrodenetleyiciler üzerinde hızlı protoipleme ve ürün geliştirme amaçlı geliştirilmiş bir platform. Başlangıçta NXP firmasının LPC1768 mikrodenetleyicisini içeren kartlar üzerine çalışacak şekilde ve kapalı kodlu yayınlanmış mbed, bugün birçok farklı mikrodenetleyici modelini destekliyor ve açık kaynaklı bir proje haline gelmiş durumda. ARM firması tarafından desteklenen projede web üzerinden kullanılabilen bir geliştirme ortamı ve derleyici bulunuyor. Ayrıca donanım üzerinde yer alan bir ara yazılım katmanıyla farklı mikrodenetleyicilerin aynı arayüz fonksiyonları ile programlanması sağlanıyor. Continue reading