IAR ile STM8S – Giriş

  • 2 sene önce, Baran EKREM yazdı.
  • 10 Yorum
  • 1.115 Kişi Okudu

Bundan yaklaşık bir kaç ay önce STM8 programlamaya başlamak istiyordum fakat ST Visual Develop beni bu işten bir hayli soğuttu. Anlam verilemeyen derleme hataları ve eski IDE yapısı ile çok kullanışsız olduğunun farkına vardım. Kenarda duran STM8S leri denemek için IAR’I denemek istediğimde IDE rahatlığı, kod tamamlama, düzgün ve hızlı derleme, Debug yapma gibi özelliklerinin oldukça verimli olduğunu gördüm. Özelikle küçük projelerde kullanılan 8 Bit işlemciler fiyat konusunda kıyasıya yarışıyor. ST’nin STM32F1xx 32 bit olmasına rağmen çok ciddi fiyatlara satılıyor. Bu yüzden 8 bit kullanmak yerine daha ucuz olsun derseniz STM32 bile kullanabilirsiniz. Tabi STM8S ailesini inanılmaz uygun fiyatlara sattığı için şu sıralar Türkiye piyasasında artışta olduğunu görmek mümkün. Bu sebeple STM8S artık ciddi bir önem kazandı diyebiliriz. Lafı daha fazla uzatmadan proje oluşturmaya başlayalım.

Ben bu yazıda Aliexpressden aldığım küçük STM8S003F3P6 işlemcili kiti ve mini programlayıcıyı kullanacağım oldukça küçük ve kullanışlı olduklarını söyleyebilirim.

STM8S Mini Kit
giphy
Kullandığım mini programlayıcı. Bütün STM ailesini programlayabiliyor. Şiddetle tavsiye edilir !

STM Programlayıcı

IAR kurulumu bitirdikten sonra proje oluşturmayı ve ST’nin STM8S için geliştirdiği Standart Peripheral Library’yi projemize import etmeyi anlatacağım.

Öncelikle SPL kütüphanelerini şu siteden indiriyoruz : STM8S SPL

Proje oluşturmadan önce bir WorkSpace açarak başlayalım.

Oluşturduğumuz çalışma alanına proje açalım.

Burada STM8’i seçip bir C projesi açıyoruz. Bizim kullanacağımız STM8S SPL kütüphaneleri C için yazılmıştır.

Daha sonra kaydederek proje oluşturmayı tamamlayalım. Bir klasör açıp LED_Blink olarak kaydetmek yeterli olacaktır.

Yapacağımız ayarlar için projeye sağ tıklayıp “Options”‘a tıklıyoruz.

Şimdi proje ayarlarından Debug yapabilmemiz için Simulator kısmını ST-Link olarak ayarlayalım. Bunu yapmazsanız kodlarınız işlemciye yüklenmez sadece simülasyon olarak çalışır ayrıca.

Şimdi “General Options” kısmına gelerek işlemcimiz seçelim.

Şimdi Kütüphaneleri eklemek için indirdiğimiz  dosyada bulunan STM8S_StdPeriph_Lib\Libraries\STM8S_StdPeriph_Driver dizinin içindeki “STM8S_StdPeriph_Driver” dosyasını projemizin olduğu yere kopyalıyoruz.

Kopyalama işlemi tamamlandıktan sonra yine proje ayarlarından C/C++ -> Preprocessor sekmesinden kütüphanelerimiz bulunduğu dosyadaki “inc” dosyanını ve kütüphane dosyasını dizinlerini buraya ekliyoruz. Örnek olarak ;

Ve sol altta bulunan “Define symbols : (one per line)” kısmına işlemcimizi tanıtıyoruz.

Son olarak “stm8s_conf.h” isimli dosyayı projeye’nin olduğu dizine kopyalayarak proje oluşturmayı tamamlayabiliriz.. Bu dosyayı indirdiğiniz SPL’nin içinde örnekler kısmında bulabilirsiniz ben yine burada paylaşayım.

Artık çalışmak istediğimiz modülün “.c” uzantılı dosyasını projemize dahil ederek çalışmaya başlayabiliriz. Biz bu örnekte basit bir “LED Blink” yapacağımız için sadece “gpio” ütüphanesini eklememiz yeterli olacaktır. Bunun için yine projeye sağ tıklayıp “ADD” kısmından projemizin içine kopyaladığımız kütüphane dosyalarından “src” klasörünün içinden ekleyebiliriz.

Ve son olarak basit bir LED Blink kodu ile projeyi tamamlayalım.

Project->Rebuild All diyerek Build edip “Download and Debug” tuşuna basarak işlemcinize kodu yükleyebilir ve Debug yapabilirsiniz.

Tabi yükledikten sonra “Go” tuşuna basmayı da unutmayın. 🙂

Şimdilik bu kadar. Bir sonraki yazıda görüşmek üzere. Esen kalın !

  1. muhittin kaplan dedi ki:

    Hocam güzel paylaşımlar. Teşekkür ederim.

  2. Ogan dedi ki:

    STM8S Mini kitin üzerinde STM8S103F3P6 mikrodenetleyici var. Açıklamalarınızda STM8S003F3P6 olarak belirtmişsiniz. Yazım yanlışı mı, program hatalarından dolayı öyle mi seçilmeli?

  3. emre dedi ki:

    #ifDef USE_FULL_ASSERT ne amaçla yazılmıştır. Teşekkür ederim.

  4. Abuzittin Naneli dedi ki:

    STM32 discovery board ile nasıl bağlantısı olması gerek ?

Bir Yorum Yazın