Projekty‎ > ‎

STK500v2

přidáno: 24. 7. 2011 4:26, autor: Filip Matulka   [ aktualizováno 7. 12. 2011 12:20 ]
Každý, kdo s elektronikou chvíli pracuje zjistil, že mikroprocesory nám otevírají mnoho možností řízení. I čistě analogová záležitost, jako je třeba výroba vlastního laboratorního zdroje, kde napětí a proud hlídají analogové prvky, jako jsou tyristory, zenerové diody, tranzistory atd.. je použití mikroprocesoru výhodným pomocníkem.

Jak ale do mikroprocesoru "nasypat" program. Nabízí se hned několik možností. Přímo výrobci nabízí svoje programátory. Nebo jsou vyráběny programátory dalšími firmami, velice výhodným je programátor od profesionální firmy Asix, nesoucí název PRESTO. Rozhodující je ale stále cena, která je nemalá.

Pro nás bastlíře je ale výroba programátoru snadným úkolem a jelikož se zajímám o mikroprocesory Atmel, tak tu mám seznámení s výrobou STK500v2. Výhoda STK500v2 je v řízené komunikaci s mikroprocesorem tzn. 100% úspěšnost nahrání programu do mikroprocesoru, dále správa všech údajů mikroprocesoru, cena okolo 120kč, připojení přes sériovou linku a veliká výhoda je, že můžete mikroprocesory programovat přímo z AVR studia (návod pro zprovoznení v AVR studiu 5.0 je popsáno níže), nevýhoda je ta, že pro prvotní zprovoznení je potřeba programátor.

Zapojení vychází ze stránek www.wagnerovi.cz a tento web to zase převzal z jiných stránek, takže se jedná o takovou malou řetězovou reakci. Ale zapojení jsem trochu upravil pro moje řešení (mám vyrobený převodník USB <-> Serial port). Originální zapojení využívá rovnou integrace USB převodníku FT232 na desku a tímpadem odpadá 1. nutnost mít sériový port a 2. slouží k prvotnímu naprogramování (není třeba jiný programátor).

STK500v2 využívá stejnojmeného standartu popsaným firmou Atmel pro programování mikroprocesorů. Dokument kde je standart popsán si můžete volně stáhnout na stránkách výrobce. První autor celého projektu tedy tento standart zapsal do podoby, které rozumí mikroprocesor použitý v programátoru.

Programátor STK500v2 je zařízení, které používá mikroprocesor ATMEGA8, ve kterým musí být nahrán program s algoritmem, který podléhá STK500v2 standartu. Tento program (avrusb500_pre.hex) je součástí balíčku STK500v2.zip, stejně tak, jako ostatní materiály. Proto tedy v našem případě potřebujeme k prvotnímu nahrání jiný programátor. Předtím než jsem si vyrobil programátor STK500v2, tak jsem používal jiný programátor, pracujicí na paralelním portu PC. Vyniká neskutečnou jednoduchostí (pouze jediný integ. obvod). Schéma, obslužný software a návod je na stránkách dybkowski.net. Použil jsem tedy tento programátor k prvotnímu naprogramování STK500v2.
 
 


Propojení s AVR studiem 5.0
:
Pokud přecházíte z AVR studia 4 na AVR studio 5.0 tak můžete tento převodník dále používat. AVR studio 4 (verze 5.0 ho již nemá) obsahuje program s názvem Stk500.exe díky němu pak komunikuje AVR studio 4 s programátorem. Ale ve verzi 5.0 jak je jíž napsáno víše a možná, že jste si toho i všimli, Stk500.exe prostě není. Za to má ale verze 5.0 možnost použití vnějších nástrojů.

Takže pokud máte nainstalovanou AVR studio verzi 4, pak máte vyhráno, protože se soubor Stk500.exe nachází ve složce ...\Atmel\AVR Tools\STK500\. Pokud Stk500.exe spustíte v příkazové řádce s parametrem -h, vypíše vám program nápovědu (pozor! parametr -? nevypíše nápovědu, ale seznam podporovaných mikroprocesorů).  Zde si můžete přečíst co všechno váš programátor umí. Spustíme AVR studio 5.0 -> záložka Tools -> External Tools... Spustí se vám okno, ve kterém stisknete na tlačítko Add a vyplníte následující údaje:

 - Title: STK500 program and verify (prostě název toho co bude tento profil dělat)
 - Command: C:\Program Files\Atmel\AVR Tools\STK500\Stk500.exe (cesta k Stk500.exe)
 - Arguments: -dAtmega32 -J -e  -ifBlink.hex -pf -vf (postupně -d<ZAŘÍZENÍ> -J (vypiš frekvenci programování) -e (vymaž  <ZAŘÍZENÍ>) -if<NÁZEV_HEXA_SOUBORU> -pf (naprogramovaní <ZAŘÍZENÍ>) -vf (verifikace <ZAŘÍZENÍ>))
 - Initial directory: $(ProjectDir)\default ($(ProjectDir) - je promenná aktuální cesty projektu a ve složce default je hexa soubor, POZOR toto musí být nastavené jinak argument -if bude brát hexa soubor z adresáře Atmel\AVR Tools\STK500\Stk500\ ale to je doufám všem jasné)

Dole ještě zašktneme Use output window (aby se nám výstup tiskl na obrazovku přímo v AVR studiu a tímpádem vidíme jestli se přenos povedl nebo ne. A taky zašktneme Prompt for arguments. Tím máme hotovo když teď zkompilujeme nějaký program a budeme ho chtít nahrát do mikroprocesoru pak jenom klikneme na záložku Tools -> STK500 program and verify a výsledek uvidíme v output okně AVR studia.
 
Č
ą
ď
Filip Matulka,
24. 7. 2011 5:25
ą
ď
Filip Matulka,
24. 7. 2011 5:25
ċ
ď
Filip Matulka,
24. 7. 2011 5:33