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

AVR – praktickyAVR – prakticky

 

AVR – prakticky

Google       Google       1. 9. 2006       31 539×

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 NEWTON Media prohledá 200  milionů mediálních zpráv během sekund díky Cisco UCS

NEWTON Media prohledá 200 milionů mediálních zpráv během sekund díky Cisco UCS

Česká společnost NEWTON Media provozuje největší archiv mediálních zpráv ve střední a východní Evropě. Mezi její zákazníky patří například ministerstva, evropské instituce nebo komerční firmy z nejrůznějších oborů. NEWTON Media rozesílá svým zákazníkům každý den monitoring médií podle nastavených klíčových slov a nabízí online službu, kde lze vyhledat mediální výstupy v plném znění od roku 1996.

Reklama
Reklama
Obrázek ke článku Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Touto roční dobou, kdy je zem pokrytá barevným listím a prsty křehnou v mrazivých ránech, se obvykle těšíme na zbrusu novou verzi RAD Studia. Letos si však ale budeme muset počkat na Godzillu a Linux až do jara. Vezměme tedy za vděk alespoň updatem 2 a jelikož dle vyjádření pánů z Embarcadero se budou nové věci objevovat průběžně, pojďme se na to tedy podívat.

Obrázek ke článku Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Stále rostoucí zájem o cloudové služby i maximální důraz na pružnost, spolehlivost a bezpečnost IT vedou k výrazným inovacím v datových centrech. V infrastruktuře datových center hraje stále významnější roli software a stále častěji se lze setkat s hybridními přístupy k jejich budování i provozu.

Obrázek ke článku Konference: Mobilní technologie mají velký potenciál pro byznys

Konference: Mobilní technologie mají velký potenciál pro byznys

Firmy by se podle analytiků společnosti Gartner měly  rychle přizpůsobit skutečnosti, že mobilní technologie už zdaleka nejsou horkou novinkou, ale standardní součástí byznysu. I přesto - nebo možná právě proto - tu nabízejí velký potenciál. Kde tedy jsou ty největší příležitosti? I tomu se bude věnovat již čtvrtý ročník úspěšné konference Mobilní řešení pro business.

Reklama autora

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý