STM32F100 - zhroucený SW

Ahoj, občas se ke mě dostane MCU, ve kterém neběží SW. Když jsem začal zjišťovat co mají za problém, přišel jsem na to, že je vymazanej blok flash paměti. Za cca 5 let a řekněme deset tisíc kusů naprogramovaných MCU je to tak u pěti kusů. Zařízení mají vymazaný čistě náhodný blok, běží v nich různé naprosto odlišné SW a jsou umístěné na všech různým místech a prostředích. Zápis do flash paměti je povolován pouze magic sekvencí a po každém zápisu je hned blokován. Lokální C u každé pinožky, několik globálních. HW byl ověřen ve zkušebně na EMC odolnost. Nesetkal jste se s tímto někdo? Dík

Zatím nesetkal. Ozvi se za 3 roky, to by jsme mohli mít tak 10K v oběhu :wink:

Nepoznám konkrétne Tvoju magic sekvenciu, no onehdá som používal niečo velice obdobné na ATmege ale len pre zápis do EEPROM. A tiež sa mi za velice že záhadných okolností veľmi zriedka stávalo, že sa tá EEPROM v nejakom bloku prepísala hausnumerami. No a nakoniec sa ukázalo, že sa jednalo o veľmi špecifickú situáciu kombinujúcu aktuálne bežiaci kód, kód v prerušení a ešte niečo, čo som v pude zebazáchovy rýchlo z hlavy vytesnil. No nebola to nejaká banálna chyba medzi stoličkou a klávesnicou.

To, že máš testy na EMC, neznamená z tohto pohľadu vôbec nič.
Také testy Ti vôbec nezaručia, že sa pri nich prejaví (a ani sa neprejavila) napríklad takáto zá(v/h)ada.

Regulátor pre riadenie kompenzačného rozvádzača spoľahlivo fungoval. U klienta dlhé mesiace. Akurát, že asi po roku prišiel klient s tým, že regulátor sa zasekol a došlo sa na to až keď prišla penalizačná faktúra z rozvodných závodov.

Regulátor jaloviny nikto celé týždne nekúma a nekontroluje, obzvláš keď sa jednalo o deväťdesiate roky minulého storočia.

Hláška z displeja - Err4. To znamenalo, že regulátor nemá vstupné napätie pre stanovenie fázového posunu účinníka. Dlhodobo.

Kurňa, jak že nemá vstupné napätie?! Veď zo vstupného napätia je po jeho usmernení a vyfiltrovaní celý regulátor napájaný. Akurát bol signál z pred usmerňovacej diódy zobraný pre vyhodnotenie vzájomnej fázy napätia a prúdu.
Po zapnutí a vypnutí zariadenia všetko fungovalo ako malo. Na reguláciu bola použitá AT89C4051.

Nakoniec mnohými rôznymi drastiskými testami sme dokázali navodiť stav, že sa v procesore zmenilo nastavenie pinu zo vstupného na výstupný.

A to po troch hodinách rôznych hara-kiri generovaných a injektovaných impulzov. Tento stav sme vedeli zopakovať, ale asi tak na každý stý krát testu.

Toto Ti v skúšobni môžu, ale tiež nemusia odhaliť.

A aby som prezradil aj pointu riešenia. Nakoniec pomohlo dať do série s daným pinom procesora sériový odpor 220R. Ten obmedzil injektované prúdy a odvtedy sa už daná porucha za cca 20 rokov neprejavila.

To nevymyslíš, to je život (vývojára / konštruktéra) :slight_smile:

No ak je to v Tvojom prípade jeden prípad na 2000ks a zariadenia už nie je v záruke, asi by som to skúmal iba do určitej hranice snahy. Najskôr by som asi skúmal, čo malo tých pár prípadov v prevádzke spoločné a zároveň rozdielne od ostatných.

Veľa šťastia, daj vedieť na čo si prišiel :slight_smile: