-
Data: 2023-02-17 21:08:01
Temat: Re: C++ ośla łączka
Od: Piotr Gałka <p...@c...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2023-02-17 o 02:28, JDX pisze:
> Sugeruję jednak zapoznanie się ze skryptami linkera - zakładam, że
> używacie GNU toolchaina.
Nie mam pojęcia czego używamy. To nie na temat - wiem, że teraz brat
przełącza się często między dwoma komputerami. Na jednym Win7 i jakaś
stara wersja środowiska (kojarzy mi się, ze mówił, że czwarta) w której
jest ileś rzeczy, które mu są potrzebne i drugi Win10 na którym nowa
wersja (piata?) środowiska (bo wymaga WIN10) w której jest z kolei coś
innego co jest mu potrzebne, ale brakuje tego czegoś, co było w starym.
Nie umiem dokładniej bo jak mi miesiąc czy dwa temu o tym mówił to nie
starałem się zapamiętać o co biega.
> W sieci jest mnóstwo przykładów jak odczytać
> adres początku danej sekcji, jej końca, jej długość i jak wyeksportować
> te dane do linkowanego programu.
>
> Hint: Można sobie zdefiniować sekcję i umieścić w niej tylko jedną funkcję.
Brat mówił, że większość rozwiązań opiera się na wymuszaniu na linkerze
jakichś działań, ale nie chce się w to bawić. Na dziś przyjął, że
napisze tę funkcję (chyba 10 bajtów) w assemblerze i wtedy będzie
dokładnie znał jej rozmiar.
Widział też jakieś rozwiązania polegające na tym, że kawałek kodu ląduje
na stałe w RAMie. Tylko jakoś tak (nie wiem czy uzasadnienie) bardziej
wierzę, że po 10 latach procedura we flashu nadal jest jaka była, a czy
jakieś zakłócenie nie naruszy w tym czasie RAMu...
> To podstawy:
> https://developer.arm.com/documentation/ka002971/lat
est
> https://stackoverflow.com/questions/37004954/functio
n-address-in-arm-assembly-have-one-byte-offset
>
> Przy czym należy dodać, że Corteksy M (M-profile) wspierają tylko zestaw
> instrukcji Thumb/Thumb-2, a ten nieszczęsny bit został tam zapewne
> dlatego, że ,,duże ARM-y" (A-profile i R-profile) oprócz zestawu Thumb
> wspierają też zestaw instrukcji ARM.
>
To nasze (a właściwie mojego brata) pierwsze podejście do więcej niż
8-bitowych procesorów (ja nigdy nic na mikrokontrolery nie pisałem).
Właściwie to drugie podejście bo w grudniu już jedno urządzenie na
EFM32HG309F64G-C-QFN24 wypuściliśmy.
Na razie zostało nam kilkanaście (tymczasowo) zablokowanych urządzeń bo
nie umiemy jeszcze komunikować się z nimi po interfejsie Debug.
Skorzystaliśmy z ich defaultowego Bootloadera udającego RS232 na USB
przez który ładowaliśmy nasz bootloader (niszcząc ich) i pod nim
ładowaliśmy pierwszy program jako upgrade.
P.G.
Następne wpisy z tego wątku
- 17.02.23 21:21 Piotr Gałka
- 17.02.23 21:35 Piotr Gałka
- 17.02.23 22:09 Grzegorz Niemirowski
- 17.02.23 23:06 Grzegorz Niemirowski
- 17.02.23 23:58 heby
- 18.02.23 09:11 J.F
- 19.02.23 12:14 JDX
- 19.02.23 12:29 Marek
- 20.02.23 13:51 Zbych
- 20.02.23 13:57 Grzegorz Niemirowski
- 20.02.23 14:05 Zbych
- 22.02.23 11:44 Piotr Gałka
- 22.02.23 13:02 Piotr Gałka
- 22.02.23 13:16 heby
- 22.02.23 13:28 Piotr Gałka
Najnowsze wątki z tej grupy
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
Najnowsze wątki
- 2025-03-11 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-03-11 Łódź => System Administrator (Linux, Active Directory) <=
- 2025-03-10 roaming
- 2025-03-10 wodor
- 2025-03-10 Ostrów Wielkopolski => NodeJS Developer <=
- 2025-03-10 Białystok => System Architect (background deweloperski w Java) <=
- 2025-03-10 Częstochowa => Backend Developer (Node + Java) <=
- 2025-03-10 Poznań => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produkc
- 2025-03-10 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-03-10 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-10 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-10 Szczecin => Key Account Manager IT <=
- 2025-03-10 Warszawa => Node.js / Fullstack Developer <=
- 2025-03-10 Warszawa => Data Engineer (Tech Leader) <=
- 2025-03-10 Gliwice => Business Development Manager - Network and Network Security