Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

STM32 - Zawieszone debugowanie.

yahuza 28 Jan 2015 18:39 1635 27
Computer Controls
  • #1
    yahuza
    Level 11  
    Koledzy,

    mam ostatnio taki problem dziwny, bo jak długo programuję STMy takiego nie miałem.
    Wcześniej używałem cały czas CodeSourcery lub Linaro. Teraz zmieniłem komputer i się zdziwiłem. Dorwałem tylko jakąś ostatnią wersję toolchaina CodeSourcery.

    Mam jednak taki problem:
    Łącze się z procesorem (STM32f103C8t6) przez openocd.

    Open On-Chip Debugger 0.7.0 (2015-01-27-20:10)
    Licensed under GNU GPL v2
    For bug reports, read
    	http://openocd.sourceforge.net/doc/doxygen/bugs.html
    Info : This adapter doesn't support configurable speed
    Info : STLINK v2 JTAG v14 API v2 SWIM v0 VID 0x0483 PID 0x3748
    Info : Target voltage: 2.889941
    Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints


    Potem łącze się debugerem(przez eclipse).

    Info : accepting 'gdb' connection from 3333
    Info : device id = 0x20036410
    Info : flash size = 64kbytes
    Warn : acknowledgment received, but no packet pending
    undefined debug reason 6 - target needs reset
    target state: halted
    target halted due to debug-request, current mode: Thread 
    xPSR: 0x01000000 pc: 0x080001c0 msp: 0x20005000



    I kiedy dam RUN nic się nie dzieje. Mogę nacisnąć PAUSE ale też nic się nie dzieje. Tylko się wyszarzają przyciski run i pause. Kiedy dam stop to dopiero po chwili dostaję błąd
    Mogę też nic nie naciskać i po chwili sam się wyszarzy przycisk RUN.

    Info : dropped 'gdb' connection


    Używam Linuxa. Testowałem OpenOCD 0.7 i 0.8. Testowałem toolchainy: CodeSourcery, Launchpad i Bleeding-Edge .

    Zainstalowałem sobie Keila na Windowsie i tam wszystko śmiga. W ten sposób wykluczyłem na razie jakiś karygodny błąd na płytce.

    W inicialization commands mam:
    monitor reset
    monitor reset halt


    Openocd odpalam z argumentami:
    -f/usr/local/share/openocd/scripts/interface/stlink-v2.cfg
    -f /usr/local/share/openocd/scripts/target/stm32f1x_stlink.cfg


    Testowałem już kod, który kiedyś na tego typu prockach działał. Teraz nie mam nic innego niż main z pętlą. Nie próbuję inicjalizować PLL i zewnętrznego kwarca.

    Miał ktoś podobny problem lub zna rozwiązanie?

    Dzięki
    Jacek
  • Computer Controls
  • #2
    tadzik85
    Level 38  
    Monitor reset init wystarczy.

    Tryby uśpienia stosowane?
  • #3
    yahuza
    Level 11  
    Nie używam żadnych uśpień. W mainie nic nie ma prócz nieskończonej pętli while. W startupie jest zwykłe zerowanie pamięci i wywołanie maina.

    Zmieniłem na monitor reset init. Niestety nie pomogło.
  • #4
    tadzik85
    Level 38  
    yahuza wrote:
    Nie używam żadnych uśpień. W mainie nic nie ma prócz nieskończonej pętli while. W startupie jest zwykłe zerowanie pamięci i wywołanie maina.

    Zmieniłem na monitor reset init. Niestety nie pomogło.


    Pokaż zakładki ustawień debugera. Eclipse postawiony poprawnie?
    Jakieś nietypowe rzeczy na schemacie?
  • Computer Controls
  • #5
    el2010tmp
    Level 25  
    Może redefiniujesz piny od SWD?
  • #6
    yahuza
    Level 11  
    Mam na schemacie np. silniki ale są na razie nie podłączone. Mam TB6612 ale niepodłączone (bez zasilania głównego). Mam CP2102. Jeszcze sekcja zasilania. Ale jak mówiłem sprawdziłem w Keilu - działało normalnie.

    Wklejam ustawienia debugera.

    STM32 - Zawieszone debugowanie. STM32 - Zawieszone debugowanie. STM32 - Zawieszone debugowanie.


    Quote:
    Może redefiniujesz piny od SWD?


    W kodzie na prawdę nic nie ma. Wklejam co mam dla pewności :).

    > reset init
    target state: halted
    target halted due to debug-request, current mode: Thread 
    xPSR: 0x01000000 pc: 0x080001cc msp: 0x20005000
    > stm32f1x mass_erase 0
    stm32x mass erase complete


    Code: c
    Log in, to see the code
    #include <stdint.h>

    #include "inc/stm32f10x.h"
    #include "inc/hdr_bitband.h"


    void EXTI0_IRQHandler(void)
    {

    }

    //#define PIRO bitband_t m_BITBAND_PERIPH(&(GPIOB->IDR), 12)


    int main(void)
    {

    //SCB->VTOR = 0x08000000 | (0x0 & 0x1FFFFF80);


    while(1)
    {

    }

    //rccSetMcuFreq(8, 72);


    while(1)
    {
    }
    return 0;
    }

    [/syntax]

    Code: armasm
    Log in, to see the code
  • #7
    tadzik85
    Level 38  
    zaznacz resume i daj breakpoint na main.
  • #8
    yahuza
    Level 11  
    tadzik85 wrote:
    zaznacz resume i daj breakpoint na main.


    Nic to nie dało. Dalej tak samo. :(
  • #9
    tadzik85
    Level 38  
    yahuza wrote:
    tadzik85 wrote:
    zaznacz resume i daj breakpoint na main.


    Nic to nie dało. Dalej tak samo. :(


    Wersja eclipse? Wszystkie wtyczki zainstalowane jak hardware debug itp?
  • #10
    yahuza
    Level 11  
    Eclipse Version: 4.2.2

    Wtyczki:
    STM32 - Zawieszone debugowanie.
  • #11
    tadzik85
    Level 38  
    Może ZYLIN coś miesza.

    Spróbuj jeszcze providera zmienić. Upewnij się ze kompilujesz wersję debugującą z symbolami itp.

    A dalej to brak mi pomysłów.
  • #12
    yahuza
    Level 11  
    Providera? Nie rozumiem.
    Zawsze używałem Zylin, odkąd przeczytałem o tym w tutorialu Freddiego. ;)

    Program na pewno wgrywa się prawidłowo. Sprawdziłem ST-LINK Utility na Windows.

    Chyba masz rację z tymi symbolami debugowania. Ale to jest dziwne bo mam -g przy kompilacji:

    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb  -Wall -Wstrict-prototypes -Wextra -Wno-sign-compare -Wno-strict-prototypes -std=gnu89 -fverbose-asm -I/home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/arm-none-eabi/include -Iinc -I. -g -c main.c -o out/main.o 
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -x assembler-with-cpp -mcpu=cortex-m3 -mthumb -I/home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/arm-none-eabi/include -Iinc -I. -g -c startup.S -o out/startup.o
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb  -Wall -Wstrict-prototypes -Wextra -Wno-sign-compare -Wno-strict-prototypes -std=gnu89 -fverbose-asm -I/home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/arm-none-eabi/include -Iinc -I. -g -c mod/rcc.c -o out/rcc.o
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb  -Wall -Wstrict-prototypes -Wextra -Wno-sign-compare -Wno-strict-prototypes -std=gnu89 -fverbose-asm -I/home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/arm-none-eabi/include -Iinc -I. -g -c vectors.c -o out/vectors.o
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -TSTM32F103xC_rom.ld -Wl,-Map=out/map.map,--cref,--no-warn-mismatch -Wl,-gc-sections -g out/main.o out/startup.o out/rcc.o out/vectors.o  -o out/down.elf 
    cp out/down.elf wsad.elf


    Ale przy zrzucie ich nie widać:

    Code: armasm
    Log in, to see the code


    I gdb się pluje:
    
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gdb wsad.elf 
    GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.1.20141128-cvs
    Copyright (C) 2014 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    <http://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.
    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from wsad.elf...(no debugging symbols found)...done.
    


    Kiedyś jak zapomniałem o symbolach to debuger się nie zawieszał tylko mówił, że nie ma symboli. Widocznie ta wersja eclipse chowa tę konsolę.
    Ale przecież widać jak byk, że mam opcję -g. Nie wiem co tu nie gra. :(
  • #13
    tadzik85
    Level 38  
    Sprawdź to na jednym z przykładów Freddiego. Zylin od dawna jest zbyteczny.
  • #15
    tadzik85
    Level 38  
    el2010tmp wrote:
    Czy -g to to samo co -0g ?


    A co niby oznacza -0g? Chyba chodziło o -Og?
    -Og to poziom optymalizacji -g to dołączenie symboli do debugu o rożnym poziomie. -Og to


    Ja mam tak: -g -ggdb3
  • #16
    yahuza
    Level 11  
    No i kurczę już nie wiem czym to się różni:

    Tutaj jak się kompiluje za pomocą freediego:
    (...)@(...)-jacek:~/workspace/stm32_blink_led-1.2.1-120107$ make
    Assembling file: startup.S
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -x assembler-with-cpp -c -mcpu=cortex-m3 -mthumb -g -ggdb3 -Wa,-amhls=out/startup.lst  -MD -MP -MF out/startup.d -I.  startup.S -o out/startup.o
     
    Compiling file: gpio.c
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -std=gnu89 -g -ggdb3 -fverbose-asm -Wa,-ahlms=out/gpio.lst -DSTM32F10X_MD -MD -MP -MF out/gpio.d -I.  gpio.c -o out/gpio.o
     
    Compiling file: main.c
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -std=gnu89 -g -ggdb3 -fverbose-asm -Wa,-ahlms=out/main.lst -DSTM32F10X_MD -MD -MP -MF out/main.d -I.  main.c -o out/main.o
    main.c:137:17: warning: 'pll_start' defined but not used [-Wunused-function]
     static uint32_t pll_start(uint32_t crystal, uint32_t frequency)
                     ^
     
    Compiling file: vectors.c
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -std=gnu89 -g -ggdb3 -fverbose-asm -Wa,-ahlms=out/vectors.lst -DSTM32F10X_MD -MD -MP -MF out/vectors.d -I.  vectors.c -o out/vectors.o
     
    Linking target: out/stm32_blink_led.elf
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-g++ -mcpu=cortex-m3 -mthumb -TSTM32F103xB_rom.ld -g -Wl,-Map=out/stm32_blink_led.map,--cref,--no-warn-mismatch -Wl,--gc-sections -nostartfiles  out/startup.o out/gpio.o out/main.o out/vectors.o    -o out/stm32_blink_led.elf
     
    Creating extended listing: out/stm32_blink_led.lss
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objdump -S out/stm32_blink_led.elf > out/stm32_blink_led.lss
     
    Creating memory dump: out/stm32_blink_led.dmp
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objdump -x --syms out/stm32_blink_led.elf > out/stm32_blink_led.dmp
     
    Creating IHEX image: out/stm32_blink_led.hex
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objcopy -O ihex out/stm32_blink_led.elf out/stm32_blink_led.hex
     
    Creating binary image: out/stm32_blink_led.bin
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objcopy -O binary out/stm32_blink_led.elf out/stm32_blink_led.bin
     
    Size of modules:
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-size -B -t --common out/startup.o out/gpio.o out/main.o out/vectors.o   
       text	   data	    bss	    dec	    hex	filename
        104	      0	      0	    104	     68	out/startup.o
        244	      0	      0	    244	     f4	out/gpio.o
        336	      0	      0	    336	    150	out/main.o
        320	      0	      0	    320	    140	out/vectors.o
       1004	      0	      0	   1004	    3ec	(TOTALS)
     
    Size of target .elf file:
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-size -B out/stm32_blink_led.elf
       text	   data	    bss	    dec	    hex	filename
        772	      0	   1024	   1796	    704	out/stm32_blink_led.elf
     
    (...)@(...)-jacek:~/workspace/stm32_blink_led-1.2.1-120107$ cp out/
    out/gpio.d               out/main.d               out/startup.d            out/stm32_blink_led.bin  out/stm32_blink_led.hex  out/vectors.d            
    out/gpio.lst             out/main.lst             out/startup.lst          out/stm32_blink_led.dmp  out/stm32_blink_led.lss  out/vectors.lst          
    out/gpio.o               out/main.o               out/startup.o            out/stm32_blink_led.elf  out/stm32_blink_led.map  out/vectors.o            
    (...)@(...)-jacek:~/workspace/stm32_blink_led-1.2.1-120107$ cp out/stm32_blink_led.elf wsad.elf
    (...)@(...)-jacek:~/workspace/stm32_blink_led-1.2.1-120107$ /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gdb wsad.elf 
    GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.1.20141128-cvs
    Copyright (C) 2014 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    <http://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.
    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from wsad.elf...done.



    A tutaj moje:
    (...)@(...)-jacek:~/AIR/MGR/PROG/DOWN$ make
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -Wno-sign-compare -Wno-strict-prototypes -std=gnu89  -g -ggdb3 -fverbose-asm  -Wa,-ahlms=out/main.lst -DSTM32F10X_MD -MD -MP -MF out/main.d  main.c -o out/main.o 
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -x assembler-with-cpp -c -mcpu=cortex-m3 -mthumb -g -ggdb3 -Wa,-ahlms=out/startup.lst  startup.S -o out/startup.o
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -Wno-sign-compare -Wno-strict-prototypes -std=gnu89  -g -ggdb3 -fverbose-asm  -Wa,-ahlms=out/rcc.lst -DSTM32F10X_MD -MD -MP -MF out/rcc.d  mod/rcc.c -o out/rcc.o
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -Wno-sign-compare -Wno-strict-prototypes -std=gnu89  -g -ggdb3 -fverbose-asm  -Wa,-ahlms=out/vectors.lst -DSTM32F10X_MD -MD -MP -MF out/vectors.d  vectors.c -o out/vectors.o
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-g++ -mcpu=cortex-m3 -mthumb -TSTM32F103xC_rom.ld -g  -Wl,-Map=out/map.map,--cref,--no-warn-mismatch -Wl,--gc-sections -nostartfiles out/main.o out/startup.o out/rcc.o out/vectors.o  -o out/down.elf 
    cp out/down.elf wsad.elf
    
    (...)@(...)-jacek:~/AIR/MGR/PROG/DOWN$ /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gdb wsad.elf 
    GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.1.20141128-cvs
    Copyright (C) 2014 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    <http://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.
    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from wsad.elf...(no debugging symbols found)...done.
    
    


    Czy ktoś z kolegów widzi tutaj różnicę dlaczego w moim przypadku nie ma symboli do debugowania?
  • #17
    tadzik85
    Level 38  
    To sprawdź makefile lub ustawienia jakiejś wtyczki.
  • #18
    yahuza
    Level 11  
    Co mam sprawdzić w makefile? Komendy, które generuje makefile są moim zdaniem identyczne. Moim zdaniem to jest istotne.

    Kompiluje i używam gdb z konsoli, więc to nie wtyczki.
  • #19
    tadzik85
    Level 38  
    yahuza wrote:
    Co mam sprawdzić w makefile? Komendy, które generuje makefile są moim zdaniem identyczne. Moim zdaniem to jest istotne.

    Kompiluje i używam gdb z konsoli, więc to nie wtyczki.


    A moim zdaniem bardzo istotne. Albo masz gotowy makefile, albo używasz coś co go generuje. I tam leży problem.
  • #20
    yahuza
    Level 11  
    Ok, jeśli tak uważasz. Wrzucam Makefile:

    Code: text
    Log in, to see the code
  • #21
    tadzik85
    Level 38  
    Minimalizm totalny a ty się dziwisz. Weź stosuj makefile Freddiego.

    Masz automat, z dodaniem każdego pliku chcesz makefile edytować?
    Przesada
  • #22
    yahuza
    Level 11  
    tadzik85 wrote:
    Minimalizm totalny a ty się dziwisz. Weź stosuj makefile Freddiego.
    Przesada

    Co złego jest w minimalizmie? Mam wszystko co jest potrzebne. Kompilator wywoływany jest z takimi samymi parametrami i tak samo.

    tadzik85 wrote:
    Masz automat, z dodaniem każdego pliku chcesz makefile edytować?

    Tak, chce za każdym razem edytować makefile, ale o gustach się nie dyskutuje.
  • #23
    tadzik85
    Level 38  
    yahuza wrote:
    tadzik85 wrote:
    Minimalizm totalny a ty się dziwisz. Weź stosuj makefile Freddiego.
    Przesada

    Co złego jest w minimalizmie? Mam wszystko co jest potrzebne. Kompilator wywoływany jest z takimi samymi parametrami i tak samo.

    tadzik85 wrote:
    Masz automat, z dodaniem każdego pliku chcesz makefile edytować?

    Tak, chce za każdym razem edytować makefile, ale o gustach się nie dyskutuje.


    To dodaj właściwe flagi.
  • #24
    yahuza
    Level 11  
    tadzik85 wrote:
    yahuza wrote:
    tadzik85 wrote:
    Minimalizm totalny a ty się dziwisz. Weź stosuj makefile Freddiego.
    Przesada

    Co złego jest w minimalizmie? Mam wszystko co jest potrzebne. Kompilator wywoływany jest z takimi samymi parametrami i tak samo.

    tadzik85 wrote:
    Masz automat, z dodaniem każdego pliku chcesz makefile edytować?

    Tak, chce za każdym razem edytować makefile, ale o gustach się nie dyskutuje.


    To dodaj właściwe flagi.


    To nie jest kwestia flag. Użyłem Makefile Freediego i jest to samo:

    (...)@(...)-jacek:~/AIR/MGR/PROG/DOWN$ make
    Assembling file: startup.S
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -x assembler-with-cpp -c -mcpu=cortex-m3 -mthumb -g -ggdb3 -Wa,-amhls=out/startup.lst  -MD -MP -MF out/startup.d -I.  startup.S -o out/startup.o
     
    Compiling file: main.c
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -std=gnu89 -g -ggdb3 -fverbose-asm -Wa,-ahlms=out/main.lst -DSTM32F10X_MD -MD -MP -MF out/main.d -I.  main.c -o out/main.o
    In file included from inc/stm32f10x.h:478:0,
                     from main.c:3:
    inc/core_cm3.h:1204:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __enable_irq()               { __ASM volatile ("cpsie i"); }
                          ^
    inc/core_cm3.h:1205:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __disable_irq()              { __ASM volatile ("cpsid i"); }
                          ^
    inc/core_cm3.h:1207:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __enable_fault_irq()         { __ASM volatile ("cpsie f"); }
                          ^
    inc/core_cm3.h:1208:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __disable_fault_irq()        { __ASM volatile ("cpsid f"); }
                          ^
    inc/core_cm3.h:1210:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __NOP()                      { __ASM volatile ("nop"); }
                          ^
    inc/core_cm3.h:1211:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __WFI()                      { __ASM volatile ("wfi"); }
                          ^
    inc/core_cm3.h:1212:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __WFE()                      { __ASM volatile ("wfe"); }
                          ^
    inc/core_cm3.h:1213:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __SEV()                      { __ASM volatile ("sev"); }
                          ^
    inc/core_cm3.h:1214:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __ISB()                      { __ASM volatile ("isb"); }
                          ^
    inc/core_cm3.h:1215:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __DSB()                      { __ASM volatile ("dsb"); }
                          ^
    inc/core_cm3.h:1216:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __DMB()                      { __ASM volatile ("dmb"); }
                          ^
    inc/core_cm3.h:1217:22: warning: function declaration isn't a prototype [-Wstrict-prototypes]
     static __INLINE void __CLREX()                    { __ASM volatile ("clrex"); }
                          ^
     
    Compiling file: vectors.c
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gcc -c -mcpu=cortex-m3 -mthumb -O0 -ffunction-sections -fdata-sections -Wall -Wstrict-prototypes -Wextra -std=gnu89 -g -ggdb3 -fverbose-asm -Wa,-ahlms=out/vectors.lst -DSTM32F10X_MD -MD -MP -MF out/vectors.d -I.  vectors.c -o out/vectors.o
     
    Linking target: out/downFreedie.elf
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-g++ -mcpu=cortex-m3 -mthumb -TSTM32F103xC_rom.ld -g -Wl,-Map=out/downFreedie.map,--cref,--no-warn-mismatch -Wl,--gc-sections -nostartfiles  out/startup.o out/main.o out/vectors.o    -o out/downFreedie.elf
     
    Creating extended listing: out/downFreedie.lss
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objdump -S out/downFreedie.elf > out/downFreedie.lss
     
    Creating memory dump: out/downFreedie.dmp
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objdump -x --syms out/downFreedie.elf > out/downFreedie.dmp
     
    Creating IHEX image: out/downFreedie.hex
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objcopy -O ihex out/downFreedie.elf out/downFreedie.hex
     
    Creating binary image: out/downFreedie.bin
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-objcopy -O binary out/downFreedie.elf out/downFreedie.bin
     
    Size of modules:
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-size -B -t --common out/startup.o out/main.o out/vectors.o   
       text	   data	    bss	    dec	    hex	filename
        104	      0	      0	    104	     68	out/startup.o
         88	      0	      0	     88	     58	out/main.o
        320	      0	      0	    320	    140	out/vectors.o
        512	      0	      0	    512	    200	(TOTALS)
     
    Size of target .elf file:
    /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-size -B out/downFreedie.elf
       text	   data	    bss	    dec	    hex	filename
          0	      0	    512	    512	    200	out/downFreedie.elf
     
     
    (...)@(...)-jacek:~/AIR/MGR/PROG/DOWN$ cd out/
    (...)@(...)-jacek:~/AIR/MGR/PROG/DOWN/out$ /home/(...)/arm/gcc-arm-none-eabi-4_9-2014q4/bin/arm-none-eabi-gdb downFreedie.elf 
    GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.1.20141128-cvs
    Copyright (C) 2014 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    <http://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.
    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from downFreedie.elf...(no debugging symbols found)...done.


    Teraz już kompletnie zgłupiałem.

    ls -LR
    .:
    def  extra  inc  main.c  Makefile  Makefilebak  mod  out  startup.S  STM32F103xC_rom.ld  vectors.c
    
    ./def:
    result.h  std.c  std.h
    
    ./extra:
    path_and_symbols.xml
    
    ./inc:
    core_cm3.c  core_cm3.h  hdr_bitband.h  hdr_rcc.h  hdr_special_registers.h  stm32f10x.h  system_stm32f10x.c  system_stm32f10x.h
    
    ./mod:
    rcc.c  rcc.h
    
    ./out:
    downFreedie.bin  downFreedie.dmp  downFreedie.elf  downFreedie.hex  downFreedie.lss  downFreedie.map  main.d  main.lst  main.o  startup.d  startup.lst  startup.o  vectors.d  vectors.lst  vectors.o
    
  • Helpful post
    #25
    tadzik85
    Level 38  
    Czyj plik linkera...?
  • #26
    yahuza
    Level 11  
    tadzik85 wrote:
    Czyj plik linkera...?


    TAK! To plik linkera na koniec usuwał symbole!
    Dzięki wielkie!
  • Helpful post
    #27
    tadzik85
    Level 38  
    yahuza wrote:
    tadzik85 wrote:
    Czyj plik linkera...?


    TAK! To plik linkera na koniec usuwał symbole!
    Dzięki wielkie!


    To są skutki stosowania "KWIATKÓW"
  • #28
    yahuza
    Level 11  
    tadzik85 wrote:
    yahuza wrote:
    tadzik85 wrote:
    Czyj plik linkera...?


    TAK! To plik linkera na koniec usuwał symbole!
    Dzięki wielkie!


    To są skutki stosowania "KWIATKÓW"


    Takie były krótkodystansowe skutki. :)

    Długodystansowe skutki to wysoko ceniona w branży wiedza, zrozumienie i umiejętność pisana takich skryptów z palca. :)