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 [2023/12/21 16:43] (aktuální) – [LABduino MightyCore] kaklik | ||
---|---|---|---|
Řá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:// | ||
+ | |||
+ | sudo apt-get install arduino | ||
+ | ==== 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 Duemilanove ===== | ||
+ | |||
+ | Tato realizace arduina je stejná jako Arduino Duemilanove, | ||
+ | |||
+ | 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 === | ||
+ | |||
+ | Instalace avrdude | ||
+ | sudo apt-get install avrdude | ||
+ | |||
+ | 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 [[https:// | ||
+ | - K nahrání do procesoru je možné využít program [[http:// | ||
+ | - Návod [[http:// | ||
+ | - [[ 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: | ||
+ | - '' | ||
+ | - 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 | ||
+ | - '' | ||
+ | - Příkaz je potřeba zadávat v příkazové řádce ve složce, kde je ATmegaBOOT_168_atmega328.hex uložen. | ||
+ | - 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. | ||
+ | |||
+ | === Připojení na USB === | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | ===== Arduino porty na LABduinu ===== | ||
+ | |||
+ | ^Arduino ^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 |:::| | ||
+ | |||
+ | |||
+ | ===== LABduino MightyCore ===== | ||
+ | Realizace s procesorem ATmega1284P. [[https:// | ||
+ | |||
+ | Nastavení pojistek: | ||
+ | |||
+ | '' | ||
+ | ====== 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:// |