CUBEMx (stm32F init code generator) Kurulumu Kullanımı Resimli Anlatım

Başlatan RaMu, 03 Haziran 2015, 07:58:20

RaMu

  CUBEMx STM nin yeni HAL kütüphanelerini kullanabilmek için
çıkardığı, init kodu üreten bir yardımcı araçtır diyebiliriz.
Artık STM eski kütüphanelerine değil,
bu HAL kütüphanelerine derstek verecek gibi gözüküyor.

  CUBEMx bir PC programıdır,
HAL kütüphaneleri ise STM mcu lar için kullanılan,
adc, uart, usb , sd card, IO vs. kütüphanelerdir.
Normalde STM için bu kütüphaneleri dahil ettiğimiz veya etmediğimiz yani
basit bir led uygulaması bile olsa main kodu yazmak oldukça uğraştırıcı idi.
CUBEMx sayesinde bu birkaç tıklamayla hallediliyor artık.

Gelelim kurulumu ve kullanılmasına.
Öncelikle şu adresden
http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1533/PF259242?sc=stm32cube
En altta bulunan ve bir alttaki fotoda görülen
Get Software kısmında STM32CubeMx karşısındaki Download linkine tıklayıp
programı bilgisayarımıza indiriyoruz.





Yine bu sayfada bulunan Related softwares and tools kısmına sonra tekrar değineceğiz,
bu kısmı aklınızda tutun, buradan indirebileceğimiz daha fazla şey var.

İndirdiğimiz zipdeki SetupStm32CubeMX-....exe doyasını çift tıklayıp kuruluma başlıyoruz,
zipden çıkarmanıza gerek yoktur.


Kurulum klasörünün yerini belirlemenizi isteyebilir, belirleyin ve
her zamanki gibi next next diyerek kurulumu tamamlayın.

Kurulumu yaptığınız dosyada STM32CubeMx.exe dosyası oluşacak
buna bir kısayol oluşturup masaüstünüze labilirsiniz,
artık bütün işimiz bu exe veya kısayolu ile olacak.



STM32CubeMx.exe ye çift tıklayp programı çalıştırıyoruz
ve karşımıza şu ekran geliyor:

Help kısmından install new libraries diyoruz:

Burada gri ana başlıklarda temel mcu aileleri var,
gri başlıkların alt başlıklarında kütüphane sürümleri mevcut,
herzaman son çıkan versiyonlarını kullanmakta fayda var.
Ve sizde hiçbir yeşil tik çıkamayacak,
benim daha önceden yüklediğim kütüphaneler yeşil işaretli olarak görülüyor,
sizde kütüphaneyi anlatacağım şekilde yüklediğinizde
yüklü kütüphaneler yeşil işaretlenecek.
Bize hangi aile lazımsa misa STM32F4 kullanacaksak
o ailenin son versiyon library sine tıklıyoruz
ve alt kısımda açıklamalar çıkıyor


Burada kütüphaneyi yüklemek için iki seçeneğimiz var:
From Local ve Install Now
From local seçeneğini ben daha çok seviyorum,
önce bunu açıklayayım.
Local için öncelikle ilgili kütüphaneyi STM nin siteinden pc ye indirmek gerekiyor
yazının başında verdiğim linkden
(daha sonra değineceğiz dediğim kısım)
aşağıdaki fotoda görülen kısma geliyoruz:


Burada lazım olan kütüphaneyi tıklayp pc ye indiriyoruz.
CubeMx de From Local i tıkladığımızda artık bu indirdiğimiz dosyayı gösterip
kütüphanenin yüklenmesini sağlıyoruz.

Install Now seçeneği ise
tıkladığımızda istediğimiz kütüphaneyi kendi indirip
kurmamızı sağlıyor, iki seçeneğide kullanabilirsiniz.

Artık kütüphanemizide kurduk,
gelelim CubeMx ile kod oluşturmaya.
CubeMx ana menüde

File dan Create new project diyoruz.
Karşımıza şu pencere geliyor:

Eğer hazır bir kit kullanmıyorsak istediğimiz mcu yu seçiyoruz,
hazır bir kit misal STM32F4Nucleo F401-RE ile örneği göstereceğim
Board selector kısmına geçiyoruz ve listeden bordumuzu seçiyoruz
Ok diyoruz.

Karşımıza şu pencere gelecek

Project kısmından  Settings e geliyoruz,

Burada kullanacağımız ide derleyici ayarları mevcut,
kod hangi ortam için üretilecekse o ortam burada seçiliyor,
proje nereye kaydedilecekse oda burada gösteriliyor.
ben Keil kullanacağım için keil5 i seçiyorum.
OK dediğimizde tekrar bir önceki sayfaya geliniyor,
bu sayfada artık Project kısmından generate Code diyerek kodu ürettiriyoruz:

Hemen arından çıkan seçenekte open project diyebiliriz
veya open folder deyip keil projesini biz tıklayıp projeyi keil ile açabiliriz.

