diff --git a/README.md b/README.md index a6fc2c2a0b1da578a6d8e8afa8cdd95545b20f19..a6d87e69a52ff31251aa758882d7feaa297c94c1 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Každý článek má svůj soubor. ## Formát souboru +++ - + title = "Nadpis článku perex = """ Krátký úvod článku (doporučuji max 255 znaků). Není nutný. @@ -41,8 +41,10 @@ To je to mezi +++ a +++ ;) preferujte png * tags - Seznam tagů * [author] - Počátek sekce pojednávající o autorovi, pokud chybí je vytvořena z git historie - * name - jméno autora - * email - email autora - není publikován na stránkách, ale můžou na něj v budoucnu být posílány případné komentáře + * name - jméno autora + * email - email autora - není publikován na stránkách, ale můžou na něj v budoucnu být posílány případné komentáře + * [date] + * creation - datum vytvoření * nodate=true - indikuje, že by se nemělo zobrazovat datum vytvoření ## Standartní kategorie: @@ -52,4 +54,3 @@ To je to mezi +++ a +++ ;) * HAM konstrukce * Bastlení * Programování - diff --git a/articles/2016/instalace-platformio.md b/articles/2016/instalace-platformio.md new file mode 100644 index 0000000000000000000000000000000000000000..ad0feca2671a824614beac500e998cbd6d28e459 --- /dev/null +++ b/articles/2016/instalace-platformio.md @@ -0,0 +1,192 @@ ++++ +title = "Instalace PlatformIO" +perex = "Ukážeme si, jak nainstalovat a nastavit platform IO - vývojové prostředí + (nejen) pro Arduino založené na moderním prostředí Atom" +tags = ["Článek", "Programování", "AVR", "Arduino"] +lang = "cpp" +image= "lead.png" ++++ + +## Obsah +1. [Instalace ve windows](#instalace-ve-windows) +2. [Rychlé seznámení s prostředím](#rychle-seznameni-s-prostredim) +3. [Programování bez arduina](#programovani-bez-arduina) +4. [platformio.ini](#platformio.ini) +5. [Závěr](#zaver) + +# Instalace ve windows + +## Závislosti + +Nejdřív nějaké potřebné programy. + +1. Z [python.org](https://www.python.org/downloads/) stáhneme verzi 2.7.x s verzí +3.x to fungovat nebude. +2. Nainstalujeme standartním způsobem jen musíme při instalaci vybrat přidat python do proměnné PATH + +![Python path screenshot](python-path.png) + +Dále clang - ten sice není nutný ale bez něj nefunguje automatické doplňování, což je +velmi užitečný pomocník + +1. Z [llvm.org](http://llvm.org/releases/download.html) stáhneme verzi pro windows (až dole) +2. To samé jako u pythonu + +![Clang path screenshot](clang-path.png) + +## PlatformIO + +1. Stáhneme z [platformio.org](http://platformio.org/platformio-ide) +2. Nainstalujeme - nakonec se i automaticky zpustí prostředí Atom, na kterém je to postavené +3. Počkáme, až se dokončí instalace dalších věcí + +## Oprava české klávesnice + +Pokud používate českou klávesnici tak si určitě všimnete neschopnosti psát {}[] atd pomocí +AltGr+Něco. Naštěstí se to dá snadno opravit. Zmáčkneme Ctlr-Shift-P, napíšeme keymap a zmáčkneme Enter. + +Na konec zobrazeného souboru zkopírujeme následující, uložíme a hotovo + + '.platform-win32 atom-workspace, .platform-win32 atom-text-editor': + 'ctrl-b': 'platformio-ide:target:build' + 'ctrl-r': 'platformio-ide:target:upload' + 'ctrl-alt-b': 'unset!' + 'ctrl-alt-g': 'unset!' + 'ctrl-alt-c': 'unset!' + 'ctrl-alt-v': 'unset!' + 'ctrl-alt-f': 'unset!' + 'atom-workspace, atom-text-editor': + 'ctrl-alt-b': 'unset!' + 'ctrl-alt-c': 'unset!' + 'ctrl-alt-f': 'unset!' + + 'atom-text-editor': + 'ctrl-alt-f': 'unset!' + 'atom-workspace atom-text-editor:not([mini])': + 'ctrl-alt-f': 'unset!' + '.platform-win32, .platform-linux': + 'ctrl-alt-f': 'unset!' + + '.platform-win32 atom-text-editor, .platform-linux atom-text-editor': + 'ctrl-alt-q': 'unset!' + + 'atom-workspace atom-pane': + 'ctrl-alt--': 'unset!' + + 'body': + 'ctrl-alt-r': 'unset!' + + '.platform-win32 atom-text-editor': + 'ctrl-alt-.': 'unset!' + 'ctrl-alt-m': 'unset!' + + '.platform-win32 .find-and-replace, .platform-linux .find-and-replace': + 'ctrl-alt-c': 'unset!' + '.platform-win32 .project-find, .platform-linux .project-find': + 'ctrl-alt-c': 'unset!' + +Tento konfigurační soubor navíc ještě nastavuje ctrl-b na sestavení (build) a ctrl-r na nahrání projektu (run). +Je to hned navrchu toho souboru - pokud vám tato konfigurace nevyhovuje stačí jí změnit. + +# Rychlé seznámení s prostředím + +Vytvoření projektu je snadné - stačí kliknout na ikonku nového projektu + +![Vytvořit nový projekt](1-initialize-project-icon.png) + +Tím se nám otevře následující menu, které snad nemusím vysvětlovat (vybereme desku a složku, +kde se projekt vytvoří) + +![Menu pro vytvoření nového projektu](2-initialize-project-menu.png) + +Následně ve složce src vytvoříme soubor s programem (např main.cpp) - klikneme pravým na +src a dáme New File - nyní můžeme programovat. Např jednoduchý program na blikání ledkou. + + #include "Arduino.h" + + void setup() + { + pinMode(LED_BUILTIN, OUTPUT); + } + + void loop() + { + digitalWrite(LED_BUILTIN, HIGH); + delay(1000); + digitalWrite(LED_BUILTIN, LOW); + delay(1000); + } + +Pokud uděláme chybu a soubor uložíme tak nás prostředí samo upozorní aniž bychom museli +kompilovat. Pro nahrání programu do arduina stačí zmáčnout ctrl-r nebo kliknout na druhou +ikonu zhora (šipka vpravo). + +# Programování bez arduina + +PlatformIO arduino podporuje, ale nijak nevyžaduje. Stejně jako v Arduino IDE nebo +eclipse či Atmel Studiu i tady bude fungovat následující program (který dělá totéž +co program výše - bliká ledkou) + + #include + #include + + int main(void) + { + DDRB = 1; + while(1) + { + PORTB ^= 1; + _delay_ms(1000); + } + } + +# platformio.ini + +Pokud nechcete, nemůžete nebo nemáte arduino tak platformio lze nastavit i na +použití například s USBasp: + + [env:myboard] + platform = atmelavr + framework = arduino + board = uno + board_mcu = atmega328p + upload_protocol = usbasp -B5 + build_flags = -Llibs -DDEBUG -Wl,-u,vfprintf -lprintf_flt + board_f_cpu = 4000000UL + +Pokud chceme používat arduino knihovny, které jsme si už nainstalovali tak přidáme + + [platformio] + lib_dir=~/Arduino/libraries # případně jiná cesta + +nebo je můžeme umístit přímo do složky lib + +# Závěr + +To je vše! Nyní máte vývojové prostředí (nejen) pro Arduino, které je mnohem lepší než arduino IDE. + +# Instalace pod linuxem - Fedora + +Instalace ve fedoře je o poznání rychlejší a jednodušší. +Pokud už máte atom + + sudo dnf -y install clang + apm install platformio-ide + +Pokud ještě ne + + sudo dnf -y install clang + sudo dnf -y install https://dl.bintray.com/\ + platformio/ide-bundles/platformio-atom-linux-x86_64.rpm + +Česká klávesnice funguje dobře od základu takže výše uvedený config není potřeba, +ale je užitečné si nastavit klávesové zkratky na zkompilování (zde ctrl-b) a +nahrání kódu (ctrl-r). + + '.platform-linux atom-workspace, .platform-linux atom-text-editor': + 'ctrl-b': 'platformio-ide:target:build' + 'ctrl-r': 'platformio-ide:target:upload' + +# Dejte nám vědět! + +Napište nám na naše [fórum](https://ok1kvk.cz/forum)