Ako dostať kód z arduina

Wiring, C++, C, Java, ...
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
AstroMiK
Příspěvky: 151
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: Ako dostať kód z arduina

Příspěvek od AstroMiK » 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)
bez locku.gif





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.
s lockem.gif

Prostě jak se jednou program zamkne, tak se nedá stáhnout, dá se jenom přepsat/smazat.

akruh
Příspěvky: 5
Registrován: 04 led 2019, 21:53
Reputation: 0

Re: Ako dostať kód z arduina

Příspěvek od akruh » 07 bře 2019, 22:46

Děkuji za vysvětlení o výkendu se na to podívám.

akruh
Příspěvky: 5
Registrován: 04 led 2019, 21:53
Reputation: 0

Re: Ako dostať kód z arduina

Příspěvek od akruh » 08 bře 2019, 17:50

Tak se mi podařilo něco načíst, ale pak se přestal se mnou bavit. Ve sledovacím programu BMS ale jede.

~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 1 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 2 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 3 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 4 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 5 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 6 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 7 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 8 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 9 of 10: not in sync: resp=0x16
avrdude.exe: stk500_recv(): programmer is not responding
avrdude.exe: stk500_getsync() attempt 10 of 10: not in sync: resp=0x16

avrdude.exe done. Thank you.

Obrázek

AstroMiK
Příspěvky: 151
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: Ako dostať kód z arduina

Příspěvek od AstroMiK » 08 bře 2019, 18:26

To vypadá jako problém programátoru.
Já používám "USBasp".

Našel jsem na internetu, že podobnou závadu řešili už i jinde:
https://www.itnetwork.cz/hardware-pc/di ... 5e9d7a2ffa

Pega
Příspěvky: 1
Registrován: 17 bře 2019, 05:36
Reputation: 0

Re: Ako dostať kód z arduina

Příspěvek od Pega » 17 bře 2019, 05:52

Pro Arduino Uno má být v Avrdudess baud rate 115200.
Pro Arduino nano 57600.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host