Skocz do zawartości

SAMD21, chip-erase i BOOTP


deshipu

Pomocna odpowiedź

Zapytam tutaj, bo może akurat ktoś będzie wiedział — kończą mi się generalnie opcje poszukiwania odpowiedzi samemu.

Otóż nabyłem sobie ostatnio w Mouserze garść takich mikrokontrolerów: ATSAMD21E18A-AU

Niestety, żeby ich można było rozsądnie używać, to najpierw trzeba wgrać bootloader — używam uf2-samd21, który jest bardzo przyjazny, bo pojawia się jako dysk USB i pozwala binarki do zaprogramowania po prostu skopiować na niego jako plik. No ale jak już mówiłem, trzeba go najpierw wgrać.

Do wgrywania używam chińskiego klona STLinkV2 oraz OpenOCD. Wygląda to mniej więcej tak:

source [find interface/stlink-v2.cfg]

adapter_nsrst_delay 100
adapter_nsrst_assert_width 100
adapter_khz 300
reset_config  srst_nogate
transport select hla_swd

set CHIPNAME at91samd21g18
set ENDIAN little
set CPUTAPID 0x0bc11477
source [find target/at91samdXX.cfg]

init
reset init

at91samd chip-erase
shutdown

A potem oczywiście:

program bootloader.bin verify reset
shutdown

I to działa tak mniej więcej dla połowy chipów. Druga połowa mówi:

auto erase enabled
Failed to erase row containing 00000000
SAMD: failed to erase sector 0 at 0x00000000
failed erasing sectors 0 to 31

Oczywiście to wina rejestru BOOTP, który chroni bootloader. Trzeba najpierw ten rejestr przestawić komendą:

at91samd bootloader 0

No i tutaj pojawia się mój problem. Po wydaniu tej komendy dostaję:

Failed to erase row containing 00804000
Couldn't erase user row

No i jestem ugotowany — nie mam jak tego chipa zaprogramować. Ma ktoś może przypadkiem jakiś pomysł jak to ugryźć? Z góry mówię, że szukałem, ale niestety mikrokontroler jest dość nowy i mało jest o nim informacji, a większość ludzi używa jakichś klikanych programów tylko dla Windowsa...

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.