ATmega328P vs PB a samovolny prepis flash a EE pri zarus.clk
Moderátor: Moderátoři
ATmega328P vs PB a samovolny prepis flash a EE pri zarus.clk
Ty Atmely me neprestavaji prekvapovat. Zvazuju v jednom projektu nahradu ATmega328P za novejsi ATmega328PB (zejmena kvuli cene a dobe dodani, nepotrebuju nove funkce), dostal sem 3ks vzorku (primo od MCP, zadna Cina) na otestovani a rikal sem si, ze vyzkousim i novou funkci CFD (STMka to uz maji davno). Tak sem zapnul prislusny fuse bit a pri nastaveni XFDIF flagu sem si nahodil nejaky cyklicky ladici vypis na UART. Pustil sem program a pinzetou parkrat sahnul na xtal-in nohu abych navodil vypadek hodin. V terminalu na me vypadl nejaky chaos znaku a konec, procesor se uz nenahodil, prepnul sem baudrate na nizsi rychlost odpovidajici safe mode RC osc. a proste nic. Tak sem ho resetnul a k memu prekvapeni program skocil do bootloaderu protoze doslo k chybe CRC hlavniho programu. Tak jsem to preprogramoval a zkusil znovu a zase po par sahnuti na xtal jsem program dokoanle zadrel. Dokonce mi nedalo moc prace poskodit i bootloader. Kdyz sem si vytahl dump Flash a EE, byly tam evidentne prepsane casti app i boot. dokonce i v EEPROM byly nake nahodne Byte, ktere se tam nemely normalne jak zapsat. No a nejlepsi je, ze kdyz sem ten CFD fuse vypnul, tak se to chovalo dost podobne, neustale dochazelo k rozbiti flash. Sahnul jsem po stare desce s MCU ATmega328P a tam k nicemu takovemu nedochazi, po dotyku xtal-in se nanejvys zastavi nebo resetuje program, ale zadny prepis. Nesetkal se s tim nekdo u novo rady PB?
Jeste doplnim, napajeni je 3.3V, xtal 8MHz a zkousel sem i zapnout brownout 2.7V. Behem normalniho chodu programu se do flash ani EE nezapisuje.
UPDATE: podrobnejsi info sem hodil na web http://rayer.g6.cz/programm/programm.ht ... APB_XO_BUG
Jeste doplnim, napajeni je 3.3V, xtal 8MHz a zkousel sem i zapnout brownout 2.7V. Behem normalniho chodu programu se do flash ani EE nezapisuje.
UPDATE: podrobnejsi info sem hodil na web http://rayer.g6.cz/programm/programm.ht ... APB_XO_BUG
Naposledy upravil(a) RayeR dne 29 říj 2019, 17:24, celkem upraveno 1 x.
Zkoušel jsem to na desce ATmega328PB Xplained Mini (kterou jsem dostal). Ale měl jsem jako zdroj hodin "Ext. clock", takže jsem výpadek simuloval mnohem míň drasticky. Fungovalo to podle popisu, prostě se nahodil příslušný bit v XFDCSR registru. Program byl nekonečná smyčka, při nastaveném bitu se rozsvítila LEDka, co je na desce. Přes přerušení jsem to nezkoušel. S tím UARTem mě napadá, jestli při běhu na interní oscilátor už nebyla příliš velká chyba generátoru hodin (UBRR).
Závěr byl "hmm, funguje to, dobrý". Dál jsem to nezkoumal. Někde má Microchip ke stažení "App Notes", podle kterého jsem to zkoušel.
Závěr byl "hmm, funguje to, dobrý". Dál jsem to nezkoumal. Někde má Microchip ke stažení "App Notes", podle kterého jsem to zkoušel.
To už bohužel nezkusím, neb jsem z toho vyrobil levný debugger:
http://www.elektromys.eu/clanky/avr_deb ... lanek.html
U Farnella deska stojí kolem 250,-
http://www.elektromys.eu/clanky/avr_deb ... lanek.html
U Farnella deska stojí kolem 250,-
- ZdenekHQ
- Administrátor
- Příspěvky: 25593
- Registrován: 21 črc 2006, 02:00
- Bydliště: skoro Brno
- Kontaktovat uživatele:
Tak ho ještě zkus zamknout a tímto postupem odemknout (klidně s chybou), zveřejni to a nebudeš se stačit divit. ![Very Happy :D](./images/smilies/icon_biggrin.gif)
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
Ha, kdyz do flashky nenapalim bootloader obsahujici SPM instrukci, tak to vypada, ze se fleska nezkorupti. Ale porad pri tuknuti pinzetou na xin program ruzne bloudi, takze muze vykonat nejakou osklivou vec, treba nahodny zapis do EEPROM - to se mi ted take povedlo (delam prubezne dumpy pameti). Vypada to, jako kdyby pri tom dotyku nasledoval JMP na uplne nahodnou adresu programu...
UPDATE: Tak ten CFD nejak funguje, kdyz se pinzetou napred dotknu zeme a pak az Xin, tak se to spravne prepne na RC 1MHz, ale kdyz jako prvni sahnu na xin a naindukuju ruseni, tak je to v prdeli... Tak to si muzou cely CFD nacpat...
UPDATE: Tak ten CFD nejak funguje, kdyz se pinzetou napred dotknu zeme a pak az Xin, tak se to spravne prepne na RC 1MHz, ale kdyz jako prvni sahnu na xin a naindukuju ruseni, tak je to v prdeli... Tak to si muzou cely CFD nacpat...
https://forum.arduino.cc/index.php?topic=360407.15RayeR píše:Tak to si muzou cely CFD nacpat...
" imo this chip is a piece of crap."
Když Atmela požral Microchip, jaký by měl dál důvod si udržovat schizofrenní sortiment.
No myslím že s výpadkem hodin při použití krystalu se moc nepočítá. Na rozdíl od externího zdroje.
Trochu smutný je pohled na Errata, není tam toho zas tak málo.
Řekl bych že důvodem bude velká uživatelská (nebo jak to napsat) základna. Naopak mi přijde, že sérii AVR dál rozšiřuje. Např. Attiny416 a nový Event systém a CCL.Crifodo píše: Když Atmela požral Microchip, jaký by měl dál důvod si udržovat schizofrenní sortiment.
Trochu smutný je pohled na Errata, není tam toho zas tak málo.
Otázka je, co se děje v Microchipu poslední dobou... Já jsem odjakživa spíš PICař (nic proti ničemu ostatnímu), s PICy jsem začínal a můžu říct, že starší typy bývaly daleko víc odladěné než jsou ty nové - například pohled na Errata sheet takového PIC18F26K22 nebo PIC24FJ64GA002 je také poměrně dosti dlouhé čtení. Ale nestěžujme si, snad se zas polepší a vychytají to... nezbývá než doufat.
No potes, tak oni to maj jebnuty uz tak dlouho a nevydali zadnou opravenou revizi a v errata taky nic. A to je prosim automotive grade cip (ta verze, kterou testuju). Na tom foru resi spis full swing oscillator (koukam, ze uz snad zadny novy AVR FSO nema), na starsi P verzi se mi to chovalo mravne i bez FSO, proste se program jen zastavil, ale zadny nahodny skok. Poslal sem MCP bugreport, ale zatim se pouze dohaduju s nejakym Indem, abych mu vysvetlil, co po nem vlastne chci, je to marny, je to marny...Crifodo píše: https://forum.arduino.cc/index.php?topic=360407.15
" imo this chip is a piece of crap."
Když Atmela požral Microchip, jaký by měl dál důvod si udržovat schizofrenní sortiment.
Jinak mi ale nepripada, ze by se MCP snazil zabit radu AVR, naopak vydali pomerne hodne novych AVRek od tiny po megy s novyma funkcema. Ale co je to na plat, kdyz se clovek nemuze spolehnout na tak zakladni vec, jako oscilator. Treba STM32 ma proti Atmelu errata docela nabity, ale zas tam nejsou takovyhle fundamentlani faily...
Hm, tak zatim jedine, na co se zmohla indicka podpora MCP je citace z DS:
“Crystal Oscillator is a low-power oscillator, with reduced voltage swing on the XTAL2 output. It gives the lowest power consumption, but is not capable of driving other clock inputs, and maybe more susceptible to noise in noisy environments.”
Hence, Low-Power Crystal Oscillator is not advisable for noisy environments.
“Crystal Oscillator is a low-power oscillator, with reduced voltage swing on the XTAL2 output. It gives the lowest power consumption, but is not capable of driving other clock inputs, and maybe more susceptible to noise in noisy environments.”
Hence, Low-Power Crystal Oscillator is not advisable for noisy environments.
- ZdenekHQ
- Administrátor
- Příspěvky: 25593
- Registrován: 21 črc 2006, 02:00
- Bydliště: skoro Brno
- Kontaktovat uživatele:
U jiného obvodu používám uzemnění krystalu přes jumper, protože je to jediná metoda,jak ho na chvilku zastavit, aby mně nekecal do programování periferní EEPROM (nemá reset), ale určitě se nikdy nestalo, že by program zabloudil. Kde skončí, tam pokračuje. A je sakra low-power.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
- ZdenekHQ
- Administrátor
- Příspěvky: 25593
- Registrován: 21 črc 2006, 02:00
- Bydliště: skoro Brno
- Kontaktovat uživatele:
Jo, podobný pokusy jsem zkoušel, protože chlap tvrdil, že mu SW blbne, až jsem zjistil, že blbne on a páchá v SW příšerný věci. Od té doby svůj SW přede mnou víceméně tají a jen o něm vypráví... ![Very Happy :D](./images/smilies/icon_biggrin.gif)
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]