AVR1 fejlesztő panel

2008-11-23

 

Néhány év kihagyás után megint nekifutotam az Atmel AVR mikrovezérlőknek. A kedves olvasómat egy kalandra hívom, az AVR mikrovezérlők megismerésére. Több lapot is tervezek az AVR-ek programozásával, felhasználásával kapcsolatban. Én is most tanulgatom a rendszert, ezért kérem nézzék el kisebb hiányosságaimat, és ne várjanak egy jól átgondolt, tankönyvszerű anyagot tőlem. Nagyrészt az interneten bolyongva csipegettem össze az inormációkat. Aki el akar mélyűlni a rendszerben, annak is le kell merülnie az internet bugyraiba. Ott fellelhető minden szükséges dokumentáció, program, mintaprogramok. Az volt a tapasztalatom, hogy a letölthető mintaprogramok, project-ek egyrészt túl komplexek, másrészt álltalában elég érthetetlen kódolásúak, továbbá elég sok doksi angolul van, tudom sokaknak ez is gondot okoz (sajnos az angol teljesen nem kerülhető meg, bele kell vágni a tanulásába). Szóval, én megpróbálkozok azzal, hogy a mintaprogramok egyszerre csak egy dologgal foglakozzanak, tőlem telhetően átekinthetően legyenek megírva, és nem utolsó sorban, egy kis magyar magyarázattal megvilágítani, miről is van éppen szó. Az egyes lapokon ismertetett programok kapcsolástechnikában, program rutinokban változhatnak, ahogy időközben rájövök erre-arra. A többi lapomtól eltérően

Kedvcsinálónak itt a próba panelom fényképe és kapcsolási rajza, sok programot ki lehet majd próbálni rajta.

Egy olyan kis panelt csináltam, amin ki lehet mindenfélét próbálni, amit általában az ember egy mikrokontrollerrel akar művelni. A kapcsolás egy Atmel ATTiny 2313 típusú mikrovezérlő köré épült. Ez a chip jelenleg az MSC Budapestnél 250 HUF+ÁFA árban szerezhető be. A 8 bites AVR családba tartozik, van 1 kword program memóriája, eeprom-ja, soros portja, megszakítás kezelése, 40 mA terhelhetőségű port lábai... A kapcsolás 5V tápfeszt igényel. Van benne két nyomógomb, amit lehet figyelni, két LED, amiket be/ki lehet kapcsolgatni. Van benne egy hangszóró, amiből mindenféle hangot lehet kicsalni. A maradék port lábakat az Ex csatlakozóra vezettem ki, ehhez lehet illeszteni egyéb áramköröket. Van benne egy Reset áramkör, egy 4 MHz-es rezonátor. Az ISP csatlakozóra vannak kihozva a programozáshoz szükséges lábak (Kanda ISP csatlakozó). A V24-es (RS232) soros vonalhoz tranzisztoros illesztést terveztem. A V24 szintillesztést egzakt módon MAX 232 IC-vel oldják meg. Ez nekem azért nem tetszik, mert üresjáratban is közel 10 mA áramfelvétele van. Ha nagyobb távolságról akarnék a panellel kommunikálni, és nem elemes táplálású az áramkör, akkor én is a MAX 232-őt választanám.

A nagyobb típusok (ATMega), úgynevezett JTAG interface-en keresztűl nem csak programozhatóak, hanem Debug-golhatóak is. Ez azt jelenti, hogy a távvezérléssel akár lépésenként is léptethetjük a programjukat, vagy töréspontkat (megállásokat) tehetünk a programba, a kábelen kesresztűl kiolvashatjuk a regisztereik állapotát. A kisebbek, mint az ATTiny 2313, csak ISP lábakkal rendelkezik, amelyek a programbetöltését teszik lehetővé (akár a panelba beültetve is). Újraprogramozáshoz nincs szükség külön hókusz-pókuszokra (elnézést azoktól, akik még EPROM-kal dolgoztak), egyszerűen rátöltjük az új programot. A letöltő kábelt egy külön lapon írom le részletesen, de azért így ránézésre is látszik, hogy nem lesz eget rengető költség :).

Előszőr a panelra akartam feltenni a hangszórót. Azután sajnáltam tőle a helyet, és csak két tüske került a helyére. Ide tetszőleges hangszórót lehet csatlakoztatni. A soros ellenállás a biztonság kedvéért került a hangszóró vezetékébe, így a tüskéket rövidre zárva sem tesszük tönkre a uC lábát. Az elvi rajzhoz képest csak egy 100nF-os tápfesz szűrő kondi került a panelra (kék bigyó). Mellette az a kis ellenálláslábból hajlított drót kampó a mérések földpontját van hivatva biztosítani (nem túl szerencsés elhelyezésű).

Itt a vége, fuss el véle, legytek az én vendégeim, innen letölthetitek a hozzávalókat összecsomagolva.