COOCOX IDE ile STM32F4 Discovery Programlama Ortamının Kurulumu

stm32f4 Discovery KartıBilindiği üzere ARM tabanlı mikrodenetleyicilerin programlamasında geliştirme ortamı ve derleyici işleri biraz sıkıntılı. 8 bit mikrodenetleyicilerdeki gibi ücretsiz derleyiciler kolay bulunmuyor. Keil, IAR, Attolic gibi geliştirme ortamları genellikle ücretli olarak satılıyor. Ücretsiz versiyonlarında da sınırlamalar var. Eclipse ile GCC’yi beraber kullanıp bir programlama ortamı kurmak mümkün ancak bu ortamı çalışır hale getirmek bir hayli zahmetli.

Yakın zamanda keşfettiğim ve kolay kurulumu ile dikkat çeken COOCOX adlı IDE ile STM32 kitlerini kullanmaya başlamak oldukça kolay.Burada COOCOX IDE ile STM32F4 Discovery kartını programlamak için gerekli kurulum adımlarını anlatacağım. (Windows 7 üzerinde)

Programlayıcının Kurulumu
Kartımızı programlamak için öncelikle kartın üzerindeki ST-Link programlayıcısının sürücüsünü kurmak gerekiyor:

ST – Link Driver: http://www.st.com/web/en/catalog/tools/PF258167

ST- Link ile STM32 kartlarına program atabiliyoruz. ST-Link düzgün olarak kurulduğunda kartı taktığınızda Windows Aygıt Yöneticisinde ST-Link görülecek:

stlink-usb

Sürücüyü kurduktan sonra ST-Link Utility’i de kurarak programlayıcının çalışıp çalışmadığından emin olabiliriz:

ST – Link Utility: http://www.st.com/web/en/catalog/tools/PF258168

ST-Link Utility STM32’lere program atmak için kullanılıyor. Hem kendi arayüzünden hem de komut satırından çağırılarak kullanılabiliyor.

STM32F4 Discovery kartını USB kablosuyla bilgisayara bağlayıp ST – Link Utility üzerindeki “Connect to the Target” butonuna bastığımızda aşağıdaki gibi mikrodenetleyici ile ilgili bilgilerin görünmesi gerekiyor.

st-link utility

Buraya kadar kartımıza program atmakla ilgili gerekenleri hazırlamış olduk. Şimdi geliştirme ortamına geçebiliriz.

Derleyicinin Kurulumu

Önce aşağıdaki linkten ARM GCC derleyicisinin en son sürümünü indiriyoruz:
(13.06.2013 – Latest version is 4.7-2013-q1-update)
https://launchpad.net/gcc-arm-embedded/+download

Kurulumu klasik “next next” adımlarıyla geçiyoruz. Son adımda karşımıza çıkan checkbox’ların üçünü de işaretlememiz gerekiyor. 3. checkbox ile Windows Path değişkenlerine derleyicinin bulunduğu klasör adresi eklenmiş oluyor. Böylelikle derleyiciye komut satırından herhangi bir klasör altından erişmek mümkün hale geliyor.

GCCSetup

Böylelikle derleyiciyi de kurmuş olduk. Şimdi CooCox IDE kurulumuna geçebiliriz.

CooCox IDE Kurulumu

CooCox IDE’yi aşağıdaki sayfadaki “Download the latest CoIDE directly  linkinden indirebilirsiniz. İndirirken email adresinizle kayıt olmanız gerekiyor. Ardından dosyayı indirebilirsiniz. Boyutu 259 mb. Kurulumu yine bütün adımları geçerek yapabilirsiniz.

http://www.coocox.org/CooCox_CoIDE.htm#

Kurulumu tamamladıktan sonra masaüstünde oluşturulmuş olan COIDE kısayolundan IDE’yi çalıştırabilirsiniz. CoIDE Eclipse tabanlı bir geliştirme ortamı, bu nedenle Eclipse aşinalığınız varsa kullanmakta pek sıkıntı yaşamazsınız. CoIDE’de hoşuma giden oldukça güzel özellikler eklenmiş. “Repository” özelliği ile projeler için gerekli olan kütüphane ve örnek kod dosyalarını IDE üzerinden otomatik olarak indirebiliyoruz. Ayrıca geliştiriciler tarafından paylaşılmış olan birçok kütüphane de var.

İlk Projenin Oluşturulması
CooCox IDE açıldıktan sonra “New Project” butonuna basarak (ya da Project menüsünden) yeni bir proje oluşturuyoruz. Projenize isim verirken Türkçe karakterler kullanmamaya özen gösterin. Chip seçimini STM32F4 Discovery kartının üzerinde bulunan STM32F407VG olarak yapıyoruz. Sonrasında daha önceden yüklemiş olduğumuz ARM GCC derleyicisinin konumunu Project >> Select ToolChain Path menüsünden COIDE’ye kaydetmemiz gerekiyor.

