STM32F103 Kartı Flash Loader: Program Yükleme

STM32F103 geliştirme kartı ve özelliklerine önceki yazımızda göz attıktan sonra sıra yazdığımız program dosyalarını kontrolcümüze yükleme konusuna geldi. Hazıra alıştığımız Arduino ve muadillerinden sonra STM32F kartına da program yüklemek için PIC benzeri bir uygulama gerekiyor. Burada iyi olan STM32 lerin programı ‘serial bootloader’ (seri yükleyici) ile kabul etmesidir. Aslında Arduino da, ESP8266 da benzer (seri) bootlader mantığıyla programlanmaktadır. Esas fark Arduino da bu işlemin -otomatik- olmasıdır. Her ne kadar bu kartta bulunan seri dönüştürücü entegresinin (CH340) RTS ve DTR uçları transistör aracılığıyla STM32F103 ün BOOT0 ve RESET uçlarına bağlanmış olsa da programlamak için el ile müdahale gerekiyor.

Kartı programlamak için gerekli adımları Windows işletim sistemi için sırasıyla ele alalım.

  1. Öncelikle kartımızın üzerinde bulunan USB – SERİ dönüştürücü entegresinin driver larını indirip bilgisayarımıza kurmamız gerekiyor. Bendeki dönüştürücü CH340. Google’a “CH340 driver” yazıp işletim sistemimiz için uygun olanı bulup indiriyor ve kuruyoruz.
  2. USB kablomuzu yukarıda görüldüğü gibi sağ üstteki usb portuna bağlıyoruz ve ardından bende mavi – beyaz görülen açma/kapama butonunu aktif hale getiriyoruz. Bu işlemi takiben butonun hemen yanındaki ledin (güç ledi) yandığını görüyor ve bilgisayarımızda yeni bir usb aygıtı takıldı sesini duyuyoruz.
  3. Bilgisayar sekmesine sağ tıklayıp Yönet e tıklıyoruz. Buradan ulaştığımız Aygıt Yöneticisindeki Bağlantı Noktalarına (COM ve LPT) tıklayıp kartımızın bilgisayarımız tarafından tanındığından emin olup bilgisayarımızın bize hangi seri port numarası atadığını yazıyoruz (aşağıdaki şekilde COM7 gibi).

    Şekil 1: STM32F103 COM PORT
  4. STM32F sitesinde verilen ve STM tarafından ücretsiz olarak dağıtılan bootlader programını indiriyoruz.  (indirmek için mail adresi gerekiyor.)
  5. Flash loader programını bilgisayarımıza kurup başlatıyoruz. Şekil 2 de görüldüğü gibi ayarları yapıp 3. adımda elde ettiğimiz Com Port u  seçiyoruz (örneğimizde COM7).

    Şekil 2: STM32F Flash Loader
  6. Açılan ekranda altta bulunan next butonuna tıklamadan önce STM32F kartımızda gördüğümüz BOOT0 jumper ını 0V konumundan VCC konumuna alıyoruz. (kartın fotoğrafında sol orta tarafta görünen GND – BT0 – 3V3 pinlerindeki jumperı BT0-3V3 konumuna alıyoruz.) Ardından kartımızdaki RESET butonuna bir kere basıyoruz.
  7. Bilgisayarımızdaki ekranda Next seçeneğini tıklıyoruz ve “target is readable” uyarısını görüp tekrar Next seçeneğine tıklıyoruz.
  8. Sonraki ekranda entegremizin hafıza blokları ve PID numarası gibi bilgileri içeren ekran geliyor. Target kutusunun “STM32F1” ile başladığından emin olup bir daha Next e tıklıyoruz.
  9. Gelen ekranda (Şekil 3) önce “download to device” a tıklayıp sonrasında sağ tarafta bulunan “…” butonu ile .hex ya da .bin uzantılı programımızın olduğu yere gidip dosyamızı seçiyoruz.

    Şekil 3: STM32F Yazılım Dosyası Yükleme
  10. Şekil 3 te görüldüğü gibi Next seçeneğini seçiyoruz ve program dosyamız yükleniyor. Dosyamız kısa bir sürede yüklendikten sonra Şekil 4 teki başarılı yükleme sayfasını görüyoruz. Bundan sonra yapmamız gereken 6. adımda VCC ye çektiğimiz BT0 (Boot0) pinini GND ye geri çekiyoruz ve RESET i tıklıyoruz. Programımız çalışmaya başladı!
Şekil 4 : STM32F Program Yüklendi Ekranı

Herkesin kartında dahili halde USB – SERİ dönüştürücü olmayacağını söylemiştim. Bu durumda harici bir usb – seri dönüştürücü ile programı yüklememiz gereklidir. Burada yazılan tüm işlemler geçerli olup, fazladan tek yapmamız gereken dönüştürücünün RX – TX uçlarını çapraz şekilde STM32F kartının pinlerine bağlamaktır. Aynı zamanda programı STM nin geliştirdiği ST – LINK ile de yükleyebiliriz. Bunun için SWD bağlantısı ya da JTAG bağlantısı yapmamız yeterlidir.

Bir sonraki yazımızda MikroC for ARM IDE kurulumu ve programlama ortamı hakkında bilgiler vermeye çalışacağım.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir