-
Data: 2018-10-31 14:20:09
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):
> Pierwsze pytanie, a raczej wątpliwość: czy stosowane przeze mnie
> biblioteki (przede wszystkim ta do serwera http) będą zgodne z
> alternatywnym SDK?
To alternatywne bazuje w dużym stopniu na oficjalnym więc ewentualne
przeportowanie nie powinno być trudne.
> Po drugie, czy ta modyfikacja dotyczy tylko kodu użytkownika? Bo z tego
> co widzę, to u mnie głównym źródłem problemu są biblioteki z SDK, które
> linker umieszcza w RAM-ie.
Dotyczy kodu użytkownika, bo brane są oryginalne skrypty linkera. Nie bałbym
się jednak tych skryptów edytować ani tym bardziej z ich względu zmieniać w
ogóle platformę :) Jako przykład wziąłem ten projekt:
https://github.com/QB4-dev/esp_nano_httpd_basic_exam
ple Po kompilacji
sprawdzam rozmiar sekcji:
.irom0.text 203076 1075908608
.text 25796 1074790400
Nie jest źle, większość poszła do Flasha. Jednak IRAM jest w większości
zapełniony i trzeba coś z tym zrobić. Komendą readelf sprawdzam co poszło do
IRAMu. Okazuje się, że mnóstwo znajdujących się tam funkcji pochodzi z
biblioteki libpp. Trzeba by ją przenieść do Flasha. Zaglądam do skryptu
linkera (eagle.app.v6.old.1024.app1.ld) i widzę, że są już tam linijki
przenoszące niektóre biblioteki do sekcji irom0.text. Dodałem więc
analogiczną linijkę dla libpp:
*libpp.a:(.literal.* .text.*)
Niestety nic to nie dało. Szybkie googlanie podpowiedziało, że trzeba
przenieść też sekcje bez kropki w środku nazwy. Dopisana linijka będzie więc
miała postać:
*libpp.a:(.literal.* .text .literal .text.*)
Rekompilacja i... sukces!
.irom0.text 218020 1075908608
.text 10628 1074790400
Zaoszczędzone 15 kB :) Google podpowiada, że mozna jeszcze przenieść libm.
Wtedy mamy:
.irom0.text 223188 1075908608
.text 3496 1074790400
Jeszcze lepiej, zużyte tylko nieco ponad 10% IRAMu a prawie wszystko mamy we
Flashu. Wystarczyło dopisać dwie linijki. I pewnie obejdzie sę bez zmiany
SDK. Być może właśnie na te modyfikacje skryptu linkera natrafiałeś.
A jeśli nie chcesz modyfikować skryptu linkera, to możesz zrobić z drugiej
strony: zmodyfikować bibliotekę zmieniając w niej nazwy sekcji. Mozna to
zrobić komendą objcopy:
xtensa-lx106-elf-objcopy --rename-section .text=.irom0.text --rename-section
.literal=.irom0.literal libpp.a
--
Grzegorz Niemirowski
https://www.grzegorz.net/
Następne wpisy z tego wątku
- 31.10.18 15:15 Atlantis
- 31.10.18 16:02 Grzegorz Niemirowski
- 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
- Hiszpania bez pradu
- amperomierz w plusie
- 3G-nadal działa
- Historia pewnego miernika kalibratora
- Ustym 4k Pro i wyświetlacz
- Czemu rozwaliło celę?
- Wojna w portfelu
- Jaki trojfazowy licznik tuya lub podobny?
- Problem z dekoderem adresów
- Intel się wyprzedaje: po 10latach pchnęli pakiet kontrolny Altery za 1/4 kwoty zakupu
- Korekcja perspektywy
- Wentylator zabija zasilacze LEDek?
- Re: Kompensacja mocy biernej przy 230VAC
- Totaliztyczny obowiązek naprawy maszyn i urządzeń
- Niby uziom ale nie
Najnowsze wątki
- 2025-04-30 Szczecin => Key Account Manager IT <=
- 2025-04-30 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-04-30 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-04-29 Nożownik zaatakował i zabił lekarza
- 2025-04-29 Polecam żarówki Blackout na Blackout z dużym gwintem
- 2025-04-29 Porażka kasty sędziowskiej przed Trybunałem Sprawiedliwości UE
- 2025-04-29 Kombinacja znaków A11 i B33?
- 2025-04-29 Na jakim etapie jest sprawa karna "gaśnicowego" Brauna z grudnia 2023?
- 2025-04-29 TSUE jest "przeciw a nawet za" neosędziami :-)
- 2025-04-29 Wrocław => Konsultant wdrożeniowy (systemy kontrolingowe) <=
- 2025-04-29 China => Production Coordinator / Representant Product Dev <=
- 2025-04-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-04-28 Hiszpania bez pradu
- 2025-04-28 chinska stal
- 2025-04-28 QR kody