Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

LPC111x - własny bootloader, czy da się?

Szymon Tarnowski 08 Maj 2014 23:05 1047 8
  • #1 08 Maj 2014 23:05
    Szymon Tarnowski
    Poziom 27  

    Analizuję możliwość przejścia z 8bitowych PICów na 32bitowe ARMy dla nowych projektów. LPC111x wydają być niezłą alternatywą. Podczas analizy możliwości, zauważyłem w datasheecie że procesory "podstawowe" (bez literki L) nie mają możliwość kasowania stron pamięci FLASH, czy to oznacza że dla tych wersji nie można napisać własnego bootloadera? Akurat jest to dość krytyczne w moich projektach, a dopiero poznaję tą rodzinę.

    0 8
  • #2 08 Maj 2014 23:22
    mickpr
    Poziom 39  

    LPC111x mają wbudowany bootloader. Od tego zacznijmy.
    Programuje się je przez UART programem Flash Magic.


    http://mikrokontrolery.blogspot.com/2011/04/arm-lpc1114-podlaczenie.html
    https://www.elektroda.pl/rtvforum/topic2258478.html

    Szymon Tarnowski napisał:
    procesory
    raczej mikrokontrolery :)

    Co do własnego bootloadera:
    http://www.nxp.com/products/microcontrollers/...m0_m0/lpc1100/LPC1114FBD48.html#documentation

    AN10995 - LPC1100 secondary bootloader (with software)

    0
  • #3 08 Maj 2014 23:43
    Szymon Tarnowski
    Poziom 27  

    mickpr napisał:
    LPC111x mają wbudowany bootloader. Od tego zacznijmy.
    Programuje się je przez UART programem Flash Magic.
    To już wiem, nie chcę korzystać z wbudowanego bootloadera, potrzebuję mieć własny. Tak wiem że stracę trochę FLASH'a, ale to nie jest istotą pytania. Istotą pytania jest następujący zapis w datasheecie: – LPC1100XL series only: page erase IAP command. Z tego co zrozumiałem IAP to rodzaj api zaszytego w ROM'ie. Jak znam różne procesory wymazanie strony FLASH to wywołanie kilku instrukcji i nie wymaga jakiegoś wymyślnego algorytmu. Czy to oznacza że nie da się tego zrobić w zwykłej wersji? Skoro nie da się wykasować strony FLASH z poziomu kodu, to znaczy że kod użytkownika nie może skutecznie modyfikować pamięci FLASH, a zatem nie da się zrobić własnego bootloadera.

    Już zagłębiam się w ten "secondary bootloader".

    0
  • #4 08 Maj 2014 23:47
    mickpr
    Poziom 39  

    Szymon Tarnowski napisał:
    LPC1100XL series only
    Oznacza to, że ponad całą rodzinę LPC11xx to właśnie LPC1100XL ma DODATKOWO możliwość kasowania stron.
    P.S. Gdzieś miałem nawet bootloader via I2C dla LPC1114, musiałbym poszukać.

    0
  • #5 08 Maj 2014 23:52
    Szymon Tarnowski
    Poziom 27  

    mickpr napisał:
    Szymon Tarnowski napisał:
    LPC1100XL series only
    Oznacza to, że ponad całą rodzinę LPC11xx to właśnie LPC1100XL ma DODATKOWO możliwość kasowania stron.
    Tak to jest istota mojego pytania. Skoro to jest opcja "dodatkowa" to znaczy że zwykłe wersje nie mają możliwości kasować strony pamięci FLASH?

    0
  • #6 09 Maj 2014 00:03
    mickpr
    Poziom 39  

    Jedne mają, inne nie. Informacja o tym jest w tabeli nr 369 z User manual UM10398 strona 413 (jeśli chodzi o serię LPC11xx).

    0
  • #7 09 Maj 2014 00:15
    Szymon Tarnowski
    Poziom 27  

    mickpr napisał:
    Jedne mają, inne nie. Informacja o tym jest w tabeli nr 369 z User manual UM10398 strona 413 (jeśli chodzi o serię LPC11xx).
    Ja mam wrażenie że mówimy innymi językami.
    Ja zadaję pytanie o to jaki wniosek wynika z faktu X, a Ty mi piszesz że fakt X jest opisany na stronie Y i dotyczy procesorów Z. Ja widzę ten opis i według niego nie potrafię sam siebie przekonać o tym czy ta różnica między procesorami wpływa jakoś na możliwość używania własnego bootloadera czy nie.

    0
  • Pomocny post
    #8 09 Maj 2014 00:28
    mickpr
    Poziom 39  

    Szymon Tarnowski napisał:
    czy ta różnica między procesorami wpływa jakoś na możliwość używania własnego bootloadera czy nie
    Wpływa. Bootloader dla LPC-ków nie posiadających tej funkcji nie może jej używać, ale oprócz kasowania strony jest jeszcze kasowanie sektorów.
    W przeciwnym wypadku nie było by żadnego bootloadera (w szczególności żadnego softwareowego) - czy to nie logiczne?

    0
  • #9 09 Maj 2014 09:00
    Szymon Tarnowski
    Poziom 27  

    mickpr napisał:
    Szymon Tarnowski napisał:
    czy ta różnica między procesorami wpływa jakoś na możliwość używania własnego bootloadera czy nie
    Wpływa. Bootloader dla LPC-ków nie posiadających tej funkcji nie może jej używać, ale oprócz kasowania strony jest jeszcze kasowanie sektorów.
    No i to jest odpowiedź na moje pytanie.

    0