Programátor AVRProg USB v3 MKII Eco

Vytisknout
ELEKTRONIKA
Zobrazení: 5966

Pokud potřebujeme naplnit procesor od výrobce Atmel, máme k dispozici různé možnosti jak to udělat: vytvořit si programátor například z Arduina (Arduino jako ISP), nebo si koupit nějaký hotový programátor. Tento článek pojednává o "levném" programátoru AVRProg pro procesory AVR z rodiny Atmel...

Programátor jsem zakoupil v prodejně gme.cz https://www.gme.cz/programator-avrprog-usb-v3 za 549,- Programátor vyrábí firma http://and-tech.pl/, kde je možné získat další informace a například i nový firmware pro programátor.

AVR PROG USB v3 je určen k programování mikroprocesorů z rodiny AVR. Spolupracuje například s prostředím Bascom, AVRStudiem a dalšími programy. Kompatibilní i s OS Linux s programem AVRDUDE.
K dispozici má dva pracovní režimy: COM nebo HID, díky kterému programátor pracuje s libovolným operačním systémem, včetně Windows 10. Programátor obsahuje 50 cm dlouhý kabel zakončený 2x5 pinovým ISP konektorem.

Zařízení mám otestované ve Windows 10 (32/64 bit edici) a funguje spolehlivě (test 20. 2. 2017). Pomocí tohoto programátoru lze nastavovat - načítat pojistky, nahrávat - načítat EEPROM paměť, nahrávat - načítat flash paměť.

Programátor AVRProg

prog

Pohled na DIP přepínače

avr progusb v3 2 dip

Zapojení programovacího 10-pinového ISP konektoru (standard KANDA)

ICSP

Rudá strana kabelu ISP (proužek na šedivém kabelu) značí konec + VCC na konektoru...

AVR3

Instalace do počítače

Jak dostat program z Arduina do procesoru?

Arduino ve výchozím stavu (bez různých zásahů do samotného Arduina) neumí používat tento programátor! Nevadí, použijeme avrdude :-)

Z přílohy pod článkem stáhneme, rozbalíme a spustíme program "AVR dude" -> tedy grafické rozhraní "avrdude-GUI"

1

V programu AVR dude nastavíme

2

V Arduino IDE nastavíme vývojovou desku (procesor bod 1) a parametry desky. Provedeme kontrolu našeho programu (kompilace bod 2). Následně klikneme na "Vypálit zavaděč" v záložce "Nástroje" bod 3. Díky operaci "Vypálit zavaděč" se dozvíme jak následně nastavit pojistky (L,H,E FUSE) do programu AVR dude (i bez počítání a dalších nástrojů například zde http://www.engbedded.com/fusecalc/) viz obrázek níže. Pojistky se samozřejmě v tuto chvíli nikam nezapisují (Arduino nezná tento programátor AVRProg a nikam nic nezapíše), ale nastavení pojistek potřebujeme znát pro program AVR dude.

Co jsou to pojistky?

Pojistky FUSEs u mikroprocesorů nastavují parametry procesoru jako například jaký používáme oscilátor (interní, nebo externí oscilátor, detekce podpětí atd...)

3

Poznámka: Pokud máme nový prázdný procesor (nebo chceme upravit stávající na jiné nastavení), musíme nejprve nastavit pojistky (FUSE) a následně nahrát program (FLASH). Například TINY85 má z výroby nastaven interní oscilátor 1MHz, pokud pojistky nezměníme na interní oscilátor 8MHz, tak v programu funkce delay(1000) - tedy jedna vteřina nebude trvat jednu vteřinu, ale 8 vteřin. Nebo musíme do delay dávat číslo 8x menší než při oscilátoru 8MHz. Tedy 1000/8 = 125 potom bude delay(125) a výsledkem bude také čekání 1 vteřinu.

4

Dalším krokem po pojistkách je naplnění paměti FLASH (programu do procesoru našeho zařízení). Pokud máme program v Arduino IDE hotový provedeme "kompilaci" tedy překlad programu (tlačítko "nike"). Ve stavovém řádku uvidíme název a cestu ke kompilovanému souboru. Výchozí cesta býva v %appdata% v tempu Windows - viz obrázek níže. Důležitým souborem ve složce build je pro nás soubor, který se jmenuje *.hex

Tento soubor budeme nahrávat pomocí programátoru AVRProg a nástroje dude do procesoru.

5

Soubor hex, který je v tempu (po překopírování například na plochu) přiložíme a stikneme tlačítko "Erase-Write-Verify" a je to :-)

6

Poznámka

Pokud ve stavovém oknu v Arduino IDE nevidíme stav kompilace, nebo nastavení pojistek je nutné si v nastavení Arduino IDE toto zobrazení nejprve aktivovat!

xx

Pokud máme na plošném spoji dostatek místa pro osazení ISP konektoru a víme předem, že budeme často program v procesoru měnit (například při ladění zařízení), tak je výhodné tento konektor osadit a ušetřit si práci s vyndáním procesoru - naprogramováním někde v patici - vložením procesoru - a opět vyndáním - atd... Konektor ISP (2x5 pinů) stojí pár korun a pokud nevyžadujeme přímo USB port na zařízení, ušetříme slušnou částku za FTDI převodník + USB převodník...

Jak dostat do Arduina IDE podporu pro ATTINYxx procesory?

Zde je postup, jak podporu do Arduina přidáme...

Attachments:
Download this file (avrdude-5.8.zip)AVR dude[5.8]304 kB400 Downloads2017-02-20 13:55
Download this file (AVRJungoUSB.zip)AVR Jungo USB[Instalační program pro Win]3267 kB550 Downloads2017-02-20 13:43
Download this file (czn.752-447.1.pdf)Český instalační manuál[AVR Prog]920 kB681 Downloads2017-02-20 14:08
Download this file (LibUsbDotNet_Setup.2.2.8.zip)LibUsbDotNet_Setup[2.2.8]2265 kB1623 Downloads2017-02-20 13:54
Arduino
ICSP
Programátor