From de9d930a11134329fd61bfcbac2fde8724204769 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20Sko=C5=99epa?= <jakub@skorepa.info>
Date: Wed, 16 Mar 2016 14:05:05 +0100
Subject: [PATCH] =?UTF-8?q?P=C5=99id=C3=A1n=20=C4=8Dl=C3=A1nek=20o=20insta?=
 =?UTF-8?q?laci=20prost=C5=99ed=C3=AD=20platformIO?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

TODO:
- otestovat instalaci ve fedoře
- přidat obrázky do repozitáře static
---
 articles/2016/instalace-platformio.md | 143 ++++++++++++++++++++++++++
 1 file changed, 143 insertions(+)
 create mode 100644 articles/2016/instalace-platformio.md

diff --git a/articles/2016/instalace-platformio.md b/articles/2016/instalace-platformio.md
new file mode 100644
index 00000000..b460ea9c
--- /dev/null
+++ b/articles/2016/instalace-platformio.md
@@ -0,0 +1,143 @@
++++
+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"
++++
+
+# 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í
+
+# Užitečná nastavení
+
+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-linux atom-workspace, .platform-linux atom-text-editor, .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 projekt ![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 <avr/io.h>
+    #include <util/delay.h>
+
+    int main(void)
+    {
+      DDRB = 1;
+      while(1)
+      {
+        PORTB ^= 1;
+        _delay_ms(1000);
+      }
+    }
+
+
+# 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
+
+    sudo dnf -y install avr-* avrdude
+    sudo dnf -y install https://dl.bintray.com/platformio/ide-bundles/platformio-atom-linux-x86_64.rpm
+
+# Dejte nám vědět!
+
+Napište nám na naše [fórum](https://ok1kvk.cz/forum)
-- 
GitLab