Close

Odpověď na: Zaseknutí arduina

Úvodní stránka Fórum Hardware Arduino Zaseknutí arduina Odpověď na: Zaseknutí arduina

#6942
posjirka
Účastník

Lepší je asi tento odkaz :
https://www.arduino.cc/en/Tutorial/ArduinoISP

Funguje to jednoduše. Na jedno Arduino (řikejme mu master) se standardně nahraje program Arduino as ISP. najdeš jej v Menu – Example ve nižším středu seznamu.
Až to naprogramuješ tak se resetuje Arduino (Master) a odpojí od PC. Připojí se to, které chceš naprogtramovat (říkejme mu Slave) a to tak spojíš piny
Master/Slave
GND/GND
+5V/+5V
13/13
12/12
11/11
10/RESET

a u Master ještě připojíš kondenzátor 10uF mezi GND a RESET (+ přijde na RESET).
Master připojíš k PC, v Arduino IDE si nastavíš typ desky SLAVE, port vybereš ten, kde je připojený Master a jako typ programátoru vybereš Arduino as ISP.
No a dáš nahrát program.
Po nahrání odpojíš master od PC a Slave používáš samostatně v zařízení. Nebude ti fungovat bootloader takže přes USB teď nic nenaprogramuješ, ale USb seriová komunikace by měla fungovat. Kdybys chtěl znovu nahrát bootloader tak postupuješ úplně stejně, jen místo nahrání vlastního programu si vybereš vobu Tools – Burn bootloader. a máš z něj zpět staré arduino.

Jinak vysvětlení těch pinů:
SCK – hodinový signál pro komunikaci (udává master)
MISO – Master input Slave Output = master poslouchá, slave vysílá data
MOSI – master output Slave input = master vysílá, slavě poslouchá data
SS – slouží pro aktivacivybraného paralelního zařízení na sběrnici ISP. V tomto případě ovšem slouží pro restování arduina SLAVE. Po resetu totoiž bootloader chvili čeká jestli jej nechce někdo naprogramovat a pokud ano tak mu to dovolí, pokud ne tak spustí interní program.

Kondenzátor se na master Arduino mezi reset a GND dává proto aby se master neresetoval. Tím by si totiž tvůj program nahrál sám do sebe a slave by neměl nic.