Merhaba arkadaşlar,
Bu yazımızda üzerinde dahili ST-LINK bulunmayan kartları ya da kendi tasarımınız olan devreleri programlamak için kullanabileceğiniz ST-LINK/V2-1 cihazının nasıl kullanılacağı üzerine sohbet edeceğiz.
Yazımızın oldukça kısa olacağını belirtmeliyim. Bu nedenle hızlıca ST-LINK/V2-1 ve pin çıkışlarına göz atalım ilk olarak.
STM32 serisi işlemcileri programlamak için cihazın altında bulunan çoklu çıkışları kullanmamız gerekmektedir. Programlama işlemini gerçekleştirmek için kullanmamız gereken pinler sırasıyla 7, 9, 15, 19 ve 20, yani sırasıyla SWDIO, SWCLK, STM32 RESET, VDD ve GND… Eğer kendi tasarımınız olan bir devre üzerinde çalışacaksanız tasarımınızda bu pinlere karşılık gelen işlemci bacaklarını itina ile kontrol etmenizi öneririm. Devre tasarımları konusunda eğer yeterli tecrübeniz olmadığını ya da emin olamadığınız bir durumun olduğunu düşünüyorsanız Google’a işlemci adını ve hemen yanına “hardware design manual” yazarak referans tasarımlarına göz atabilirsiniz.
Uygulamamızda oldukça uygun fiyatlı ve basit bir yapıya sahip olan STM32F103 bluepill kartını kullanacağız. Bu kartın bir diğer ünlü olduğu nokta ise Arduino Nano ile aynı yapıya sahip olmasıdır. ST-LINK üzerinde yukarıda sözünü etmiş olduğumuz pinlerin karşılıklarını Şekil 2 üzerinde gözlemleyebilirsiniz.
Kartın alt kısmında bulunan dörtlü çıkışları ST-LINK karşılıklarına bağlamak suretiyle kablolama işlemini tamamlamamız gerekiyor. Bu işlemin ardından ise herhangi bir IDE yardımıyla yazdığınız uygulama yazılımlarının .hex uzantılı dosyasının yerini bir kenara not etmelisiniz. Programı yüklemek için birden fazla seçeneğimiz mevcut olacaktır. Ancak bu yazı bağlamında programın yüklenmesi ya da isteğe bağlı olarak çipin silinmesi için ST-LINK Utility yazılımını kullanacağız.
Şekil 3 ile gösterildiği gibi utility yazılımı kullandığınız ST LINK cihazına özgü atanmış kimlik numarasını ve cihazın bağlı olduğu işlemcinin kodunu tespit etmekle beraber programlamak istediğiniz işlemciye bağlanmanızı sağlar. Burada dikkat etmemiz gereken nokta ise işlemcinin reset bacağının ST LINK’e bağlı olup olmadığı. Dilersek bunu bağlamayıp kartın üzerinde bulunan reset butonuna basılı tutup ardından utility üzerinden “Connect” diyebilmekteyiz. Eğer işlemcinin reset bacağı yukarıda anlatmış olduğumuz gibi ST LINK’e bağlı ise butonla alakalı herhangi bir şey yapmamıza gerek kalmayacaktır.
Her şey yolunda olduğu takdirde utility üzerinde gözlemlemeniz gereken sonuç Şekil 4’e benzer olacaktır.
Son adımda ise herhangi bir IDE yardımıyla yazmış olduğumuz programın .hex dosyasını File menüsünden seçerek devam edeceğiz.
Programı yüklemeden önce utility üzerinde bulunan Target menüsünden Settings kısmına girmemiz ve Mode sekmesinde bulunan “Connect Under Reset” seçeneğinin seçilmiş olmasından emin olmamız gerekmektedir.
Programımızı yüklemek konusunda tüm bu ayarlamalarımızı ve bağlantılarımızı tamamladığımıza göre artık OK butonuna basarak yükleme yapabiliriz. Target menüsü altında bulunan Program butonuna basarak işlemi tamamlayabiliriz.
Bu yazımızda ST-LINK/V2-1 ile dahili ST-LINK’ i bulunmayan (ya da bulunan) veya geliştiriciler tarafından tasarlanmış kartların nasıl programlanabileceğine değindik. Umarım sizler için faydalı bir yazı olmuştur.
Devamı için takipte kalın! Görüşmek üzere, sağlıklı günler! 🙂
http://karamelek.tech YouTube Kanalı: https://www.youtube.com/channel/UC2MzTjW1OkruRdTlGZ8J3JA
STM32 ile ARM Programlama: https://karamelek.tech/kategori/genel/gomulu-sistemler/stm32-arm-gomulu-sistemler/
STM32 ile FreeRTOS Uygulamaları: https://karamelek.tech/kategori/genel/freertos/