AVR – prakticky
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

AVR – praktickyAVR – prakticky

 
Hledat
Moderní platforma pro vytvoření vašeho nového webu – Wix.com.
Nyní už můžete mít web zdarma.
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno

AVR – prakticky

Google       Google       1. 9. 2006       35 103×

Kdo má už doma programátor, jistě si zkusil některý z prográmků poupravit a nahrát. Někteří pozornější měli možná štěstí a program jim fungoval, tak jak měl. Jiní si museli počkat na dnešní díl. Dnes si totiž krok po kroku nejprve vytvoříme program, zkompilujeme a nahrajeme do procesoru.

Reklama
Reklama

Krok první – Hardware

Jak si obstarat programátor jsme si řekli minule. Také jsme si řekli, že pro začátek budeme používat ISP programátor na paralelní port. K programátoru budeme samozřejmě také potřebovat software, kterým ho budeme ovládat. Můžeme použít buď známý PonyProg a nebo také Atmel AVR ISP Parallel Port Programmer. Programuje-li někdo v CodeVision (v C), může využít programovací software implantovaný do vývojového prostředí. My si zvolíme první možnost. PonyProg je velmi rozšířený a po celém světě se těší velké oblibě.

Samotný procesor umístíme do nepájivého kontaktního pole a vyrobíme si propojovací kablík. Propojení bude vždy 1:1. Tedy například MISO procesoru na MISO programátoru stejně tak s ostatními signály. Samozřejmostí je přivedení napájení (5 V). Pro jistotu si popíšeme, co který signál znamená:

MISO
Master In Slave Out. Zařízení, které spravuje sběrnici, přijímá data. Zde PC.
MOSI
Master Out Slave In. Zařízení, které spravuje sběrnici, data vysílá.
SCK
hodinový signál
RESET
jistě netřeba představovat – resetuje obvod.

Krok druhý - Software

Po stažení a instalaci PonyProgu jej spusťte. Pro správnou komunikaci s programátorem je nutné nastavit typ a port, na kterém je programátor připojen. Zvolte Setup → Interface setup a nastavte AVR ISP I/O a samozřejmě správný LPT port. Otestujte nastavení tlačítkem Test. Pokud hlásí chybu, je programátor zřejmě nepřipojen nebo je chyba v práci s portem LPT. Ve Windows XP bohužel tento problém nastává velmi často. Tento problém však není neřešitelný. Povíme si jak na to.

Ve správci zařízení zobrazte skrytá zařízení: Zobrazit → Zobrazit skrytá zařízení. V položce Ovladače nepodporující Plug and Play technologii vyberte IOPort a v záložce Ovladač vyberte Spuštění počítače. Restartuje počítač.

Máte-li spuštěný program a nebyla-li nahlášena chyba o nenalezení programátoru, můžeme pokračovat. Nejprve si ale povíme něco o programovacích propojkách.

Programovací propojky

Programovací propojky, nebo-li také fuse bits, slouží k nastavení procesoru, jeho zdroje hodinového signálu, ochran proti přepisu a jiných vlastností, které ještě neznáme. Špatným nastavením těchto propojek můžeme uvést procesor do již nepoužitelného stavu. Proto vždy pečlivě překontrolujte nastavení propojek, než je zapíšete do procesoru.

Kompletní přehled propojek a jejich popis naleznete v katalogovém listu procesoru. My si dnes povíme pouze o propojkách nastavujících hodinový zdroj signálu. Vyrobíme si vlastní blikač.

Programovací propojky nastavující zdroj hodinového signálu

Programovací propojky nastavující zdroj hodinového signlu jsou častou příčinou neúspěchu u programátorů začínajících s procesory AVR. Na diskusních fórech jsou často k nalezení dotazy jak „oživit mrtvé AVRko“. Často je situace způsobena nepozorností. V nastavení zdroje hodin jsou totiž některé kombinace rezervovány, a tak může dojít k nenávratnému zablokování součásky. Z tohoto důvodu je nutné tyto vlastnosti pozorně nastavovat.

V hlavním okně zvolte rodinu procesorů AVR micro a procesor ATmega16, případně jiný… Po kliknutí na Command → Security and Configuration bits… se objeví okno s konfiguračními bity (fuse bits). Načtením zjitíte, jak je procesor zrovna nastaven. My provedeme změnu tak, aby nastavení vypadalo jako na obrázku.

