Hobby Elektro Elektronické konstrukce

Jak naprogramovat AVR

Dnes Vám předvedu jak naprogramovat AVR pomocí jednoho kabelu a čtyř odporů. Popsaný programátor je ten úplně nejjednodušší. Nejdříve než začneme se samotný programováním musíme si připravit hardware a software.
Začneme hardwarem, jak už jsem psal stačí nám k tomu kus kabelu zakončený LPT portem ( 25 pinový konektor ). Na úkor jednoduchosti má tento programátor tuto nevýhodu - musí se použít stolní počítač, protože na noteboocích LPT porty nejsou ( teda na většině nejsou ). Zde je schéma zapojení LPT programátoru. Rezistory 330R jsou nutné ! Nelze je vynechat, jinak si poškodíte programovaný procesor.

tisk01


Zde jsou popsaný piny LPT portu :

tisk01


A takto vypadá můj hotový programátor ( rezistory jsou v červený smršťovací bužírce ) :

tisk01



Nyní již máme připravený programátor a tudíž přistupujeme k softwareový části. Ta je o trochu složitější. Jako první si musíme pořídit program pomocí, kterého budeme do procesoru zapisovat. Já používám program : PonyProg2000 , je zdarma a podporuje i více programátorů, než jen LPT programátor. Nevýhoda je, že funguje pouze pod systémem Windows XP 32bit. Jsou verze i pro Linux, ale já Linux nepoužívám, takže jsem tuto možnost nezkoušel.

Program PonyProg2000 vypadá takto :

tisk01


Klikneme na "OK" a program nás vyzve k nastavení komunikace, to opět potvrdíme tlačítkem "OK" a klikneme na "Setup" a následně na možnost "Interface Setup ...", viz foto :

Nastavení


Následně na nás vyskočí tabulka s výběrem, typu komunikace. Vybereme "Parallel" a v rozbalovací nabídce "Avr ISP I/O" a číslo LPT portu, na který připojujeme programátor, potvrdíme opět tlačítkem OK.

Nastavení


Nyní máme nastavený typ komunikace přes LPT port. Teď nás čeká připojení programátoru k procesoru. Každý procesor AVR má čtyři speciální programovací vývody "RESET, MISO, MOSI a SCK". Na každém procesoru jsou rozmístěny někde jinde ! Pro ukázku jsem vybral procesor ATmega8, který tyto piny má rozmístěný následovně dle obrázku ( červeně jsou vyznačeny programovací piny, modře pak napájení procesoru, který je taky nutné připojit , procesor se napájí 5V ) :

Nastavení


Připojení programátoru k procesoru vypadá pak takto ( procesor v nepájivém poli ) :

Nastavení


Nyní již jdeme na namotné programování. Nejdříve si vybereme procesor, který chceme programovat, jsou zde na to dvě rozbalovací nabídky v horní oblasti PonyProgu :

Nastavení


Teď si otevřeme programm který budeme do procesoru zapisovat. Dělá se to jednoduše. V horní liště si vyhledám ikonu "Open Program Memory (FLASH) File", na tu klikneme :

Nastavení


Vyskočí na nás tabulka, ve které vybereme soubor obsahující program pro procesor přeložený do strojového kódu .hex a klikneme na "Open" :

Nastavení


Nyní máme otevřený program pro procesor a máme vše nastavený a připojený programátor s procesorem, tak ho naprogramujeme ! Dělá se to ikonkou "Write Program Memory (FLASH)", která je opět v horní liště :

Nastavení


Vyskočí na nás tabulka, kde se program ptá, jestli opravdu chcete naprogramovat toto zařízení, klikneme tedy na "Yes". A procesor se začne programovat, takto vypadá průbeh programování :

Nastavení


Pokud programování proběhne bez chyb, program nás o tom informuje "pozitivní" tabulkou, potvrdíme tlačítkem "OK" :

Nastavení


Nyní již máme program v procesoru, ale ještě musíme nastavit takzvané Pojistky ( fuses ). V těchto pojistkách se nastavuje třeba typ oscilátoru v procesoru, zamčení programu proti čtení a další věci. Toto poslední programování se provádí ikonkou "Configuration and Security bits" v horní nabídce. Vyskočí na nás nastavení těchto propojek. Toto nastavení by mělo být zobrazené v každém článku. Výsledné nastavení se zapisuje do procesoru tlačítkem "Write", nikoliv tlačítkem "OK" !!! Takto :

Nastavení


Nyní už máme hotovo a procesor už je připraven pro použití v konečný aplikaci. Snad jsem tento návod napsal dost podrobně a doufám, že Vám bude užitečný. Přeji Vám mnoho zdařile naprogramovaných procesorů !


Ještě se musím pochlubit na čem jsem já naprogramoval svůj první procesor a na čem vznikal tento návod. Toto je ukázka, že programovat se dá opravdu na všem, co má LPT port a funguje :)

Nastavení Nastavení


Jedná se o notebook HP Omnibook X3, který někde po cestě časem ztratil display. Jeho obrovskou výhodou je, že má LPT port, jinak by už dávno byl v koši :)

Novinky
16. červen 2016

Řídící jednotka do koloběžky.
Číst více

12. duben 2016

Indikace vybitého akumulátoru pomocí LED diody.
Číst více

Kontakt

V případě jakéhokoli dotazu nás neváhejte kontaktovat, na Vaši otázku se budeme snažit co nejrychleji odpovědět.