Proje oluşturma adımları aşağıdaki gibi:

Projemizi oluşturduktan sonra “repository” penceresinde istediğimiz kütüphaneleri programımıza dahil edebiliyoruz. “Others” sekmesinden “GPIO” seçimini yaptığımızda GPIO kullanımıyla ilgili kütüphaneler otomatik olarak programımıza eklenecek. “Components” penceresinde GPIO  (with 1 example) seçeneğine tıkladığınızda GPIO örnekleri penceresi açılacak. Buradan STM32F4 Discovery kartı için olan örneğin (STM32F4Discovery-IOToggle) “add” seçeneğine tıkladığınızda kodlar otomatik olarak projeye eklenecek. Örnekle gelen “main.c” dosyasını kullanacağımızdan projemizde daha önceden bulunan  “main.c” dosyasını silmek gerekiyor.

View >> Configuration menüsünden ST-Link’i programlayıcı olarak kullanmak için gerekli ayarları yapmak gerekiyor:

ST-Link Configuration

Bütün bu işlemleri yaptıktan sonra “Build (F7)” butonuna basıp programı derleyebiliriz. Program derlendiğinde Console penceresinde “BUILD SUCCESSFUL” yazısını göreceksiniz.

Sonrasında Flash >> Program Download menüsünden veya “Download Code to Flash1 butonuyla kodu karta yükleyebilirsiniz. Program yüklendikten sonra STM32F4 Discovery kartı üzerindeki 4 LED’in ard arda yandığını göreceksiniz.

CooCox IDE’nin pratik yapısı gerçekten hoşuma gitti. Kurulumla ilgili çok sıkıntı çekmeden hızlıca geliştirme ortamını kurup hemen projelerimize odaklanmaya başlamamızı sağlıyor. Hem de kod boyutu sınırlaması olmadan.

Bu yazımla birlikte çekmecelerde tozlanmaya bırakılmış STM32F4 Discovery kartlarının tekrar gün ışığa çıkmasını ve yeni yeni projeler yapıldığını görmeyi umut ediyorum. Lütfen sizler de yaptığınız projeler hakkında bloglar yazarak bizimle paylaşın.

CooCox Web Sitesi: http://www.coocox.org/Index.html

22 thoughts on “COOCOX IDE ile STM32F4 Discovery Programlama Ortamının Kurulumu

  1. Çok teşekkür ederim sizde olmasanız gelişebileceğimiz hiçbir kaynak yok inşAllah yazıların devamıda gelir

  2. Coşkun hocam CoIDE yi kurdum ve sizin verdiğiniz linkteki driverı kurdum. hazır bir projeyi açmak istiyorum ancak derlemeye çalıştıgım esnada “select toolchain path” penceresi cıkıyor ve bundan sonra ilerleyemiyorum ne yapmam gerekiyor acaba yardımcı olursanız cok sevinirim. Şimdiden teşekkürler

    • öncelikle gnu tools arm embedded kurulması gerekiyor, bu coide için gerekli
      malum coide derleyici olarak arm compiler kullanıyor

      sonra coide kurulurken arm gcc compiler (arm-none-eabi-gcc.exe)nerede diye soruyor,
      bu mesela bende

      C:Program FilesGNU Tools ARM Embedded4.7 2013q1bin

      dizininde, siz de kendinize göre yazacaksınız

  3. Coşkun hocam Merhaba,
    Sayenizde çok tırmalamadan ilk uygulamayı yapmış olduk. Ve Keil gibi ilginç bir sistemden kurtulmuş oldum. 🙂

    İyi çalışmalar.

  4. Hocam ALLAH sizden BİN KERE razı olsun ne duanız varsa gönlünüze göre hayırlı şekilde gerçekleşsin bu program tam aradığım programdı birsürü program kurdum istediğim gibi değildi.
    Tekrar Teşekkürler.

    • ARM tabanlı kartlar yüksek işlem kapasitelerine sahip olduğundan daha uygun olabilir. Open Pilot adlı açık kaynaklı projeye bakabilirsiniz.

  5. Hocam merhabalar , stm32f429I boardımı coocox ile kullanmaya çalışıyorum , ancak desteklemediğini öğrendim forumunda.Bir kaç işlem yaparak kullananları gördüm.CMSIS yapmışlar.Ancak tam olarak anlayaamadım bazı projeleri inceledim cmsıs boot ile cmsıs arasında ki farklar nelerdir? cmsıste startup dosyalarını görebiliyorum.Ancak diğerinde işlemci ile ilgili dosyalar var.Acaba nasıl kullanabilirim?Teşekkürler iyi çalışmalar

Bir Cevap Yazın

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