cs:labduino
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Předchozí verze | |||
cs:labduino [2017/07/04 18:04] – [LABduino UNO] kakl | — | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
- | ====== Klon Arduina postavený z MLABu - LABduino ====== | ||
- | Protože Arduino není nic jiného, než mikrokontroler AVR případně ARM s nahraným specifickým bootloaderem, | ||
- | |||
- | {{: | ||
- | |||
- | Můžeme tak vytvořit s Arduinem plně elektricky a pragramově kompatibilní zařízení postavené z modulů MLAB. Lze jej programovat v prostředích určených pro Arduino a využívajících jazyk [[http:// | ||
- | |||
- | ===== Programovací nástroje ===== | ||
- | |||
- | Programy pro Arduino jsou obvykle psané v jednoduchém jazyku [[https:// | ||
- | |||
- | ==== Arduino IDE ==== | ||
- | |||
- | Konstrukci s LABduinem, lze programovat klasickym nastrojem [[http:// | ||
- | |||
- | ==== Wiring ==== | ||
- | |||
- | Wiring je otevřenější nástroj pro práci s Arduinem/ | ||
- | Je taktéž [[http:// | ||
- | |||
- | Od listopadu 2012 je v poslední vývojové verzi Wiringu na githubu LABduino přímo podporováno. | ||
- | |||
- | === Instalace Wiringu v Ubuntu === | ||
- | |||
- | Pod Ubuntu 14.04 a ve vyšších verzích lze Wiring snadno přeložit ze zdrojového kódu přímo v příkazové řádce. Nejprve nainstalujeme potřebné nástroje: | ||
- | |||
- | sudo apt-get install ant git default-jdk librxtx-java | ||
- | |||
- | V nových verzích processingu není plně podporována OpenJAVA. | ||
- | |||
- | sudo add-apt-repository ppa: | ||
- | sudo apt-get update | ||
- | sudo apt-get install oracle-java7-installer | ||
- | | ||
- | Následně stáhneme nejnovější verzi Wiringu přímo z GitHubu. | ||
- | | ||
- | git clone git:// | ||
- | | ||
- | Přepneme se do složky se staženými soubory | ||
- | | ||
- | cd Wiring | ||
- | |||
- | Spustíme vývojové prostředí. | ||
- | |||
- | ant | ||
- | | ||
- | A spustíme Wiring IDE | ||
- | |||
- | ant run | ||
- | |||
- | ===== LABduino UNO ===== | ||
- | |||
- | Tato realizace arduina je stejná jako Arduino UNO, které využívá mikrokontrolér ATmega328P. | ||
- | |||
- | Klasicky se LABduino skládá ze dvou modulů [[cs: | ||
- | Napájení modulu ATmegaTQ3201A je obvykle řešeno přímo z USB (připojením napájecího kablíku). | ||
- | |||
- | {{: | ||
- | |||
- | V této konfiguraci tedy hardwarově odpovídá Arduinu Duemilanove s ATmega328. Na rozdíl od nových verzí Arduina však pro komunikaci s USB nepoužívá ATmega s firmwarem emulujícím sériovou linku, ale převodník [[http:// | ||
- | |||
- | |||
- | ==== Nahrani bootloaderu ==== | ||
- | |||
- | Vybraný firmware lze nahrát do mikroprocesoru programátorem | ||
- | |||
- | === Linux === | ||
- | |||
- | Nahrávací skript spustíme například následovně: | ||
- | sudo ./flash.sh / | ||
- | |||
- | |||
- | Správný výstup po zapsání firmware do MCU vypadá takto: | ||
- | |||
- | avrdude: erasing chip | ||
- | avrdude: reading input file " | ||
- | avrdude: input file ATmegaBOOT_168_atmega328.hex auto detected as Intel Hex | ||
- | avrdude: writing flash (32670 bytes): | ||
- | | ||
- | Writing | ################################################## | ||
- | | ||
- | avrdude: 32670 bytes of flash written | ||
- | avrdude: verifying flash memory against ATmegaBOOT_168_atmega328.hex: | ||
- | avrdude: load data flash data from input file ATmegaBOOT_168_atmega328.hex: | ||
- | avrdude: input file ATmegaBOOT_168_atmega328.hex auto detected as Intel Hex | ||
- | avrdude: input file ATmegaBOOT_168_atmega328.hex contains 32670 bytes | ||
- | avrdude: reading on-chip flash data: | ||
- | | ||
- | Reading | ################################################## | ||
- | | ||
- | avrdude: verifying ... | ||
- | avrdude: 32670 bytes of flash verified | ||
- | | ||
- | avrdude: safemode: Fuses OK | ||
- | | ||
- | avrdude done. Thank you. | ||
- | | ||
- | K fungování skriptu je potřeba mít nainstalovanou správnou verzi programu avrdude. Podrobnosti viz [[cs: | ||
- | |||
- | === Windows === | ||
- | |||
- | Příklad pro modul ATmegaTQ3201A s procesorem ATmega328P a 16MHz krystalem | ||
- | - Bootloader je umístěn v MLAB svn: http:// | ||
- | - K nahrání do procesoru je možné využít program AVRdude, který je ke stažení na: http:// | ||
- | - Návod na instalaci: http:// | ||
- | - Nahrání bootloaderu se provede v operačním systému Windows programem AVRdude přes příkazový řádek. | ||
- | - Nejprve je dobré zjistit, že se AVRdude nainstaloval dobře. Stačí v příkazové řádce napsat avrdude a stisknout enter. Na obrazovce se zobrazí options. | ||
- | - K nahrání je potřeba modul ATprogISPUSB02A propojit s modulem ATmegTQ3201A (napájení a ISP kabel). | ||
- | - Nejprve se musí nastavit pojistky procesoru. V příkazové je potřeba zadat tento příkaz: | ||
- | - **avrdude -F -p atmega328P -P COM17 -c stk500v2 -B 50 -v -U efuse: | ||
- | - Na místo COM17 je potřeba doplnit aktuální port v daném počítači. Možno dohledat ve správci zařízení ve WIN. | ||
- | - Druhým příkazem je potřeba nahrát ATmegaBOOT_168_atmega328.hex | ||
- | - **avrdude -F -p atmega328P -P COM17 -c stk500v2 -B 50 -U flash: | ||
- | - Příkaz je potřeba zadávat v příkazové řádce ve složce, kde je ATmegaBOOT_168_atmega328.hex uložen. Ukázka zápisu příkazu pro uložení souboru přímo na diskové jednotce E. | ||
- | - Následně by se měl bootloader nahrát do procesoru a proběhne kontrola zápisu. | ||
- | - Nyní stačí modul ATmegaTQ3201A propojit s modulem USB232R01B a je LABduino připraveno. | ||
- | |||
- | |||
- | ===== Arduino porty na LABduinu ===== | ||
- | |||
- | ^Aruino ^ATmega8DIL01A ^Note ^ | ||
- | |D0 |RXD |PD0, if you disconnect USB232R01B| | ||
- | |D1 |TXD |PD1, if you disconnect USB232R01B| | ||
- | |D2 |PD2| Digital I/Os.| | ||
- | |D3/PWM |PD3|:::| | ||
- | |D4 |PD4|:::| | ||
- | |D5/PWM |PD5|:::| | ||
- | |D6/PWM |PD6|:::| | ||
- | |D7 |PD7|:::| | ||
- | |D8 |PB0|:::| | ||
- | |D9/PWM |PB1|:::| | ||
- | |D10/PWM |PB2|:::| | ||
- | |D11/PWM |PB3|:::| | ||
- | |D12 |PB4|:::| | ||
- | |D13 |PB5|:::| | ||
- | |A0 |PC0 |Analog inputs.| | ||
- | |A1 |PC1 |:::| | ||
- | |A2 |PC2 |:::| | ||
- | |A3 |PC3 |:::| | ||
- | |A4 |PC4 |:::| | ||
- | |A5 |PC5 |:::| | ||
- | |||
- | |||
- | ====== Příklad zapojení LABduino a LCD ====== | ||
- | |||
- | Jednoduchý příklad zapojení modulů [[cs: | ||
- | |||
- | === Propojení modulů === | ||
- | |||
- | == Napájení == | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | == LCD display == | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | == Pípák == | ||
- | |||
- | '' | ||
- | |||
- | == Tlačítka == | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | == Interface to PC == | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | '' | ||
- | |||
- | === Program === | ||
- | |||
- | [[http:// | ||
- | |||
- | ===== Dalsi příklady použití ===== | ||
- | |||
- | * [[cs: | ||
- | * [[cs: | ||
- | * [[cs:aws]] - Vyčítání meteorologických čidel s binárními nebo analogovými výstupy. | ||
- | |||
- | ===== Labduino - Mega 2560 ===== | ||
- | |||
- | Tato varianta Arduina využívá mikrokontroler [[http:// | ||
- | |||
- | ==== Příklady použití ==== | ||
- | |||
- | * [[cs: | ||
- | |||
- | |||
- | ===== Reference ===== | ||
- | |||
- | * [[http:// |
cs/labduino.txt · Poslední úprava: 2023/12/21 16:43 autor: kaklik