Update PIC po zbernici

Všetko čo sa týka mikropočítačov + Sekcia Arduino

Moderátori: psichac, Moderátori

KECOnaj
Okoloidúci
Okoloidúci
Príspevky: 10
Dátum registrácie: 13 Máj 2014, 15:26
Bydlisko: Lysá pod Maktytou

Update PIC po zbernici

Príspevok od používateľa KECOnaj » 12 Jan 2021, 14:41

Ahojte,
rozmýšľam si vytvoriť nejaké moduly ktoré budú komunikovať po zbernici rs485. Všetky budú ako slave a jeden master bude z/do nich vyčítavať/zapisovať. Moduly by som chcel založiť na nejakom PIC. Len ma napadla myšlienka, že ak by som chcel niekedy v budúcnosti urobiť update modulov, ako by sa to dalo riešiť? Je nejaká možnosť ako to vymyslieť po zbernici? (Poprípade, nejaká iná zbernica, poprípade iný typ mikrokontroléra).
0

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 1946
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 24

Re: Update PIC po zbernici

Príspevok od používateľa maskrtnik01 » 12 Jan 2021, 14:50

Nepoznám PICka, ale inšpiroval by som sa arduino bootloaderom. Ten je síce pre uart, ale dôležitejšie je to, že dokáže update flash podľa dát, ktoré prídu po komunikačnom rozhraní. Ktoré rozhranie to bude, je už na implementácii bootloadera.
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2083
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 54
Kontaktovať používateľa:

Re: Update PIC po zbernici

Príspevok od používateľa peterple » 12 Jan 2021, 14:55

Na zbernici nezáleží. Potrebuješ procesor ktorý vie robiť tzv self programing. Vedia to PIC aj AVR
Pre PIC napr. tu
http://ww1.microchip.com/downloads/en/A ... 00750a.pdf
Pre avr. celé arduino je na tom postavené.
S problematikou ešte úzko súvisí pojem bootloader.
Bootloader je to čo si musiš v tvojom prípade napísať sám. Alebo pohľadať už hotové pre vybratý typ zbernice a komunikačný protokol.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

KECOnaj
Okoloidúci
Okoloidúci
Príspevky: 10
Dátum registrácie: 13 Máj 2014, 15:26
Bydlisko: Lysá pod Maktytou

Re: Update PIC po zbernici

Príspevok od používateľa KECOnaj » 12 Jan 2021, 15:29

Ďakuje, myslím že ste mi ukázali správny smer a čo hľadať :agree:
0

pocitujlasku
Ultimate člen
Ultimate člen
Príspevky: 5245
Dátum registrácie: 20 Júl 2007, 00:00
Bydlisko: Poprad
Vek: 37

Re: Update PIC po zbernici

Príspevok od používateľa pocitujlasku » 12 Jan 2021, 15:43

pozri, ako to ma riesene esp8266. zakladna podmienka je mat volnych viac ako 50% v ulozisku. princip je taky, ze sa stiahne novy fw, ulozi sa a po restarte sa vykona self programming, resp. sa prepise program v eeprom tym novym fw.
0
Jedním z největších projevů nedůvěry v Boha je hromosvod na kostele.

Používateľov profilový obrázok
mac26
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1184
Dátum registrácie: 01 Feb 2010, 00:00
Bydlisko: Martin

Re: Update PIC po zbernici

Príspevok od používateľa mac26 » 12 Jan 2021, 18:38

Zaujimave by bolo urobit nieco ako A/B particie. V polke pamate je aktualny program, do druhej sa vie za behu nahrat novy a na zaciatok pamate dat len skok na spravne miesto. Pri najblizsom starte sa spusti ten spravny program. A za urcitych okolnosti by sa mohol prepnut aj bez restartu, resp. len s nejakym ciastocnym.
0

maskrtnik01
Ultimate člen
Ultimate člen
Príspevky: 1946
Dátum registrácie: 20 Júl 2010, 00:00
Bydlisko: okolie KE
Vek: 24

Re: Update PIC po zbernici

Príspevok od používateľa maskrtnik01 » 12 Jan 2021, 18:49

Ja si myslím, že to komplikujete. Prvé by som skúsil obyčajný bootloader na štýl arduina.
Ak to nepôjde, potom skúsiť verziu podobne ako espčko.
A ak by zázrakom ani to nezabralo, potom špekulovať nad nejakými divočinami.

