STM32 Programlamaya Giriş

  • 08-30-2018 01:25
  • 159

Bu yazımızda STM32f10x serisi mikrodenetleyici ile çalışmak için gerekeli donanım ve yazılımları inceleyeceğiz. Öncelikle MCU'nun özelliklerine kısaca göz atalım.

ARM Cortex M3 (72MHz) işlemci,  farklı özelliklere sahip 7 adet timer, DMA, USART, SPI, IIC, USB 2.0, CAN özelliklerinden bazıları.Tüm özellikler için datasheet'e bakabilirsiniz.

Programlamaya başlamak için STM32f10x mikrodenetleyici geliştirme kartına ihtiyacımız var. Piyasada birçok model bulunuyor. Geliştirme kartı seçerken dikkat etmeniz gereken, yazdığınız programları aktarırken başka bir araca ihtiyacınız olup olmadığıdır. Bazı bortları programlamak için ST-Link kullanılıyor. Aşağıda resmi olan oldukça basit ama kullanışlı bir bord, bunu programlamak için st-link cihazına ihtiyacınız var. Üzerinde chip dışında bir kaç gerekli parça var. Bredboradlara uyumlu olması da bir avantaj. 

stm32f103c6

 

Programlama için hem STM32 programlayabilen ST-Link V2 kullanılıyor onun da resmi altta. Kullanımları oldukça basit, st-link usb'ye takılıyor birlikte gelen kablolar ile borda bağlanıyor. ST-Link'i kullanabilmek için yazılımını da yuklemek gerekiyor. Bu adresten üye olarak yükleyebilirsiniz. Programın kullanımından yazının devamında bahsedeceğim.

 

 

st-link v2

Buraya kadar donanımsal gereksinimleri anlattım. Şimdi yazılım kısmına geçeceğiz. STM32 mikrodenetleyici programlamak için kullanacağımız Ide CoIde. Ama kullanabileceğiniz ücretli farklı alternatifler mevcut önde gelenleri IAR,Keil. Bu sayfadan kullanılabilecek tüm Ide'leri görebilirsiniz. CoIde'nin resmi sayfasından indirebilirsiniz. Sürümlerden v1.7.8 kullanıyorum ve tavsiye ederim.Bir de derleyiciye ihtiyacımız var. Bu da  gcc , buradan download edebilirsiniz. Kurulumlar tamamlandıktan sonra CoIde Project menüsünden Select Toolchain Path öğesini seçip gcc'nin kurulu olduğu konumun altındaki bin klasörünü seçiyoruz böylece kurulum işlemi tamamlanıyor.

Şimdi ilk projemizi oluşturalım.CoIde Project menüsünden New Projet'i seçiyoruz. Açılan diyalogda projenin ismini ve konumunu seçiyoruz. Daha sonraki adımda chip ve board secenekleri cikiyor buradan chip'i seçip next butonuna basıyoruz.Açılan yeni sayfadan üretici firmayi ve açılan listeden kullandığımız chipi seciyoruz.Ve sonucta Repository sayfası karşimiza çikiyor.İlk sayfada genel özellikler var bunlardan proje içinde kullanacaklarımızı seçiyoruz, ilk aşamada yalnızca Clibrary yeterli. Sayfanın en alt kısmında 'Others' tabı var burada proje içinde kullanacağımız chip özelliklerini seciyoruz.Örnegin timer kullanacaksak TIM kutusunu işaretliyoruz. Eger projeye dahil etmediğimiz bir özelliği kullanırsak derleyici hata veriyor. 

Uygulamamızı yazdıktan sonra st-link bilgisayar ve board bağlantısını yapıyoruz. STM32 ST-Link uygulamasını çalıştırıyoruz.

st-link utility screenshot

Yükleme 3 aşamadan oluşuyor.İlk önce yükleyeceğimiz dosyayi File menusu altından Open File seceneği ile  proje dosyasının altında .hex uzantılı dosyayı seciyoruz. Daha sonra Target menüsünden Connect seçeneğini seçiyoruz (cihazla bağlantı kuramazsa hata verir). Son olarak yine Target menüsünden Program&Verify seçiyoruz. Download başlıklı bir diyalog açılıyor burdan start diyerek programı yüklüyoruz.

Denemeniz için örnek bir proje yüklüyorum ledi yakıp söndüren timer kullanılarak yapılmış küçük bir program. Download