Skip to content

Ubuntu Kılavuzu: MSPGCC ve Eclipse Kurulumu

            İnternette bulduğum çeşitli kaynakları bu kılavuz içerisinde topladım.Başlangıç seviyesindeki kişilere Eclipse IDE ile MSPGCC yi çalıştırma derleme ve debug ve MSP430 cihazlarını programlamayı yardım etmeyi amaçlıyor. Bu kılavuz aşağıda belirtilen sitelerde bulabileceğiniz bazı adımları içeren bir kılavuzdur.

 

 



Ubuntu Kılavuzu:MSPGCC and Eclipse Kurulumu


 


Alvaro Aguilar 17/08/ 2010

Özet


İnternette bulduğum çeşitli kaynakları bu kılavuz içerisinde topladım.Başlangıç seviyesindeki kişilere Eclipse IDE ile MSPGCC yi çalıştırma derleme ve debug ve MSP430 cihazlarını programlamayı yardım etmeyi amaçlıyor. Bu kılavuz aşağıda belirtilen sitelerde bulabileceğiniz bazı adımları içeren bir kılavuzdur.





 

Kuruluma başlamadan önce aşağıdaki paketlerin sisteminizde halihazırda kurulu olmalıdır.


  • subversion

  • texinfo

  • patch

  • libncurses5-dev

  • zlibc

  • zlib1g-dev

  • libx11-dev

  • libusb-dev

  • libreadline6-dev


 

Kısaca açılamak gerekirse öncelikle mspgcc’yi yükleyecek ve ayarlarını yapacağız.Daha sonra sırasıyla Eclipse’e sırasıyla mspgcc’yi kullanarak C programları derleyeceğini ve MSP430 anlayacağı kodlar üreteceğini söyleyeceğiz.Bu süreçte Eclipse’in genel bir çalışma ortamı olduğunu aklımızda çıkarmamalıyız ve ona parametrelerle beraber dosyalarla ne yapacağını, derleyiciyi nasıl besleyeceğini söylemek zorundayız.   

 

MSPGCC


Bu  paket için iki seçeneğimiz var.Eski versiyon daha tutarlı ama mevcut pakete göre daha fazla ayar gerektiriyor.Ubuntu ile v.4.x  geliyor onun için v.3.x sizin kurmanız gerekiyor.Mspgcc4 ile ilgili daha detaylı bilgi MPGCC Wiki de bulabilir ve önceden derlenmiş paketleri   indirebilirsiniz.Ben mspgcc4 aşağıdaki siteyi kullanarak yükledim

 

http://sourceforge.net/projects/mspgcc4/files/

İçeriği  /opt/mspgcc klasörüne çıkartıp aşağıdaki komut ile izinlerini değiştirelim.

sudo chown -R $USER.$USER /opt/mspgcc

Cihazınızı debug edebilmek için “msp430-gdbproxy” ihtiyacınız olacak.Aşağıdaki komut bloğunu kullanarak kütüphanelerle beraber bunu edinebilirsiniz.

cd /opt/mspgcc/bin

wget http://www.soft-switch.org/downloads/mspgcc/msp430-gdbproxy

chmod 777 msp430-gdbproxy

cd /usr/lib

sudo wget http://www.soft-switch.org/downloads/mspgcc/libHIL.so

sudo wget http://www.soft-switch.org/downloads/mspgcc/libMSP430.so

Artık mspgcc kurmuş olduk ancak, komut satırından fonksiyonlara erişebilmek için /opt/mspgcc/bin yolunu kendi geliştirme ortamımıza eklemek zorundayız. /etc/environment dosyasını açıp dosyanın sonuna yolu ekliyoruz. Değişikliklerin etkin olması için sistemi yeniden başlatmaya ihtiyacımız var.

Yeni nesil MSP430 cihazları tanıtabilmek için ufak bir ayar yapmamız gerekiyor.Cihazı taktıktan sonra “dmesg | tail” komutunu çalıştırınca neye ihtiyaç olduğu ortaya çıkacaktır.Eğer “ti_ download firmware -firmware not found” hatasıyla karşılaşırsanız bir sonraki adımı uygulamak zorundasınız. “ti_3410.fw” isimli firmware dosyasına ihtiyacınız olacak, bu dosyayı    /lib/firmware/ti 3410.fw   adresinde bulabilirsiniz. Aşağıdaki komutu çalıştırarak dosyaya erişebilir hale getirin.

ln -s /lib/firmware/ti_3410.fw /lib/firmware/ti_usb-3410.bin

Cihazı tekrar bağlayıp “dmesg | tail” komutunu yeniden çalıştırınca aşağıdaki gibi bir çıktı vermelidir.

TI USB 3410 1 port adapter converter now attached to ttyUSB0

Eğer bunu göremiyorsanız USB cihazının konfigürasyon değerini değiştirmelisiniz.

USB cihazı için yapılacak değişiklik “dmesg | tail” çıktısına göre olacak ve cihaz bu şekilde tanıtılacaktır(bu örnekte 5-1).Bunu yapmadan önce root olmanız gerekmektedir.  