Projeyi açtığımızda derlenebilen bir kodumuz oluyor aslında.
Ama bu kod hiçbir iş yapmaz,
çünkü kodun sadece ana iskeleti elimizde,
basitçe bir led yak söndür için şunalrı yapabiliriz:
Öncelikle sol tarafda Application user kısmında main.c açılır,

Burada kprogramcı kodlarını eklemesi için bazı yerler işaretlenmiş durumda,
bunlardan biri user code begin3
bu kısımda main kodlarımız bulunabilir:
Nucleo için bir user buton ve birde user led var,
bunların bağlı olduğu pinlere dikkat ederek aşağıdaki kodu ekliyoruz:


Ve artık keilde derleme işlemini yapıp kodu kitimize yüklüyoruz,
programımızın çalışmasını gözlemliyoruz.

Hepsi bu kadar.
RaMu || uCanEL
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

Karamel

Hocam oncelille ellerinize saglik ::) hocam benim bir sorum olacak. gece cubemx i kurcalarken farkettimde benim cubemx im code uretiyor ama keil fild uretemiyor. Zaten code uretirken code urettim ama keil file uretemedim diye hata veriyor. Nette biraz baktim ama cok yorgun oldugum icin vazgecip uyudum. f0 dan f7 ye kadar butun software lar kurulu. Sizce sorun ne olabilir?

tekosis

hocam elinize sağlık. ancak aklıma takılan mevzu şu bu resimler yüklediğiniz siteden bir süre sonra silinmeyecek mi? bu resimleri direk siteye yüklesek nasıl olur?
afedersiniz zaten sitede yüklü sanırım.
http://www.teknikhoca.com - İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

RaMu

 Yok resimler benim google+ hesabımda yüklü,
ayrıca bilgisayarımda kayıtlı.
Google+ batmazsa bir şey olmaz herhalde.
Ben zaten silmem.

Siteye yüklenen resimler postimage üzerine yükleniyor,
bence bu yöntem daha kalıcı.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

Logan

Merhaba RaMu.

Güzel bir paylaşım.

Birkaç haftadır @nonstradam CubeMx ile uğraşıyor ve epey yol aldı. Bu arada birkaç adet bug buldu. Kullandığı MCU'nun kodunu tam hatırlamıyorum. Ancak ST'nin son çıkan ürünlerinden biri. Keil ile derlerken çok sıkıntı çekti. Sitede bu sıkıntıları anlatan bir paylaşım yapmış olması lazım.

Genel olarak firmalar bu tarz "init" kısımlarını hazırlayabileceğimiz programlar üretmeye başladılar.Texas'ın, NXP'nin ve Mikrochip'in programları mevcut. Benim görüşüm eksiklerine rağmen sanırım aralarında en iyisi ST.

İyi çalışmalar.
İmza.

tmcone

Alıntı yapılan: Logan - 05 Haziran 2015, 12:50:18

Genel olarak firmalar bu tarz "init" kısımlarını hazırlayabileceğimiz programlar üretmeye başladılar.Texas'ın, NXP'nin ve Mikrochip'in programları mevcut. Benim görüşüm eksiklerine rağmen sanırım aralarında en iyisi ST.



Freescale in Processor Expert aracı bunlardan birkaç adım önde...

strom

CubeMx ve yeni hal kutuphanelerini kullanarak stm32f429 discovrry tft ekrani kullanabilen oldu mu? Bununla ilgili ornek kod veya anlatim var mi?

Logan

@tmcone,

Ne gibi artıları var? Detaylı bir şekilde anlatır mısın acaba?
İmza.

manipulator

@logan Texas'ın hangi programı var?

Msp430 serisi için olanı var mı?

RaMu

Ek:
Kullanılan HAL kütüphanelerindeki fonksiyonların 900 sayfalık açıklaması şu dökümanda var:
UM1725
User Manual
Description of STM32F4xx HAL drivers
http://www.st.com/st-web-ui/static/active/jp/resource/technical/document/user_manual/DM00105879.pdf
İletiyi düzenle
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

M.s.d

arkadaşlar şöyle bi hata alıyorum. neden olabilir?




CoşkuN

Dosya yolunda Türkçe karakter olduğu için (Selçuk) olabilir. Başka bir klasörde kod ürettirmeyi deneyebilirsin

M.s.d


pro-TR

Alıntı yapılan: CoşkuN - 26 Ağustos 2015, 20:11:45Dosya yolunda Türkçe karakter olduğu için (Selçuk) olabilir. Başka bir klasörde kod ürettirmeyi deneyebilirsin

arkadaşım 1 günümü aldı bu hatayı çözmek için, gene döndük dolandık kendi sitemizde çözümü bulduk. çok tşk ederim
vardım ilim meclisine eyledim talep, meğer ilim en gerideymiş illa EDEP, illa EDEP <muhyiddin Arabi K.S.>