Nastavenie Eclipse+ARM+GIT na Linuxe
V článku nájdete popis inštalácie základného vývojového prostredia pre ARM procesory spolu s blikajúcim príkladom na platforme Linux.
EdizonTN, 06.07.2014-21:13


Jednotlivé kroky sú popísané v samostatných kapitolách.
Kroky môžete preskočiť pokiaľ ich máte už splnené, iné kroky (napr Toolchain) obsahuje viacero možností - napríklad toolchain GNUARM alebo SOURCERY.

U linuxových záležitostí dosť záleží od použitých verzií, takže drobné odchýlky (chyby, formát správ,...) sú viac než reálne.





16.06.2014 - doplnený demo projekt pre STM32F4 Discovery kit.



I. ECLIPSE – inštalácia vývojového prostredia
  1. Stiahnite najnovšiu verziu ECLIPSE.
    Z lokácie http://eclipse.org/downloads/ stiahnite „Eclipse Standard X.X.X“ pre Linux 32bit alebo 64 bit (podľa vašej používanej distrubúcie)



  2. Rozbaľte balík a obsah skopírujte do cieľového adresára (napr. /opt/)
    1. sudo tar -xf eclipse-standard-kepler-SR2-linux-gtk-x86_64.tar.gz -C /opt
    pre verziu Kepler, alebo
    1. sudo tar -xf eclipse-standard-luna-R-linux-gtk.tar.gz -C /opt
    pre verziu Luna.

  3. Spustite ECLIPSE a doinštalujte potrebné rozšírenia:
    MENU -> „Help“ -> “Install New Software“
    Nastavte zdroj inštalácie na: http://download.eclipse.org/tools/cdt/releases/kepler, alebo
    http://download.eclipse.org/tools/cdt/releases/luna
    Po načítaní balíkov označte:
    • CDT Main Features
    • CDT Optional Features
    A inštalujte.




Nateraz je Eclipse nainštalovaný na nakonfigurovaný pre programovanie v C a C++





II. Inštalácia prekladača - Toolchainu

Toolchain je sada nástrojov zabezpečujúcich kompiláciu zdrojového kódu až do binárnych súborov.
Momentálne sú dostupné dve verzie" GNUARM a Sourcery (verzia lite) od fy. Mentor (Mentor Graphic odkúpil CodeSourcery).
Sourcery generuje efektívnejší kód (testované cca pred rokom), je udržiavaný komerčnou firmou, členom skupiny ARM a zatiaľ je voľne k dispozícii.

Inštalovať stačí jednu - buď GNUARM, Alebo SOURCERY.
  1. GNUARM
    GNUARM prekladá pre rady Cortex-M0/M0+/M3/M4 a Cortex-R4/R5/R7


    1. Pri inštalácii na 64-bitové systémy Linux, treba doinštalovať 32-bitové knižnice (cca 137MB):
      1. sudo apt-get install ia32-libs


    2. Zo stránky https://launchpad.net/gcc-arm-embedded stiahni verziu pre Linux:
      1. w^get https^:// launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2
      (prosím, odstráňte znak ^)

    3. Rozbaľ archív do cieľového adresára (napríklad do /opt):
      1. sudo tar xjf gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2 -C /opt


    4. Nastav cestu ku kompiléru do systémvej premennej PATH:
      1. export PATH=$PATH:/opt/gcc-arm-none-eabi-4_8-2014q1/bin/




  2. SOURCERY
    Sourcery prekladá pre rady ARM7/9/11, Cortex-A8/A9, Cortex-M0/M1/M3/M4/M4F


    1. Pri inštalácii na 64-bitové systémy Linux, treba doinštalovať 32-bitové knižnice:
      1. sudo apt-get install ia32-libs ia32-libs-gtk


    2. Zo stránky mentor.com stiahni free verziu pre prekladača pre Linux:
      http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/arm-gnu-linux
      Stránka vyžaduje registráciu, download link je poslaný následne emailom. Takže sťahovať treba cez internetový prehliadač.

    3. Rozbaľ archív do cieľového adresára (napríklad do /opt):
      1. sudo tar xjf arm-2013.11-33-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /opt

    4. Nastav cestu ku kompiléru do systémovej premennej PATH:
      1. export PATH=$PATH:/opt/arm-2013.11/bin





Integrácia zvoleného toolchainu do ECLIPSE
Táto integrácia je potrebná pre korektnú prácu Eclipse so zvoleným a nainštalovaným pluginom.

  1. Najskôr nainštaluj rozšírenie do Eclipse:
    MENU - > „Help“ -> “Install New Software“
    Nastav zdroj inštalácie na: http://gnuarmeclipse.sourceforge.net/updates
    Po načítaní balíkov označ:
    • GNU ARM C/C++ Cross Development Tools

    A inštaluj.




  2. Následne nastav cestu k toolchainu.
    MENU -> "Windows" -> "Preferences" -> "C/C++" - "Build" – "Enviroment":
    Add variable: PATH s hodnotou:/opt/gcc-arm-none-eabi-4_8-2014q1/bin/

  3. Po dokončení inštalácie a následnom reštarte Eclipse, skontrolujeme úspešnosť.
    MENU -> „File“ -> „New“ -> „Project“ -> „C Project“, kde nájdeš nové typy projektov, ako napríklad:
    • Freescale Kinetis KLxxC/C++ Project
    • STM32f0xx C/C++ Project
    • atď









III. Inštalácia Eclipse rozšírenia - GitHub
GITHUB je verejná služba pre správu a verziovanie projektov. Prepojenie tejto služby s Eclipse zabezpečuje plugin GitHub.


  1. Najskôr nainštaluj rozšírenie do Eclipse:
    MENU - > „Help“ -> “Install New Software“
    Nastav zdroj inštalácie na: http://download.eclipse.org/egit/github/updates
    Po načítaní balíkov označ:
    • Eclipse GitHub integration with task focused interface

    A inštaluj.




  2. Po dokončení inštalácie a následnom reštarte Eclipse, skontroluj úspešnosť a pripoj vzdialený repozitár.
    MENU -> „Window“ -> „Open Perpective“ -> „Other“, kde vyber Git



  3. Následne otestuj spojenie na github.com. Z okna "Git Repositories" vyber "Clone a Git repository"

  4. Ako repository source vyber GitHub

  5. Do vyhľadávania zadaj napríklad „ARM_Blinky_STM32“

  6. Z nájdených výsledkov si vyber projekt pre tvoj hardwér:


  7. Stačí vybrať „master branch“

  8. Vyber destination adresár pre uloženie lokálnej kópie

  9. Následne Eclipse stiahne obsah repozitára do lokálneho repozitára na zadanej ceste. Po stiahnutí uvidíš lokálnu kópiu repozitára.

  10. Vybert si projekt z lokálneho repozitára a importuj ho do Eclipse projektu (Pravé tlačítko myšky nad vybraným adresárom a následne klik na „Import project - Import existing project“



Jednoduchá pomôcka pre prácu s verziovacím systémom









IV. OpenOCD – inštalácia debuggeru
OpenOCD je aplikácia zabezpečujúca komunikáciu medzi GDB debugger serverom a hardérom debuggera. Najnovšia verzia je 0.8.0 ale sú v nej nejaké problémy s kompiláciou, preto popíšem inštaláciu staršej verzie 0.7.0 s podporou: ASIX PRESTO, uLink (Keil), jLink (Segger), STLink (ST Micro. v1 a v2), ARM-JTAG-EW (Olimex), vslLink (Versaloon) a FTDI chips.

  1. Download, kompilácia a inštalácia OpenOCD:
    1. sudo apt-get install libftdi-dev libusb-1.0-0-dev
    2. cd ~
    3. w^get http^://sourceforge.net/projects/openocd/files/openocd/0.7.0/openocd-0.7.0.tar.gz
    (prosím, odstráňte znak ^)
    1. tar xvf openocd-0.7.0.tar.gz
    2. cd openocd-0.7.0
    3. ./configure --enable-stlink --enable-jlink  --enable-ftdi --enable-presto_libftdi --enable-ulink --enable-arm-jtag-ew --enable-vsllink --enable-ft2232_libftdi
    4. make
    5. sudo make install
    6. sudo cp /usr/local/share/openocd/contrib/openocd.udev /etc/udev/rules.d/98-openocd.rules
    7. sudo udevadm control –-reload-rules
    8. sudo ln -s /usr/local/share/openocd/scripts/ /opt/openocd
    9. export PATH=$PATH:/opt/openocd/scripts/


  2. Skúška inštalácie OpenOCD:
    1. openocd -v

    Výstup:
    1. Open On-Chip Debugger 0.7.0 (2014-06-10-13:07)
    2. Licensed under GNU GPL v2
    3. For bug reports, read
    4.         http ://openocd.sourceforge.net/doc/doxygen/bugs.html


  3. Pripoj hardware debugger do USB (skúšam s stm32vldiscovery kitom)

  4. Skontroluj rozpoznanie systémom:
    1. lsusb

    Výstup (príklad):
    1. Bus 001 Device 015: ID 0483:3744 SGS Thomson Microelectronics ST-LINK Pseudo disk


  5. Test OpenOCD:
    1. openocd -f board/stm32vldiscovery.cfg

    Výstup (príklad):
    1. Open On-Chip Debugger 0.7.0 (2014-06-10-13:07)
    2. Licensed under GNU GPL v2
    3. For bug reports, read
    4.         http ://openocd.sourceforge.net/doc/doxygen/bugs.html
    5. Info : This adapter doesn't support configurable speed
    6. in procedure 'transport'
    7. in procedure 'init'

    - chyba prenosu – viac v sekcii FAQ

  6. Následne nastav ECLIPSE pre prácu s OpenOCD:
    Menu ->“Windows“ -> „Preference“ -> „Run/Debug“ -> „String Substitution“ pridaj nový:
    „openocd_path„ s hodnotou „/usr/local/bin“

  7. Následne Spusti „Debug“.Potrebné nastavenie bolo prenesené z GIT-u. Po prvý krát ho treba vyvolať pomocou MENU ->"RUN" -> "Debug Configuration", kde pod „GDB OpenOCD Debugging“ nájdeš „ARM_Blinky_STM32VLDiscovery Debug“. Po kliknutí naň, sa v pravej dolnej časti okna objaví tlačítko „Debug“ ktorým spustíš debug programu.
    Ďaľšie spustenie už je dostupné v Menu -> "Run" -> "Debug History", alebo aj v ikonke Debug-u.



tento článok je z mikroZONE
( https://www.mikrozone.sk/pluginy/content/content.php?content.127 )