echo 2 > /sys/bus/usb/devices/5-1/bConfigurationValue

/dev/ttyUSB0 root.uucp’ye ait olduğu için $USER  ile uucp grubuna kendinizi eklemeniz gerekecek.Gruba başka bir kullanıcı eklemek için aşağıdaki komutta $USER yerine kullanıcıyı yazmalısınız. Kullanıcıyı gruba eklemek için –a bayrağını verdiğinizden emin olun aksi takdirde grubun içindekilerin hepsinin üzerine yazma işlemi yapılır.

usermod -a -G uucp $USER

Artık aşağıdaki komutu vererek msp430-gdbproxy çalıştırabilirsiniz:

msp430-gdbproxy msp430 /dev/ttyUSB0

Herşey yolunda gidiyorsa proxy çalışmaya başlamış ve 2000 nolu porttan komut almaya hazır olacaktır.

Cihazınızla iletişim kurmak için tek yol bu değil.İsterseniz mspdebug isimli aracı kullanabilirsiniz.Bu araç msp430-gdb nin desteklemediği eZRF2500 gibi araçlarıda destekliyor.Kurulumu ile ilgili bilgilere http://mylightswitch.com/2010/06/21/installing-mpsgcc4-and-mspdebug-on-kubuntu-1004/ adresinden erişebilirsiniz  

MSPGCC artık kurulduğuna göre , Eclipse ile birlikte çalışmasını sağlayacağız.

Eclipse


Eclipse ve birkaç eklentiye ihtiyacımız olacak Eclipse komut satırından yükleme ile başlıyoruz.

You will need to install Eclipse and a few add-ons. Begin by installing eclipse from the command line:

sudo apt-get install eclipse

 Kurulumdan sonra Eclipse çalıştırıp, Help>Install New Software…

Bu iki paketi aşağıdaki adreslerden kurabilirsiniz.

Resim 1: Eclipse Install New Software


 

1. CDT add-on (Eclipse sürümüne uygun olanı):

http://www.eclipse.org/cdt/downloads.php

2. Zylin Embedded CDT:

http://opensource.zylin.com/embeddedcdt.html

“Work with:” kutusuna bu adresleri yazarak doğru linkleri bulabilirsiniz.Kurulum tamamlandığında değişikliklerin etkin olması için Eclipse yeniden başlatılması gerekecek.

                Yeniden başlattıktan sonra yeni C projesi oluşturuyoruz.Bunun için her sıradan bir proje oluşturdum:


Resim 2: Eclipse New Project

Next tıklayıp led ismini verdiğim boş bir çalıştırılabilir proje oluşturma:


Resim 3: Eclipse LED C Çalıştırılabilir proje

Finish tıklayınca varsayılan Eclipse C/C++ perspektifi karşılayacak sizi.Sol köşede kaynak kodunuzda her şeyi görselleştirebilen Project Explorer göreceksiniz.Şimdi flash led örneğini buraya sürükleyik bırakabilirsiniz.Bendekini IAR Embedded Workbench kurulu bir Windows makineden elde ettim fakat TI sitesindende indirebilirsiniz.

Kaynak dosyayı açtıktan sonra ekranın nasıl gözüktüğü:

 


Resim4: Eclipse C/C++ Perspective

Artık bir projemiz var, Eclipse bu projeyi MSPGCC derleyicisi kullanmasını sağlayacak gerekli özel ayarlamaları yapmamız gerekiyor.Proje ismini sağ tıklayıp menüden Properties seçin.C/C++ Build seçeneği altındaki Settings kısmını seçin.Tool Settings sekmesinde Compiler,Linker ve Assembler ayarlarını bulacaksınız.Öncelikle bir terminal penceresi açın ve aşağıdaki komutu girin:

msp430-gcc --target-help

Komutun çıktısı size desteklenen MCU isimleri verecek, cihazınıza uygun olanı bir yere not edin. Örneğin benim cihazım MSP430F2013 ve MCU ismi msp430x2013 olacak.

Eclipsedeki GCC C Compiler seçeneğine geri dönüp , komutu şu şekilde düzenleyin

msp430-gcc -mmcu=msp430x2013

Kendi MCU isminize göre düzenlemeyi unutmayın.


Resim 5: GCC C derleyici ayarları

 Sırada başlık dosyalarımız var, derleyici onları nerde bulacağını bilmelidir.Directories seçeneği GCC Compiler altında olup buraya mspgcc başlık dosyalarının tutulduğu adresi yazacaksınız.Varsayılan adres /opt/mspgcc/msp430/include adresidir.En sona ben bu adresleri ekledim

 

/opt/mspgcc/msp430/include

/opt/mspgcc/include

/usr/include

Benzer şekilde GCC C Linker ayarlamamız gerekiyor. Bu komut içinde tek yapacağımız şey aynı aslında, benzer bilgileri ilgili alana kopyala-yapıştır yapmak.GCC C Linker altındaki Libraries kısmında “Library search path (-L)” kısmına aşağıdaki adresleri dahil ediyoruz:

