Money.plTechnologie dla biznesu Grupy dyskusyjne pl.misc.elektronika gcc i crc w hex

gcc i crc w hex

gcc i crc w hex

Sebastian Biały <h...@poczta.onet.pl> / 2013-03-22 11:44:13
Takie proste (?) zadanie: jest program na uC. Program posiada magiczne
miejsce pod koniec pamięci Flash w którym chciałbym zmiescić crc całej
reszty flasha. Potrzebuje to w celu werfyfikacji przez bootloader
poprawności reszty kodu.

Idealnie było by aby skrypt linkera gcc byl w stanie w momencie
linkowania policzyć mi CRC[16|32] i wstawić to pod koniec Flash.
Pytanie: czy bez udzialu narzędzi zewnętrznych ktokolwiek widział
podobny bajer? Idealne rozwiązanie to posługiwanie się wyłącznie
narzędziami gcc.
 
Czytaj także na forum

Re: gcc i crc w hex

Jakub Rakus <s...@op.pl> / 2013-03-22 22:58:12
W dniu 22.03.2013 11:44, Sebastian Biały pisze:
> Takie proste (?) zadanie: jest program na uC. Program posiada magiczne
> miejsce pod koniec pamięci Flash w którym chciałbym zmiescić crc całej
> reszty flasha. Potrzebuje to w celu werfyfikacji przez bootloader
> poprawności reszty kodu.
>
> Idealnie było by aby skrypt linkera gcc byl w stanie w momencie
> linkowania policzyć mi CRC[16|32] i wstawić to pod koniec Flash.
> Pytanie: czy bez udzialu narzędzi zewnętrznych ktokolwiek widział
> podobny bajer? Idealne rozwiązanie to posługiwanie się wyłącznie
> narzędziami gcc.

Hmm, jeśli to byłby jakiś PIC to MPLAB pokazuje CRC kodu wrzucanego do
flasha, więc można sobie je łatwo "przepisać". Może jakieś (może nawet
to co używasz) IDE, w którym klepie się programiki pod AVRy też ma taką
funkcję?
O gotowcach do gcc do czegoś takiego nie słyszałem, ale może nie byłoby
takie trudne samemu napisać prosty skrypcik? Tylko jedna wątpliwość -
czemu w momencie linkowania? Zdaje mi się, że chyba
najlepiej/najprościej policzyć crc z tego co będzie w wynikowym hexie i
dodać to po prostu do niego na końcu.

--
Pozdrawiam
Jakub Rakus
 

Re: gcc i crc w hex

"mw_wawa" <x...@x.x> / 2013-03-22 22:58:48
"Sebastian Bialy" schrieb
> Takie proste (?) zadanie: jest program na uC. Program posiada magiczne
> miejsce pod koniec pamieci Flash w którym chcialbym zmiescic crc calej
> reszty flasha. Potrzebuje to w celu werfyfikacji przez bootloader
> poprawnosci reszty kodu.
>
> Idealnie bylo by aby skrypt linkera gcc byl w stanie w momencie
> linkowania policzyc mi CRC[16|32] i wstawic to pod koniec Flash.
> Pytanie: czy bez udzialu narzedzi zewnetrznych ktokolwiek widzial
> podobny bajer? Idealne rozwiazanie to poslugiwanie sie wylacznie
> narzedziami gcc.

Napisac program ktory policzy crc pliku i wpisze do niego wynik
(jak rozumiem) to w sumie banalne zadanie. Mozesz sie posluzyc
gcc oczywiscie.

Wbicie wywolania tego programu w makefile no to bedzie 1 linijka
w pliku tekstowym.

Pamietam jak sam w winavr cos meczylem. Mnie z kolei naszlo
zeby avrdude po linkowaniu wywolywac. No i dalo sie bez problemu.

mw

 

Re: gcc i crc w hex

Sebastian Biały <h...@poczta.onet.pl> / 2013-03-22 23:50:56
On 2013-03-22 22:58, Jakub Rakus wrote:
> Hmm, jeśli to byłby jakiś PIC to MPLAB pokazuje CRC kodu wrzucanego do
> flasha, więc można sobie je łatwo "przepisać".

*ZAUTOMATYZOWAC* chciałbym.

> O gotowcach do gcc do czegoś takiego nie słyszałem, ale może nie byłoby
> takie trudne samemu napisać prosty skrypcik?

jesli takowe narzedzie znajduje się w gcc to wole o tym wiedzieć zanim
przywiąże się do jakiegoś języka.

> Tylko jedna wątpliwość -
> czemu w momencie linkowania?

Bo wtedy w elfie mam to samo co w hex, ale wygodniej, tzn mogę te kilka
bajtów ustawić dokładnie w pamięci tam gdzie chcę - poprzed dodatkową
sekcję.
 

Re: gcc i crc w hex

Sebastian Biały <h...@poczta.onet.pl> / 2013-03-22 23:51:43
On 2013-03-22 22:58, mw_wawa wrote:
> Napisac program ktory policzy crc pliku i wpisze do niego wynik
> (jak rozumiem) to w sumie banalne zadanie. Mozesz sie posluzyc
> gcc oczywiscie.

Ja wiem. To dalej jest workaround.
 
wstecz
1 2
"Profesor" 2012-06-22 13:26
"Profesor" 2012-06-21 08:59
Grzegorz_Brzęczys... 2012-03-30 21:06
Michał Lankosz 2012-02-12 19:02
"Bodzio SE" 2011-06-01 18:29
"Andrzej" 2011-03-23 14:26
współpraca