Wgrywanie Supli

Tomasz21
Posts: 102
Joined: Sun Feb 14, 2021 6:34 pm

Post

Pytanie odnośnie wgrywania Supli do urządzeń opartych o układy ESP. Oprogramowanie zapisywane jest w układzie EEPROM czy też jakaś część jego bezpośrednio wędruje do wbudowanej pamięci FLASH układu?
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Tomasz21 wrote: Mon Mar 22, 2021 8:12 am Pytanie odnośnie wgrywania Supli do urządzeń opartych o układy ESP. Oprogramowanie zapisywane jest w układzie EEPROM czy też jakaś część jego bezpośrednio wędruje do wbudowanej pamięci FLASH układu?
ESP8266 nie posiada wbudowanej pamięci trwałej. Do nich jest z reguły podłączona pamięć flash po interfejsie SPI.
ESP8266 nie ma też pamięci EEPROM. To co jest w Arduino IDE nazywane "EEPROM" to tylko programowa nakładka pozwalająca na zachowanie tego samego interfejsu w aplikacjach na Arduino IDE, ale ostatecznie zapis jest też robiny do flash.
Najlepsze suple dla Twojego domu :mrgreen:
Tomasz21
Posts: 102
Joined: Sun Feb 14, 2021 6:34 pm

Post

Ale chyba już ESP8285 ma już swój flash i dlatego moje pytanie było czy coś tam wędruje bezpośrednio podczas wgrywania? ;)
Bo jak nie i wszystko siedzi w EEPROM'ie to mogę sobie wrzucić bezpośrednio tam, bo czasem jest łatwiejsze fizyczne dojście do EEPROM'a niż do lutowania na płytce.
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Tomasz21 wrote: Mon Mar 22, 2021 10:42 am Ale chyba już ESP8285 ma już swój flash i dlatego moje pytanie było czy coś tam wędruje bezpośrednio podczas wgrywania? ;)
Bo jak nie i wszystko siedzi w EEPROM'ie to mogę sobie wrzucić bezpośrednio tam, bo czasem jest łatwiejsze fizyczne dojście do EEPROM'a niż do lutowania na płytce.
ESP8285 ma wbudowany flash (też po interfejsie SPI), więc w zadzie nie ma dużych różnic względem innych ESP8266.
Te układy nie posiadają EEPROM. Także nic tam z EEPROM-em nie zrobisz.

Programy są wgrywane do flasha. Jeśli program używa pamięci trwałej (jako system plików albo emulowany "EEPROM") to on też używa tej samej pamięci.
Najlepsze suple dla Twojego domu :mrgreen:
Tomasz21
Posts: 102
Joined: Sun Feb 14, 2021 6:34 pm

Post

Chyba od samego początku źle napisałem. :-) Pisząc EEPROM miałem na myśli osobną kość na której przechowywany jest program. Bo chyba spora część układów opartych o ESP posiłkuje się osobnym EEPROM'em na którym coś tam trzyma?
I teraz tak:
Wgrywając bin Supli po "serialu" wędruje on do pamięci flash układu ESP czy do o osobnej kości EEPROM'a? Czy może jakaś część do ESP a reszta do EEPROM?
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Tomasz21 wrote: Mon Mar 22, 2021 11:16 am Chyba od samego początku źle napisałem. :-) Pisząc EEPROM miałem na myśli osobną kość na której przechowywany jest program. Bo chyba spora część układów opartych o ESP posiłkuje się osobnym EEPROM'em na którym coś tam trzyma?
I teraz tak:
Wgrywając bin Supli po "serialu" wędruje on do pamięci flash układu ESP czy do o osobnej kości EEPROM'a? Czy może jakaś część do ESP a reszta do EEPROM?
Układ ESP8266 nie posiada żadnej pamięci trwałej. kropka ;)
Nie ma tam flasha, nie ma tam eepromu. Nic.

Do układów ESP8266 jest podłączona pamięć flash po interfejsie SPI. W układzie ESP8285 jest wbudowana pamięć flash również podłączona po interfejsie SPI. Więc nie ma tu zbyt dużej różnicy.

Programy wgrywany do ESP (po serialu, po OTA, ...) zawsze leci do tej kości flash po interfejsie SPI. W układach ESP8266 będzie to osobna kostka, a w ESP8285 zintegrowana. Poza tym z reguły nie ma żadnej innej pamięci dostępnej.
Najlepsze suple dla Twojego domu :mrgreen:
Tomasz21
Posts: 102
Joined: Sun Feb 14, 2021 6:34 pm

Post

Dzięki za cierpliwość. :-)

Faktycznie i dzięki za wyjaśnienie bo się zafiksowałem na układzie T25S80, że to jest kość EEPROM. :-D

To ostatnie pytanie :-)

Czy wgrywając bezpośrednio do np T25S80(SPI Flash memory) osiągnę ten sam efekt jak przy metodzie serial/OTA?
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Tomasz21 wrote: Mon Mar 22, 2021 11:47 am Dzięki za cierpliwość. :-)

Faktycznie i dzięki za wyjaśnienie bo się zafiksowałem na układzie T25S80, że to jest kość EEPROM. :-D

To ostatnie pytanie :-)

Czy wgrywając bezpośrednio do np T25S80(SPI Flash memory) osiągnę ten sam efekt jak przy metodzie serial/OTA?
Wgrywając do serialu i do bezpośrednio do kostki pamięci możesz uzyskać taki sam efekt. Tymi sposobami możesz nadpisać całą pamięć flash (włącznie z bootloaderem i innymi obszarami używanymi przez ESP). Natomiast wgrywając OTA z reguły to wygląda tak, że w ramach pamięci flash są wydzielone dwa obszary pamięci na aplikację, powiedzmy A i B. Gdy aktualny program jest uruchomiony z obszaru A, to wgrywając OTA, program jest ładowany do obszaru B i następnie bootloader ładuje aplikację z tego obszaru. Także domyślnie po OTA nadpisujesz tylko pamięć aplikacji, a nie ruszasz bootloadera i innych obszarów.
Najlepsze suple dla Twojego domu :mrgreen:
Tomasz21
Posts: 102
Joined: Sun Feb 14, 2021 6:34 pm

Post

Dzięki za obszerne wyjaśnienia. :-) Teraz mogę ruszać ze swoim tematem. :-D

Return to “Ogólna dyskusja”