V prípade wifi updatu chápem použitý princíp, bootloader by inak musel mať celý tcp/ip stack. V prípade primitívnych zberníc ako rs232 na to nevidím dôvod.
0

pocitujlasku
Ultimate člen
Ultimate člen
Príspevky: 5245
Dátum registrácie: 20 Júl 2007, 00:00
Bydlisko: Poprad
Vek: 37

Re: Update PIC po zbernici

Príspevok od používateľa pocitujlasku » 12 Jan 2021, 20:06

maskrtnik: je to jednoduche, ked ti zlyha prenos nic sa nedeje, lebo fw sa aktualizuje az ked je cely stiahnuty. v pripade rs232 ak ti pocas nahravania padne spojenie, tak mas nefunkcny system a v lepsom pripade to vies poslat este raz.
0
Jedním z největších projevů nedůvěry v Boha je hromosvod na kostele.

peterple
Ultimate člen
Ultimate člen
Príspevky: 2083
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 54
Kontaktovať používateľa:

Re: Update PIC po zbernici

Príspevok od používateľa peterple » 12 Jan 2021, 20:51

Samozrejme že to viem poslať ešte raz. Aj 100x. Žiadnych 50% volných v úložisku (to je čo pri čistom MCU?) nepotrebujem. Nepotrebujem ani úložisko. Jediné čo potrebujem je dobre napísaný bootloader.
Tento napríklad podporuje aj AES šifrovanie.
http://ww1.microchip.com/downloads/en/A ... 02462A.pdf
Vďaka tomu som schopný updajtnúť masinu aj v číne bez toho aby mi šlohli fw len blbím odpočúvnutím komunikácie.
Sú k tomu zdrojáky pre AVR rodinu a aj pre PC. Sám som si napísal uploader do android aplikácie a tak to viem updatovať cez mobil a bt modul. Mám to upravené aj pre RS485. Viem navaliť sw do hocijakého uzla. Komplet užívatelskú flash. Pri poruche spojenia sa na to príde úplne vidlácky pomocou timeoutu. Potom to reštartne bootloader a čaká sa na nový upload. Je to samozrejme chránene aj kontrolnou sumou. Takže ak nesedí, bootloader signalizuje chybu uploadu a ostane sa trčať v ňom a opäť sa čaká na nový upload. Aj keď sa to vypne, tak pri novom zapnutí opäť bootloader zistí že nesedí kontrolná suma a zostane sa trčať tam a čaká sa na nový upload.
Sú to jednoduché MCU bez file systémov a naozaj to nie je potrebné veľmi komplikovať. Pokiaľ to teda nechcete nasadiť do Mochoviec.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

Používateľov profilový obrázok
lucky62
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1110
Dátum registrácie: 14 Feb 2012, 20:16
Bydlisko: Liptovský Mikuláš, SK

Re: Update PIC po zbernici

Príspevok od používateľa lucky62 » 13 Jan 2021, 17:08

Len malý dodatok k téme...
Otázka je, či zariadenie má byť možné naprogramovať kedykoľvek, bez potreby akejkoľvek predchádzajúcej prípravy. T.j. pri behu normálneho programu.
Alebo či treba na naprogramovanie urobiť nejakú operáciu (napr. reset so stlačeným tlačidlom - boot do bootlodera).
Záleží od požiadaviek... A potom je tu ešte OTA (Over The Air) update ... :-)
0
....môj bazar....

...Nikdy sa nehádaj s blbcom...

peterple
Ultimate člen
Ultimate člen
Príspevky: 2083
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 54
Kontaktovať používateľa:

Re: Update PIC po zbernici

Príspevok od používateľa peterple » 13 Jan 2021, 18:31

Toto je len veľmi drobný, implementačný detail. Z užívateľskej sekcie sa dá hocikedy skočiť do bootloaderu, takže tam kludne môže byť príkaz ktorý diaľkovo inicializuje update firmware. Čo je samozrejme pohodlné ak je modul niekde neprístupný. Samozrejme tu ale potom hrozí to že pri nahratí chybného fw sa už táto funkcia nedá aktivovať. To sa zase rieši tak že bootloader čaká nejaký čas po reštarte na update. A aj neprístupné zariadenie sa zvyčajne dá vypnúť a znova zapnúť. Všetko je to riešitelné a na začiatku som to zhrnul do jediného bodu - dobre napísaný bootloader.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

Napísať odpoveď