-
Data: 2018-10-31 16:02:11
Temat: Re: Alternatywa dla ESP8266/ESP32? Moduł EMW3165.
Od: "Grzegorz Niemirowski" <g...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Atlantis <m...@w...pl> napisał(a):
> Gdzie dokładnie trzeba umieścić tę linijkę?
W definicji sekcji .irom0.text, tak jak zrobiłeś, bo chcemy aby objęła
większy fragment linkowanego kodu.
> Modyfikuję skrypt eagle.app.v6.ld, używany w moim projekcie.
Na pewno ten? Poza tym tutaj ta sekcja jest dużo dłuższa:
https://github.com/espressif/ESP8266_NONOS_SDK/blob/
master/ld/eagle.app.v6.ld
Możesz puścić make VERBOSE=1 i wkleić linijkę od linkowania?
> Zmodyfikowany fragment wygląda następująco:
> .irom0.text : ALIGN(4)
> {
> _irom0_text_start = ABSOLUTE(.);
> *libmbedtls.a:(.literal .text .literal.* .text.*)
> *libpp.a:(.literal.* .text .literal .text.*)
> *libm.a:(.literal.* .text .literal .text.*)
> *(.irom0.literal .irom.literal .irom.text.literal .irom0.text
> .irom.text)
> _irom0_text_end = ABSOLUTE(.);
> } >irom0_0_seg :irom0_0_phdr
> Niestety nie pomogło - projekt ciągle nie chce się kompilować,
> wyrzucając te same błędy...
Jeśli na pewno linker używa tego pliku, to powinno pomóc. Ewentualnie tak
mocno wychodzisz poza zakres, że przesunięcie jednej biblioteki nie pomaga.
Wtedy mozna dopisać węcej, np. libmain (w poprzednim poście się pomyliłem -
chodziło właśnie o libmain, nie libm). Ewentualnie możesz zrobić tak, że
zwiększysz obszar iram1 tak bardzo, aż projekt się zlinkuje. Definicję masz
na początku skryptu:
iram1_0_seg : org = 0x40100000, len = 0x8000
Przykładowo można zmienić 0x8000 na 0x10000. Oczywiście kod wynikowy nie
zmieści się w pamięci modułu, ale chodzi o to żeby przeanalizować wynikowy
plik wykonywalny. Sprawdzić ile ostatecznie zajęły poszczególne sekcj i
które funkcjeoraz z których bibliotek są w tych sekcjach. Można do tego użyć
readelf albo przejrzeć plik .map jeśli jego generowanie jest uwzględnione w
Makefile.
--
Grzegorz Niemirowski
https://www.grzegorz.net/
Następne wpisy z tego wątku
- 02.11.18 10:00 Atlantis
- 02.11.18 10:33 Grzegorz Niemirowski
- 02.11.18 10:51 Atlantis
- 05.11.18 00:29 Grzegorz Niemirowski
- 05.11.18 13:10 Atlantis
- 05.11.18 14:58 Grzegorz Niemirowski
- 07.11.18 22:18 Cezar
Najnowsze wątki z tej grupy
- Kod zniżkowy w TME do 26.09.2025
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- NxtPaper
- Programiści nie przestają zadziwiać świat
- Długi kabel zasilający a na końcu procek
- Dlaczego nam nie idzie
- Co czujnik to inna temperatura
- Jak naprawić pilota
- Dlaczego TMP wer. 2.0 nie może być sprzedawany jako patyk USB lub karta PCIe 1x?!?
- produkcja w UE
- Pamięć SRAM nie działa z Z80182
- plyta indukcyjna - naprawa
- założyłem kamerę
- syrenki alarmów
Najnowsze wątki
- 2025-09-17 jak się kupuje elektryczny?
- 2025-09-17 Kod zniżkowy w TME do 26.09.2025
- 2025-09-17 Ukraińcy uważają polski sys. antydronowy za najlepszy na Świecie, a rząd w III Rzeczy (pospolitej) woli sys. niemiecki
- 2025-09-17 Ukraińcy uważają polski sys. antydronowy za najlepszy na Świecie, a rząd w III Rzeczy (pospolitej) woli sys. niemiecki
- 2025-09-17 Warszawa => Dyrektor pionu IT <=
- 2025-09-17 Rzeszów => International Freight Forwarder <=
- 2025-09-16 China => Production Coordinator / Representant Product Dev <=
- 2025-09-16 Warszawa => Project Manager (AI and innovation) <=
- 2025-09-15 "Jeden telefon z Waszyngtonu i nasze samoloty nie wystartują" - czyli to co każdy koder wie
- 2025-09-15 UE chce uruchomić SI "Chat Control" na kompach wszystkich euroPejczyków
- 2025-09-15 Sejm odrzucił zakaz idelogii banderyzmu
- 2025-09-15 Nieprawidłowe parkowanie
- 2025-09-15 Poznań => Konsultant SAP HCM <=
- 2025-09-15 Warszawa => Specjalista rekrutacji IT <=
- 2025-09-15 Warszawa => International Freight Forwarder <=