Re: Ako dostať kód z arduina
Napsal: 07 bře 2019, 18:34
Tak beru zpět tvrzení, že po zrušení LOCK bitu se smaže program. Program v paměti zůstane, ale nepůjde zkopírovat.
Takže je to takhle:
Nastavení LOCK bitů je možné zjistit pomocí programu AVRDUDE přes příkazovou řádku, nebo pomocí nějaké grafické nadstavby.
Já používám AVRDUDESS.
Když se procesor připojí přes ISP programátor (třeba USBasp, nebo druhé Arduino) je možné v AVRDUDESS stav LOCK bitů načíst tlačítkem Read, vedle políčka označeného jako LB.
Odemčený, nebo uzamčený procesor se pozná podle kódu vedle nápisu LB po stisku tlačítka Read
Vysvětlení konkrétních kódů je dostupné po stisku tlačítka Bit Selector.
Napřiklad v mém případě kód 0x3F znamená odemčený procesor.
Když je procesor odemčený, je možné jeho obsah zkopírovat do souboru. Na obrázku níže jsem ten soubor nazval "d:\flsh.hex".
Obsah toho souboru je pak možné nahrát do jiného procesoru (místo Read se pak jen musí v AVRDUDESS zaškrtnout Write)
Uzamčený procesor má v mém dalším přikladu kód v LB políčku 0x0C.
Když je procesor uzamčený, tak se při pokusu o kopírování dat do souboru data neuloží.
I v případě, že se pokusíš zamknutý procesor odemknout, stejně se data stáhnout nepodaří.
Zkopírování programu z procesoru bude možné až po přehrání paměti novým programem.
Prostě jak se jednou program zamkne, tak se nedá stáhnout, dá se jenom přepsat/smazat.
Takže je to takhle:
Nastavení LOCK bitů je možné zjistit pomocí programu AVRDUDE přes příkazovou řádku, nebo pomocí nějaké grafické nadstavby.
Já používám AVRDUDESS.
Když se procesor připojí přes ISP programátor (třeba USBasp, nebo druhé Arduino) je možné v AVRDUDESS stav LOCK bitů načíst tlačítkem Read, vedle políčka označeného jako LB.
Odemčený, nebo uzamčený procesor se pozná podle kódu vedle nápisu LB po stisku tlačítka Read
Vysvětlení konkrétních kódů je dostupné po stisku tlačítka Bit Selector.
Napřiklad v mém případě kód 0x3F znamená odemčený procesor.
Když je procesor odemčený, je možné jeho obsah zkopírovat do souboru. Na obrázku níže jsem ten soubor nazval "d:\flsh.hex".
Obsah toho souboru je pak možné nahrát do jiného procesoru (místo Read se pak jen musí v AVRDUDESS zaškrtnout Write)
Uzamčený procesor má v mém dalším přikladu kód v LB políčku 0x0C.
Když je procesor uzamčený, tak se při pokusu o kopírování dat do souboru data neuloží.
I v případě, že se pokusíš zamknutý procesor odemknout, stejně se data stáhnout nepodaří.
Zkopírování programu z procesoru bude možné až po přehrání paměti novým programem.
Prostě jak se jednou program zamkne, tak se nedá stáhnout, dá se jenom přepsat/smazat.