Nastavení uložíme do procesoru. Důležitými pro nás byly bity CKSEL0, CKSEL3 a SUT0. Jimi jsme nastavili Interní RC oscilátor a frekvenci 8 MHz. Teď už jen zbývá nahrát program… a můžeme blikat.

	.INCLUDE "m16def.inc"	
	.LIST	
				 
	.CSEG	        ;kódový segment	
	.DEF REG=R16	;pracovní registr
	.EQU DDR=DDRC	;řízení směru
	.EQU PORT=PORTC	;port

	LDI REG,$FF	
	OUT DDR,REG	
	LDI REG,LOW(RAMEND)
	OUT SPL,REG	
	LDI REG,HIGH(RAMEND)
	OUT SPH,REG
	LDI REG,$FF	
	LDI R20,1

SMYCKA:	        OUT     PORT,REG	
		RCALL	CEKEJ	
		ADD	REG,R20
		RJMP	SMYCKA	

;čekací rutina (čeká asi 0,5 s)
CEKEJ:
        LDI     R17,36  
CYK3:   LDI	R18,150
CYK2:	LDI	R19,250
CYK1:	DEC	R19
	BRNE	CYK1	
        DEC	R18
	BRNE	CYK2
        DEC     R17
	BRNE    CYK3
        RET

Program přepíšeme do AVR Studia a přeložíme stiknutím F7. Jestliže program nenahlásí při kompilaci žádnou chybu, můžeme program nahrát do procesoru. To provedete (v PonyProgu) otevřením HEX souboru s vaším programem: File → Open program (FLASH) file…. Před nahráním programu je dobré procesor vymazat volbou Command → ERASE. Poté již jenom Command → Write program (FLASH). A LED připojená na pin PC0 by měla blikat v jednosekundovém intervalu…

Samozřejmostí je, že pokud pracujeme s ISP programátorem, tak musí být procesor napájen. A to buď přímo v aplikaci, nebo přes programátor.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Ondřej KarasAutor se věnuje vývoji řídících a komunikačních systémů a tvorbě podpůrných aplikací.
Web    

Nové články

Obrázek ke článku GoPay uvede automatické čtení údajů z dokladů, použije řešení studenta, který s ním uspěl v IT SPY

GoPay uvede automatické čtení údajů z dokladů, použije řešení studenta, který s ním uspěl v IT SPY

Vymyslet aplikaci, která pohodlně vyčte data z identifikačních dokladů, aby je jejich držitel nemusel složitě přepisovat. To byl jeden z prvních úkolů Miroslava Bartyzala, když nastoupil jako juniorský Java programátor do GoPay. Bartyzal nakonec projektu, který mu zabral více než 2200 hodin, věnoval svou diplomovou práci na Přírodovědecké fakultě Jihočeské univerzity.

Reklama
Reklama
Obrázek ke článku Studium MBA zvýší manažerům v IT hodnotu na trhu práce

Studium MBA zvýší manažerům v IT hodnotu na trhu práce

Investice do kvalitního vzdělání se vyplatí, a to jak v osobní, tak v profesionální rovině. Prestižní titul MBA otevře absolventům vysokoškolského studia cestu k mnoha atraktivním pracovním pozicím a potažmo i vyšším příjmům. Zvlášť, pokud dovedou nastudovanou teorii převést přímo do praxe a využít ji při komunikaci i řešení problémů.

Obrázek ke článku Co nám přinese technologický rok 2019? Podle Cisco bude směr určovat těchto 6 trendů

Co nám přinese technologický rok 2019? Podle Cisco bude směr určovat těchto 6 trendů

Kam se bude ubírat technologický vývoj? Společnost Cisco představila 6 trendů, které budou v příštím roce měnit svět a podobu moderních firem. Ty se v roce 2018 podle očekávání zaměřily na lepší využití dat, kterých dnes shromažďují velké objemy. Pro mnohé byla prioritou optimalizace a správa multicloudových prostředí, stejně jako snaha integrovat zabezpečení již na základní úrovni infrastruktury. Žádný z těchto trendů v příštím roce nejspíš nepomine. Přibudou ale další.

Reklama autora

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032019 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý