Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Blog Ubuntu -- Správa "projektů" české komunity Ubuntu

Novinky: Děkujeme všem návštěvníkům fóra, kteří ochotně radí ostatním. Vaše práce je velmi potřebná a vážíme si jí.

Autor Téma: Geany a arm-none-eabi-gdb  (Přečteno 1717 krát)

Xbunt

  • Návštěvník
  • *
  • Příspěvků: 13
  • Karma: +0/-0
    • Zobrazit profil
Geany a arm-none-eabi-gdb
« kdy: 16 Květen 2016, 15:35:30 »
Dobry den.

Programujem procesory STM32 pomocou STLink v.2
Najprv som pouzival OpenOCD a pomocov telnetu som dokazal program .elf dostat do procesora.
No OpenOCD este nepodporuje STM32f072, preto som siahol po nastroji ARM-NONE-EABI-GDB.  Nim sa napojim na server, ktory spustim ST-Util.
V nom dokazem program vlozit do procesora. No ked dam subor .elf iba nahrat, procesor zostane zaseknuty. (Zrejme je v rezime ladenia). Ak ho spustim, zamrzne konzola a mozem ju vypnut. Jedine Ctrl-C.
Moje programovace prostredie je Geany. V nom som spustil ScopDBG nastavil debager na ARM-none-eabi-gdb.
Procesor sa da ovladat, spustit, zastavit, krokovat.. no neukazuje mi to v editore. Neda sa ani oznacit check point, ci spustit po kurzor.
Stale vypisuje ze mu chyba symbol-table.
Ked mu dam nacitat subor .elf  spozna uz symbolicke adresy, ale stale sa neda spustit program po kurzor ani checkpoint ci ukazovat riadky pri ladeni.
Ja pisem v ASM a kompiler, ci linker pouzivam arm-none-eabi-as,ld

Ako mam vytvorit ten subor symbolov?

Xbunt

  • Návštěvník
  • *
  • Příspěvků: 13
  • Karma: +0/-0
    • Zobrazit profil
Re:Geany a arm-none-eabi-gdb
« Odpověď #1 kdy: 16 Květen 2016, 22:04:34 »
Nemozte ti mi poradit kde by sa to dalo najst?

Jakub Vaněk

  • Stálý člen
  • ***
  • Příspěvků: 752
  • Karma: +75/-4
    • Zobrazit profil
    • Web programátora a studenta Jakuba Vaňka
Re:Geany a arm-none-eabi-gdb
« Odpověď #2 kdy: 16 Květen 2016, 22:30:26 »
V takhle lowlevel věcech se nevyznám, ale přesto mi něco zní špatně.
V nom dokazem program vlozit do procesora. No ked dam subor .elf iba nahrat, procesor zostane zaseknuty. (Zrejme je v rezime ladenia). Ak ho spustim, zamrzne konzola a mozem ju vypnut. Jedine Ctrl-C.
Není potřeba to vytáhnout z ELFu přímo do raw binárky (tzn. čistě instrukce a data)?
« Poslední změna: 16 Květen 2016, 22:32:53 od Jakub Vaněk »
Notebook: Lenovo Thinkpad X200, Xubuntu 16.04

Xbunt

  • Návštěvník
  • *
  • Příspěvků: 13
  • Karma: +0/-0
    • Zobrazit profil
Re:Geany a arm-none-eabi-gdb
« Odpověď #3 kdy: 17 Květen 2016, 11:06:51 »
Spustim debager:
arm-none-eabi-gdb app.elf
gdb> load

A v nom dam nahrat program do uP. Ak je V ASM pisane v sekcii "text", nahra data do Flash (0x08000000). Ak su data v sekcii RAM uklada data v uP do  RAM (0x20000000).
Adresy sekcie Text a Ram sa zadvaju v konfiguracnom subore pre Linker.

Bin subor zial neviem vytvorit. A ten sa sa lahko odoslat aj pomocou ulitky ST-FLASH

Ja len by som chcel vediet, ako sa nastavuje debager, aby komunikoval s prostredim (geany).
Lepsie povedane, ako prostredie zisti, ze ktory riadok ma oznacit.
Lebo v konzole mi vypise debager, na ktorom riafku je, len to geany nevie dekodovat.

Xbunt

  • Návštěvník
  • *
  • Příspěvků: 13
  • Karma: +0/-0
    • Zobrazit profil
Re:Geany a arm-none-eabi-gdb
« Odpověď #4 kdy: 23 Květen 2016, 14:29:33 »
Problem vyrieseny.
Pri kompilacii ARM-NONE-EABI-AS chybal parameter -g, co vlozi do subory symboly pre GDB