Pro další věc, kterou mám rozdělanou jsem potřeboval ovládání. Procesory PICAXE se kterými jsem dělal nedošly velkého rozšíření a jsou poměrně drahé. Další možnost byly AVR, ATiny a Picy. Ze všeho mi ale vyšel nejlépe současný fenomén - Arduino. Neodolal jsem a objednal si na eBay desku Arduino UNO R3.
K Arduinu je dost dobré literatury. Musím zmínit nejen anglicky psané stránky [1], ale i české stránky [2] s poměrně podrobnou příručkou. Múžete si stáhnout také programátorskou příručku ]3]. Všechny manuály ale začínají podobně: "nainstalujte si nejnovější sofware". Hezky se to řekne, ale hůř udělá. Jak praxe ukazuje, ty zdánlivě nejjednodušší věci jsou ta největší nepříjemnost. To platí také o mém začátku s Arduinem.
Problém mi dělala instalace ovladače USB/COM. Na desce totiž není klasický převodník. Jeho funkci zastává procesor. K němu pochopitelně W7 žádný ovladač nenajdou. Na internetu je hromada návodů jak ovladač instalovat. Postupně jsem bez výsledku vyzkoušel snad všechny. Nakonec jsem se dopracoval k tomu, že některé desky Arduina pracují s čínským ovladačem
CH341SER. Do složky
Program files → Arduino → drivers jsem udělal adresář ch341ser a do něj soubory ovladače rozbalil. Ve správci zařízení se po instalaci ovladače objevilo přiřazení portu a Win7 desku poznalo. Odechl jsem si. Ale přečasně. Když jsem chtěl nahrát krátký prográmek (Blink z příkladů) objevilo se následující hlášení:
Arduino: 1.6.6 (Windows 7), Vývojová deska: "Arduino/Genuino Uno"
Projekt zabírá 1 030 bytů (3%) úložného místa pro program. Maximum je 32 256 bytů.
Globální proměnné zabírají 9 bytů (0%) dynamické paměti, 2 039 bytů zůstává pro lokální proměnné. Maximum je 2 048 bytů.
avrdude: ser_open(): can't open device "\\.\COM7": Systém nemůže nalézt uvedený soubor. Problém s přenosem dat na vývojovou desku (board). Na
http://www.arduino.cc/en/Guide/Troubleshooting#upload naleznete další doporučení.
Tento výpis by měl více informací s "Zobrazit více informací během kompilace" povoleno v Soubor > Vlastnosti
A bylo po radosti. Nakonec vše vyřešilo to, že jsem odinstaloval Arduino IDE verzi 1.6.6 a
použil verzi 1.6.4. Všechno běželo na první pokus. Jenom je potřeba správně nastavit typ desky a použitý port.
Číslo použitého portu zjistíme ve správci zařízení. Jako COM6 je uvedené Arduino MEGA se standardním ovladačem a na COM7 je Arduino Uno s ovladačem CH341SER. S Arduinem Mega od začátku žádný problém nebyl.
Udivující je spousta doplňků, stačí si na eBay vyhledat Arduino shield a můžete tiše žasnout nad cenami. Vždyť i deska UNO, jak jí vidíte na horním obrázku, mě přišla na závratných 64.-Kč + 25.-Kč poštovné (v GME 665.-Kč!). Tady si asi každý položí kacířskou otázku:"má vůbec cenu se s tím dělat? Odpověď je jednoduchá - nemá! Pokud chcete dělat svoje desky, je na internetu dost podkladů pro jejich kreslení. Pro jejich stohování musíte ale znovu na eBay. U nás prodloužené dutinkové dutinkové lišty nejsou k mání. Dobře okótované desky Arduino UNO a Arduino MEGA pro použití v Eagle jsou na
stránkách Wayne & Layne. Zazipované výkresy desek pro Eagle najdete na
https://www.arduino.cc/en/Main/Products.
Tím jsou snad začátečnické potíže překonané a můžu zkoušet programovat. Mezi námi, programovací jazyky použité pro tyto účely jsou vlastně všechny na jedno brdo. Problémy dělá dodržení syntaxe. Nejhorší jsou různé středníky, závorky a podobné nechutnosti.
S tímto SW jdou také programovat ATtiny 45, 85, 44 a 84. Příslušné knihovny si do verze 1.6.4 stáhnete pokud si zvolíte
soubor → vlastnosti a do okénka ve spodní části (Additional Board Manager URLs) vložíte adresu:
href="https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json atlačítkem OK potvrdíte. Potom se knihovny v
nástrojích přes
Boards Manager nahrají a můžete ATtiny programovat. Pro toto použití mám připravený programátor USBasp, který jsem měl k Bascomu. Dál jsem se zatím nedostal a ještě žádné ATtiny neprogramoval. Časem na to ale určitě dojde.