-
Data: 2011-01-16 12:42:40
Temat: arm-gcc i malloc() - uzywajac yagarto i ADUc7026
Od: Marcin <m...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam,
Tym razem ja szukam pomocy. Od paru dni walcze z ADuC7026, pierwotnie
z wersja ewaluacyjna Keila a teraz yagarto ( zglasza sie jako werja
arm-none-eabi-gcc (GCC) 4.5.1)
Mam w Keilu napisany programik do obslugo 1-wire i wszystko ladnie
dziala, tj. przerwania, timery i dynamiczna alokacja pamieci. Chcialem
caly program przeniesc na gcc i zaczynaja sie schody.
Poradzilem juz sobie z plikami linkera, przerwaniami - wszystko
dziala. Ale zachcialo mi sie uzywac malloc() i problem mnie na razie
przerosl.
Wiem, ze stdio.h potrzebuje paru funkcji ( stubs). Posilkowalem sie
przykladami z:
http://www.yagarto.de/download/yagarto/syscalls.c
Oznaczenia poczatku i konca sterty zmienione na __heap_start i
__heap_end, tak zeby sie zgadzalo z tym co jest w pliku linkera.
No i najgorsze, ze nic nie dziala. W testowym programie moge sobie
wyrzucic cos dla testo na UART'a wiec widze ze program dziala ale po
wywolaniu prt = malloc(sizeof(int)); calosc "zawiesza sie" i nie
powraca z malloc.
Czy ma ktos moze przyklady dzialajacego malloc ? przygladnal bym sie
plikom startup.S, jak rozwiazana jest funkcja _sbrk_r (struct _reent
*r, int incr) oraz jak wyglad plik linkera. Najchetniej na ADuC, ale
moze byc tez cos ze procesorow Atmela. Przyklady na LPC od nxp maja
zupelnie inaczej rozwiazywane inicjalizacje wektorow przerwan w
startup.s.
Po dissasemblacji mojego pliku .elf widze, ze moje wywolanie malloc()
wywoluje glebiej _malloc_r a ten z koleji _sbrk_r. I powinno
dzialac, bo ta funkcje mam w syscalls.c i jes dolinkowana.
Przegladalem tez strone http://www.freddiechopin.info/ i tamtejsze
forum, ale nie udalo mi sie nic dzialajacego na moim procku
skompilowac z malloc();
Pomocy, siedzenie do 3 nad ranem przy komputerze juz nic nie pomaga ;)
Pozdrawiam,
Marcin
Następne wpisy z tego wątku
- 16.01.11 13:08 Michoo
- 16.01.11 17:21 Marcin
- 18.01.11 20:06 Marcin
- 18.01.11 22:05 Michał Baszyński
Najnowsze wątki z tej grupy
- Multimetr z bluetooth
- Ciekawa mapka z BTS-ami
- Lampy uliczne LED z kubkiem
- Pęczniejące LiPo
- wyłącznik ścienny
- "Wybitna" inteligencja AI
- test stereo
- Bluetooth stereo
- W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- Weryfikacja myjki ultradźwiękowej
- zasieg radaru
- Zmywarka Bosch SRV55T43EU - awaria
- Kod zniżkowy w TME do 26.09.2025
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
Najnowsze wątki
- 2025-10-01 Dlaczego nie skorzystam z promocji -40% na MT w rocznej prenumeracie
- 2025-10-01 Multimetr z bluetooth
- 2025-10-01 Citek i "wymagane działanie"
- 2025-10-01 Białystok => Software Engineer .Net <=
- 2025-10-01 Rzeszów => International Freight Forwarder <=
- 2025-10-01 Wrocław => Specjalista ds. Marketingu Online (PPC) <=
- 2025-10-01 Gdańsk => Starszy programista oprogramowania C++ <=
- 2025-10-01 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-10-01 Rzeszów => Spedytor Międzynarodowy <=
- 2025-10-01 Białystok => Inżynier oprogramowania .Net <=
- 2025-10-01 => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-10-01 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-10-01 Ciekawa mapka z BTS-ami
- 2025-09-30 Lublin => Delphi Programmer <=
- 2025-09-30 Warszawa => Konsultant Wiodący SAP PP <=