ST-LINK v2 – STM32 Programlayıcı Rehberi

Önceki yazıda STM32 ailesinden bahsetmiştik. Bir mikrodenetleyici ailesini programlamak için üreticinin sağladığı ya da üçüncü parti programlayıcılara ihtiyaç duyarız. Bazen programlayıcıların özellikleri modellerine göre ve üreticisine göre değişiklik göstermektedir. Programlayıcıları her zaman üretici üretmek zorunda değildir. Kimi zaman üreticinin yanında üçüncü parti şirketlerin ve geliştiricilerin de ürettiği programlayıcıları görürüz. STM32 mikrodenetleyiciler için ise üreticinin sağlamış olduğu ST-LINK programlayıcıyı kullanmak zorundayız. Bu programlayıcı PIC ve AVR programlayıcılardan bile daha ucuza ve kolay bulunmaktadır. O yüzden programlayıcı konusunda hiçbir sıkıntımızın olmadığını şimdiden belirtelim.

Programlayıcıyı tanımlamamız gerekirse bir taraftan bilgisayara bağlanan öteki taraftan ise mikrodenetleyici donanımına doğrudan bağlanan ve geliştirme stüdyosunda yazdığımız (IDE) programın derlenmiş halini (.hex) mikrodenetleyicinin program hafızasına doğru şekilde yükleyen cihazlardır diyebiliriz. Bu cihazların çok gelişmiş bir teknolojide olmasına gerek yoktur. Hatta pek çok programlayıcı tek bir mikrodenetleyiciden yapılmış olup programlayıcı mikro çip olarak görev yapmaktadır. USB veya Seri Porttan bağlanan programlayıcı bilgisayar ile mikrodenetleyici arasında veri alışverişini sağlar. Bunu da programlama prosedürüne uygun yazılımla yapınca mikrodenetleyicimiz programlanmış olur. Eğer programlayıcıdaki mikrodenetleyici USB özellikli ise bilgisayara doğrudan bağlayıp program atabiliriz.

ST-LINK ve ST-LINK-v2 programlayıcılara baktığımızda ST-LINK programlayıcıların desteğinin kesildiğini görüyoruz. Yani bizim şu an kullanmamız gereken yegane programlayıcının ST-LINK-v2 olduğunu söyleyebiliriz. Bu programlayıcı hem STM8 hem de STM32 mikrodenetleyici ailesini programlayabilir. Kısaca özelliklerine değinirsek özellikleri şöyledir,

  • USB besleme
  • USB 2.0 Desteği
  • USB Standart A ya da B kablo
  • Single Wire Interface  Module yani SWIM (Tek Hat Arayüzü)
  • SWI 1.65V-5.5V arası gerilim desteği
  • SWIM 9.7Kb/s düşük hızda, 12.8Kb/s yüksek hızda programlama.
  • JTAG arayüzü (Dikkat edilirse iki ayrı arayüz var.)
  • JTAG 20-pin kablo desteği. (2.54mm header)
  • Doğrudan donanım programı güncellemesi (firmware)
  • Gösterge Ledi
  • 0-50C sıcaklıkta çalışma aralığı

Burada dikkatimizi çeken nokta JTAG ve SWIM olarak iki ayrı programlama arayüzünün olmasıdır. Programlayıcı sadece programlama görevinde bulunmayıp aynı zamanda da hata ayıklama (debug) görevini yapmaktadır. 32-bit mikrodenetleyicilerle çalışıyorsak hata ayıklama özelliğini kullanmak kaçınılmazdır. Unutmayalım 8-bit mikrodenetleyicilerde bile hata affetmeyen bir alanda çalışmaktayız.

ST-Link-V2’nin orjinal paketi şu şekildedir,

Resim: https://media.rs-online.com/t_large/F8801599-01.jpg

ST-LINK/V2’nin referans sayfasını şuradan görebilirsiniz. Programlayıcı hakkında daha fazla bilgi için muhakkak bakmak lazımdır.

https://www.st.com/en/development-tools/st-link-v2.html

Şimdi gelelim işin Aliexpress boyutuna 🙂 Aliexpressde bu programlayıcıları iki ayrı şekilde görmemiz mümkün ve oldukça ucuz fiyata satılmaktalar. Klon oldukları aşikar olsa da orjinali aratmayacaktır. Bunlardan biri olan ST-Link-V2 mini modeli 1.80 dolara kadar bulunabilmektedir. Evet, 1.8 dolara programlayıcı satın alıyoruz!.

 

Resim: https://ae01.alicdn.com/kf/HTB1q_ubPXXXXXbhXVXXq6xXFXXXN/ST-Link-V2-nowy-stlink-mini-STM8STM32-STLINK-symulator-pobra-programowania-Z-Pokryw.jpg_640x640.jpg

1.8 dolara aldığımız programlayıcının pek pratik olmayacağı ortadadır. Bunun sebebi standart bir JTAG konnektörüne sahip olmayışıdır. Bir de harici bir USB kablosu olmaması kullanımda sıkıntı doğurabilir. Bunun için standart boyutta ST-LINK-V2 programlayıcılar vardır.

Resim: https://ae01.alicdn.com/kf/HTB1vAnfXnZKL1JjSZFIq6x_DFXaZ/1pcs-New-ST-LINK-V2-ST-LINK-V2-CN-ST-LINK-STLINK-Emulator-Download-Manager-STM8.jpg_640x640.jpg

Görüldüğü gibi logosu pek okunmayan bu programlayıcı STM32leri programlamak için aradığımız her özelliğe sahiptir. 6.7-7 dolar bandında bulabileceğiniz bu programlayıcı yine AVR-ISP mkII klonuna göre oldukça ucuz kalmaktadır. JTAG kablosunun olması üzerinde çalışacağımız geliştirme kartlarında kolaylık sağlayacaktır.

Programlayıcıyı satın aldıktan sonra sürücüsünü yüklemeniz gerekecektir. Sürücüyü indirmek için şu sayfayı ziyaret edin.

https://www.st.com/en/development-tools/stsw-link009.html

STM32 ST-LINK utility

Bilgisayarımızda programlayıcı yazılım arıyorsak resmi program olan bu programı kullanabiliriz. Bu program silme, doğrulama, yazma, okuma gibi işlemleri yapar  ve hex dosyalarını mikrodenetleyiciye yükler. Programı indirmek için aşağıdaki bağlantıyı kullanabilirsiniz.

https://www.st.com/en/development-tools/stsw-link004.html

 

Gökhan Dökmetaş

"Arduino Eğitim Kitabı" ve "Arduino ve Raspberry PI ile Nesnelerin İnterneti" kitaplarının yazarı. Başkent Teknoloji ve Dedektör Merkezi'nde Ar-ge Sorumlusu. Araştırmacı-Yazar.

You may also like...

1 Response

  1. Şahin Mersin dedi ki:

    Gökhan Bey; Dediğiniz gibi ST-Link-V2 mini modeli JTAG pinlerine sahip ama bağlantı kabloları olmadan gelmektedir. Programlayıcı ile birlikte 4 lü dişi-dişi jumper kablosu verilmekte. Bunlar VCC-GND-CLK ve IO pinleri. Debug yapılmak istendiğinde diğer pinleride bağlanabilir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.