/opt/mspgcc/msp430/lib

/opt/mspgcc/lib

/usr/local/lib

 


Resim 6: GCC C Linker kütüphaneleri

Son olarak Assembler kurulumunu doğru bir şekilde tamamlamak için , sayfada aşağı doğru iniyoruz. “Command” alanına msp430-as değerini veriyoruz. Projeye dahil edilecek dosyaların nerede olduğunu assembler’ bildirmemiz gerekiyor.General alt seçeneğinde “Include paths (-I)” kutusuna aşağıdaki değerleri ekliyoruz.

/opt/mspgcc/msp430/include

/opt/mspgcc/include


Resim 7: Assembler include yolları

Derleyicimiz artık çalışmaya hazır, yalnız Eclipse ne tür dosya üreteceğini söylememiz gerekiyor. “Build Artifact” sekmesinde “Artifact Extension” kısmına “elf”yazın.Bir sonraki “Binary Parsers” sekmesinde Elf Parser seçili olduğundan emin olun.


Resim 8: Build Artifact sekmesinin altından elf uzantısı seçme.

Derleme ayarları tamamlandı, OK tıklayınca ana sayfaya döneceksiniz. Project>Build Project seçeneğine tıklayarak projeyi build etmeyi deneyin.Eğer her şey yolunda giderse , başarılı bir derleme yapmış olacaksınız.Aksi taksirde konsol kontrol edip, ortaya çıkan hataları düzeltin.  

 

Şuanda debug etmek isteyebileceğimiz bir çalıştırılabilir dosyamız var.Ben bu yazı boyuca msp430-gdb’yi  msp430-gdbproxy ile beraber kullandım.Siz isterseniz bu adımı kurulumu ve Eclipse ile çalıştırılması benzer olan mspdebug ile yapabilirsiniz.Proxy kısmı sadece msp430-gdb den gelen komutları bilgisayarına bağlanmış olan MSP430 cihazına ileten bir aracıdır.Herşeyden önce Eclipse Proxy çalıştırabilmesini sağlayacağız. Run : External Tools : External Tools Configurations…. Yeni bir konfigürasyon oluşturuyoruz ve  bunun gibi ayarlıyoruz. Doğru cihaza  eriştiğinizden emin olmak için msp430-gdbproxy  man sayfalarına bakmanız gerekebilir. Argüman olarak msp430 olduğu yerde(cihaz tipi) ve hangi porttan bağlandığını atlıyorum.(Bu daha önce bahsedilen dmesg | tail komutundan biliniyor)


Resim 9:  Eclipse hariç araç kurulumu

Gördükleriniz benim kurulu araçlarım. msp430-gdbproxy ile adlandırılmış olan wine üzerinde çalışıyor. Bu konuda güzel bir doküman bu adresinde mevcut.

Ek olarak mspdebug adında çalışan bir aracım daha var. Bir sonraki ekran görüntüsünde parametreleri ile birlikte bende çalışan hali var. Bu komutla cihazınızın kurulumu ile sırasıyla her şeyi yaptığınızdan emin olmak için man sayfalarına bakabilirsiniz.



Resim 10:  mspdebug Eclipsete kurulumu


Artık Proxy kuruldu, çalıştırmayı deniyor ve konsol çıktısını inceliyoruz.Çıktı, cihazınızla ilgili kesin bilgileri ve son satırda “Listening on port 2000” ifadesini veya bunun bir benzerini içerecektir. ms430-gdb  Eclipse içinden çalışacak şekilde ayarlamamız gerekiyor.Bunu yapabilmek için Project Properties sayfasını yeniden açmamız gerekecek.Proje ismine sağ tıklayıp açılan menüden Properties seçin.Run/Debug Settings altında New … OK tıklayın. “Main ” sekmesi altında Proje ve çalıştırılabilir dosya için derleme süreci boyunca doğru isimlerin verildiğinden emin olun. “Debugger” sekmesine geçip  “Debugger” açılır listesinden remote/gdb seçin. “GDB Debugger” satırına ise msp430-gdb yazın. “Gdbserver Settings” sekmesine gidip msp430-gdbproxy dinlediği portu seçin;varsayılan değer server ismi 127.0.0.1 ile beraber 2000 olacaktır.



Resim 11:  msp430-gdb Eclipsete kurulumu


Son olarak, home dizininizde “.gdbinit” isimli bir dosya oluşturup içine aşağıdaki satırları yazın.

Finally, create a file in your home directory called .gdbinit. Inside of this file, place the following lines:

set remoteaddresssize 64

set remotetimeout 999999

target remote localhost:2000

Sonuç


Bu kılavuz interneten bulunmuş çeşitli kaynaklardan bir derleme olup.İşlemlerde veya yollarda bir problemle karşılaşırsanız aşağıdaki web sitelerini inceleyebilirsiniz.

 





 

Aşağıdaki kaynaklardan Alvaro Aguilar  yaptığı çalışmanın çevirisidir.



 

 

Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

No comments

The author does not allow comments to this entry

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Form options
Free Web Hosting