-
Data: 2018-02-14 09:21:33
Temat: Re: Protokół dla bootloadera
Od: jacek pozniak <j...@f...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Marek wrote:
> On Mon, 12 Feb 2018 18:44:27 +0100, Bool <n...@n...com> wrote:
>> Możesz skrótowo napisać jak robiłeś to w przypadku z modemem GSM?
>
> Mcu przez stos tcpip modemu GSM pobiera sobie binarny plik obrazu
> firmware'u z serwera www. Stos większości modemów gsm umożliwia
> prostą komunikacje przez polecenia AT. Modem zestawia połączenie a
> mcu komendami AT wymienia sobie dane , można kawałeczkami pobrać
> sobie dowolnie duży plik. Kod pobierający nowy soft nie jest częścią
> bootloadera (bo byłby za duży) ale częścią softu użytkowego. W
> związku z tym, że soft użytkowy nie może się sam nadpisać (no, byłoby
> to klopotliwe, szczególnie gdyby np. połączenie zostało przerwane) to
> tymczasowo zapisuje pobrany obraz firmware'u w wolnym za sobą
> obszarze flash mcu (z pewnym marginesem) . Po wygraniu, robi reset po
> którym startuje bootloader, który sprawdza czy pod odpowiednim
> adresem jest obraz, jeśli jest kopiuje go pod docelowy adres
> nadpisując poprzedni firmware (i usuwa znacznik w tymczasowym obrazie
> by po kolejnym uruchomieniu nie kopiować ponownie). Tak w skrócie.
> Pominąłem takie szczegóły jak, to że pobierany firmware jest
> zaszyfrowany (klucz ma tylko bootloader i on deszyfruje dopiero przy
> docelowym nadpisywaniu), w trakcie pierwszego kopiowania do flash pod
> adres tymczasowy jest sprawdzane crc obrazu, by nie dopuścić do
> uruchomienia nieprawidlowego kodu itp.
> Aktualizacja ok 90kB obrazu pobieranego 256 bajtowymi paczkami po
> 9600bps uarcie mcu-modem trwa ok 4 min. Sama aktualizacja jest
> inicjowana smsem, komunikacja zwrotna w przypadku problemów z
> pobraniem pliku itp też jest smsem.
> Jeśli chodzi o szczegóły komunikacji to już to jest zależne od
> implementacji obsługi stosu w danym modemie, ja to ćwiczyłem na
> modułach G510.
>
Ale rozumiem, że musisz mieć ponad 2x więcej flasha niż rozmiar wgrywanego
kodu?
jp
--
www.flowservice.pl
www.flowsystem.pl
Następne wpisy z tego wątku
- 14.02.18 09:34 Marek
- 14.02.18 09:46 Marek
- 14.02.18 10:21 J.F.
- 14.02.18 10:52 cezar
- 14.02.18 12:59 jacek pozniak
- 14.02.18 15:01 Marek
- 14.02.18 16:05 Marek
- 14.02.18 18:17 Waldemar
- 14.02.18 18:18 jacek pozniak
Najnowsze wątki z tej grupy
- Problem z odczytem karty CF
- 74F vs 74HCT
- Newag ciąg dalszy
- Digikey, SN74CBT3253CD, FST3253, ktoś ma?
- Szukam: czujnik ruchu z możliwością zaączenia na stałe
- kabelek - kynar ?
- Podnieść masę o 0.6V
- Moduł BT BLE 5.0
- Pomiar amplitudy w zegarku mechanicznym
- ale zawziętość i cierpliwość
- Chiński elektrolizer tester wody
- Dzisiaj Bentlejem czyli przybieżeli sześciu Króli do Rysia na kasie
- ciekawy układ magnetofonu
- Mikroskop 3D
- Jak być bezpiecznym z Li-Ion?
Najnowsze wątki
- 2025-01-04 Katowice => Key Account Manager (ERP) <=
- 2025-01-03 Problem z odczytem karty CF
- 2025-01-03 Jazda z Warszawy do Krakowa teslą
- 2025-01-03 Wrocław => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-03 Warszawa => International Freight Forwarder <=
- 2025-01-03 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-01-03 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-03 Beztłumikowcy
- 2025-01-03 Lublin => Delphi Programmer <=
- 2025-01-03 Lublin => Programista Delphi <=
- 2025-01-03 [OT] nowe osoby w grupach?
- 2025-01-03 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-03 Warszawa => Developer .NET (mid) <=
- 2025-01-03 Katowice => Administrator IT - Systemy Operacyjne i Wirtualizacja <=
- 2025-01-03 Warszawa => DevOps Engineer <=