. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Vývojový kit Mega128A
23. září 2011 - 8:30 | Pandatron | Vývojový kit Mega128A | Komentářů: 4  

Vývojový kit Mega128A

Seznamte se s univerzálním vývojovým kitem Mega128A, dostupným prostřednictvím našeho eShopu. Součástí kitu je nejen velké množství prvků na desce, ale také CD s ukázkovými aplikacemi.

Pokud jste se také rozhlíželi na trhu s vývojovými kity, jistě mi dáte za pravdu, že současný stav je docela žalostný. Oblíbené kity PVK40, dostupné za přijatelnou cenu 2.856 Kč (s DPH) se spoustou ukázkových zdrojových kódů (mimo jiné i webového serveru s ENC28J60), již firma ASIX s.r.o. nevyrábí a velcí distributoři na tom nejsou o mnoho lépe. Většinu z jejich nabídky dodávají přímo výrobci čipů, čemuž rozhodně neodpovídají jejich poměrně vysoké ceny a navíc se ve většině případů jedná o platformu, zaměřenou vždy na vývoj jednoho daného úkolu (například napájecích systémů, řízení motorů, nebo naopak podporu RTOS).

To nás vedlo k zamyšlení, proč nenabídnout jeden univerzální kit, který by byl vhodný jak pro výukové účely a seznámení se s funkcemi mikrokontrolérů, tak i pro vývoj mnohem náročnějších aplikací, využívajících například i zmíněný RTOS (Real-Time Operating System) a další pokročilé funkce. Výsledkem je, že se nám podařilo zajistit větší množství vývojových kitů MEGA128A které jsou nyní dostupné prostřednictvím našeho eShopu a budou použity i v řadě následujících článků.


Obr. 1: Vývojový kit Mega128A, dostupný prostřednictvím našeho eShopu

Jak už z názvu kitu vyplývá, jejho základem je mikrokontrolér ATmega128A firmy Atmel se 128 kB programové paměti a celou řadou integrovaných periferií. Kromě toho se na desce nachází velké množství ovládacích a zobrazovacích prvků, stejně jako obvod reálného času, externí I2C paměť či například i vysokonapěťový budič krokových motorů a další. Rovněž je s kitem možné použít jak standardní znakové LCD displeje, tak i moderní grafické displeje.

Mikrokontroléry ATmega128A
Osmibitové mikrokontroléry ATmega128A od společnosti Atmel představují jedny z nejvýkonnějších zástupců řady ATmega RISC mikrokontrolérů, dostupných v současné době na trhu. Obvody na jediném čipu kombinují 128 kB programové paměti Flash s podporou až 10.000 cyklů smazání a zápisu (s uchováním dat po dobu delší než 100 let), datovou paměť SRAM 4 kB, rovněž 4 kB EEPROM, stejně jako celkem 53 uživatelských I/O (vstupně/výstupních - GPIO) pinů a 32 univerzálních pracovních registrů. Mezi integrované periferie je pak možné zařadit především čtyři flexibilní časovače/čítače s možností porovnání a generováním PWM, čítač reálného času a rozhraní v podobně dvou USARTů, I2C, SPI či JTAG (kompatibilní s IEEE 1149.1). Rovněž stojí za zmínku také integrovaný 8-kanálový, 10-bitový A/D převodník s podporou diferenciálních vstupů s programovatelným vstupním zesilovačem a až 77 kS/s.


Obr. 2: Vnitřní blokové schéma mikrokontroléru ATmega128A

Základní technické vlastnosti mikrokontroléru ATmega128A:

  • 8-bitový mikrokontrolér řady Atmel AVR
  • 128 kB programové paměti Flash
  • 4 kB EEPROM
  • 4 kB SRAM
  • 2x 8-bitový čítač/časovač
  • 2x 16-bitový čítač/časovač
  • Čítač reálného času se samostatným oscilátorem
  • 6x PWM výstup s programovatelným rozlišením 2 – 16 bitů
  • 8-kanálový, 10-bitový ADC
  • Dva sériové rozhraní typu USART
  • TWI/I2C + SPI rozhraní
  • Analogový komparátor
  • Pracovní frekvence od 0 do 16 MHz (až 16 MIPS)
  • Jediné napájecí napětí 2,7 až 5,5 V

Podpora výkonných instrukcí a zpracování většiny z nich v jediném hodinovém cyklu umožňuje dosažení výkonu až 16 MIPS. Jinak mikrokontrolér pro svůj provoz vyžaduje pouze jediné napájecí napětí v rozmezí od 2,7 do 5,5 V.
Více informací o mikrokontrolérech ATmega128A je dostupných na webových stránkách výrobce a v odkazech pod článkem.

Vývojový kit Mega128A
Jak již bylo uvedeno v úvodu, kromě mikrokontroléru ATmega128A je na vývojové desce Mega128A osazeno celé množství různých periferií, ovládacích a zobrazovacích prvků, stejně jako například obvod reálného času, externí I2C paměť či vysokonapěťový budič krokových motorů a další.

Schéma zapojení:
Na následujícím obrázku je uvedeno schéma zapojení vývojového kitu ATmega128A.


Obr. 3: Schéma zapojení vývojového kitu Mega128A (pro plné rozlišení klikněte)

Doporučuji vám stáhnout si schéma v plném rozlišení (kliknutím na obrázek) a jeho vytištění. Přesto že se na první pohled může zdát vývojový kit poměrně složitý, není tomu tak. Spíš naopak, tím že jsou jednotlivé prvky na schématu rozděleny do samostatných částí, je orientace v zapojení velice jednoduchá.

Mikrokontrolér a napájecí zdroj
Základem je samozřejmě uvedený výkonný mikrokontrolér ATmega128A firmy Atmel, který se nachází zhruba uprostřed schématu. Obvod je pro snadnou podporu přesné komunikace taktován tzv. baudovým krystalem Y2 s frekvencí 7,3728 MHz. Napájení mikrokontroléru, potažmo celého vývojového kitu, je možné pomocí klasického síťového adaptéru s napětím v rozmezí zhruba od 6 do 12 V, tedy například pomocí Síťového napáječe 12V/500mA z našeho eShopu, který se připojuje ke konektoru POWER. Dioda D2 chrání následné obvody před případným přepólováním napájení (kladný pól musí být jako obvykle na středním pinu konektoru) a za ní již následuje standardní +5V lineární regulátor řady 7805 s výstupním proudem až 1A (v závislosti na odvodu tepla).


Obr. 4: Mikrokontrolér ATmega128A a konektory JP6 až AP9

Získané stabilizované napájecí napětí +5V se přímo spojuje s USB konektorem typu B, označeným jako USB-POWER. Ten je na desce osazen pouze pro možnost napájení kitu přímo z PC, přičemž je dovoleno použití vždy buď síťového adaptéru, nebo USB napájení, nikdy ne obou zároveň. Za vypínačem POWERSWITCH následuje hlavní část napájecího bloku, kterou je možnost volby napájecího napětí celého vývojového kitu. Pomocí propojky J1 typu Jumper je možné zvolit napájecí napětí buď +5V, nebo +3,3V, které se stabilizuje obvodem LM1117.

Ovládací a zobrazovací prvky
Na žádném vývojovém kitu by nikdy nemělo chybět dostatečné množství ovládacích a zobrazovacích prvků. V případě kitu Mega128A je k dispozici celkem jedenáct spínacích tlačítek (v levé části schématu), osm sedmisegmentových LED zobrazovačů, osm kruhově uspořádaných 3mm LED a dva odporové trimry na analogových vstupech. Uvedená spínací tlačítka se přitom dále dělí na osm univerzálních spínačů KEY1 až KEY8, připojených k pinům PB0 až PB7 mikrokontroléru. Dále na dvě tlačítka INT0 a INT1, které jsou přes propojky J4 připojeny k pinům PD0 a PD1 a slouží k možnosti vyvolání přerušení (Interrupt). A konečně poslední, červené tlačítko na pinu RST slouží k resetu celého mikrokontroléru.


Obr. 5: Osm sedmisegmentových LED zobrazovačů je řízeno pomocí dekodéru 74LS138 a posuvného registru 74HC595

Osm sedmisegmentových LED zobrazovačů SEG1 a SEG2, které se nacházejí v dolní části schématu, se řídí pomocí dekodéru 74LS138 a posuvného registru 74HC595. Anoda každého segmentu je navíc buzena pomocí tranzistorů Q1 až Q8. Vše je pak přes konfigurační propojky J10 přivedeno na piny PA1 až PA7 mikrokontroléru.

Osm LED s průměrem 3 mm, tedy L1 až L8, je zapojených na piny PC0 a PC7. Jejich povolení nebo zakázání je možné propojkou JP3.


Obr. 6: Osm kruhově uspořádaných LED

Zmíněné dva odporové trimry DW3A a DE4A, které se na schématu nacházejí v jeho pravém horním rohu, jsou přes konfigurační propojky JP5 vedeny na piny PF0 a PF1 mikrokontroléru. Zde se nacházejí vstupy ADC0 a ADC1 integrovaného analogově/digitálního převodníku. Samozřejmě na desce nechybí ani odpovídající filtr analogového napájecího napětí, takže je možné využít jeho plné, 10-bitové rozlišení.

Mezi zobrazovací prvky bychom měli zařadit i konektory, které slouží k připojení standardních znakových a grafických LCD displejů. Konektor LCD1602 umožňuje připojení znakových displejů s řadičem HD44780 a podsvětlením pomocí LED, konektor LCD12864 pak podporuje připojení moderních grafických displejů. U každého konektoru je k dispozici samostatný trimr pro nastavení optimálního kontrastu. Jelikož rozložení pinů je u většiny typů těchto displejů standardní, je možné displej osadit dutinovými piny (například z GM) a přímo nasunout na zvolený konektor. Před jejich použitím však důrazně doporučuji zkontrolovat, zda rozložení pinů skutečně odpovídá i vašemu typu displeje, jaké napájecí napětí displej vyžaduje, případně zda pro napájení podsvětlovacích LED nepožaduje externí omezovací rezistor!

Komunikační rozhraní
Jak již bylo uvedeno v úvodu, mikrokontrolér přímo na svém čipu integruje kompletní komunikační bloky s podporou dvou USARTů, I2C, SPI či programovacího rozhraní typu ISP a JTAG. Všechna tato rozhraní jsou dostupná pomocí pinů konektorů JP6 až JP9 (které je možné osadit například dvouřadými pinovými lištami). Kromě toho je na desce osazen i dvojitý převodník úrovní a základní komunikační piny rozhraní UART0 a UART1 jsou tak dostupné jako dva RS232 porty na konektorech typu D-Sub 9. Oba konektory jsou typu Female, takže umožňují přímé spojení buď s PC, nebo USB/RS232 převodníkem například typu PU232S, tedy bez použití křížených kabelů. Přičemž propojovací kabel RS232 je včetně USB kabelu součástí sady každého vývojového kitu Mega128A.


Obr. 7: Dva sériové porty RS232 jsou dostupné na konektorech typu D-Sub

Některé signály dalších komunikačních rozhraní jsou také dostupné na pinech konfiguračních propojek řady JP1. Jejich vyjmutím je možné zajistit odpojení jednoho nebo obou UARTů.

Programovací rozhraní ISP a JTAG jsou dostupná na samostatných konektorech typu MLW-10, se standardním rozložením pinů.

Další periferní obvody
Z dalších obvodů, které se na desce nacházejí, je možné jmenovat obvod reálného času typu DS1302 s krystalem 32,768 kHz či I2C EEPROM typu 24C04. Dále je možné na desku osadit také standardní teplotní čidlo z řady DS18B20, které však není standardní součástí kitu.


Obr. 8: DS1302 s krystalem jako zdroj reálného času

Obvod ULN2003A od společnosti Texas Instruments tvoří „Vysokonapěťové pole tranzistorů typu Darlington s vysokým výstupním proudem“. Jedná se tedy o tranzistorové budiče s maximálním napětím 50 V a proudem na jeden tranzistorový pár až 500 mA, integrované včetně ochranných a komutačních diod. První čtyři signály jsou na desce dostupné jako piny A, B, C a D pro řízení servo- a krokových motorů. Pátý výstup budí piezo-měnič BELL. Všechny signály opět procházejí přes konfigurační propojky JP2.


Obr. 9: Obvod ULN2003A a krokový motor

Aby byla možnost přímého řízení motorů kompletní, jsou na desce rovněž osazeny konektory SERVO1 a SERVO2 s výstupem PWM signálu přímo z pinů PB5 a PB6 mikrokontroléru. Po patřičném výkonovém posílení je možné jejich pomocí řídit samozřejmě i jiné prvky, než jen motory. Například výkonové LED, žárovky, topná tělesa apod.

Stejného libovolného využití nabízejí i již zmíněné piny konektorů JP6 až JP9, na jejichž pozice je možné osadit buď čtyři klasické dvouřadé pinové lišty, dutinkové lišty, konektory MLW-16 či přímo jednotlivé vodiče. Po odstranění příslušných konfiguračních propojek je pak prakticky libovolný dostupný GPIO pin či jeho integrovanou funkci možné použít i mimo desku vývojového kitu.

Dokumentace a ukázkové aplikace
Součástí každého balení vývojového kitu Mega128A je kromě RS232 a USB kabelu také vypalované CD, s technickými dokumenty a základními vývojovými nástroji. Jeho součástí je kompletní balík dokumentace nejen k mikrokontroléru a obvodů osazených na desce, ale také například základních typů znakových LCD a grafických displejů.

Dále se na CD nachází celkem 25 dobře komentovaných ukázkových příkladů základních aplikací, psaných v jazyce C a dostupný i včetně zkompilovaného .HEX souboru. Jednotlivé ukázkové aplikace jsou tak ihned připraveny k použití, přičemž základní aplikace jednoduchého dekadického čítače je v mikrokontroléru naprogramována již z výroby.

Jedná se o tyto ukázkové příklady:

24CX LED3 USART0(8MHz)
BUZZER LED4 USART1(8MHz)
INT0 and INT1 SEG1 adc_1602
LCD12864-ok SEG2 ds1302-seg
LCD1602_1 Timer0_smg ds18b20 + ds1302 + lcd1602
LCD1602_2 Timer1_smg eeprom
LED1 Timer2_smg key
LED2 Timer3_smg stmotor

Programování
Programování mikrokontroléru na desce vývojového kitu Mega128a je možné buď pomocí ISP nebo JTAG rozhraní. V základní sestavě není součástí mikrokontroléru žádný bootloader.


Obr. 10: univerzální programátor MiniProg, dostupný prostřednictvím našeho eShopu

Pro základní vývoj doporučujeme použít univerzální programátor MiniProg, vycházející z USBasp, který je v podobě malého USB modulu dostupný i prostřednictvím našeho eShopu (jedná se o neoficiální kit, jeho oficiální verze je dostupná pouze na uvedeném webu). Programátor MiniProg je dodáván včetně programovacího kabeleu kterým se na vývojovém kitu Mega128A propojuje s konektorem ISP. V tu chvíli se celá deska napájí z PC napětím, které poskytuje programátor, takže není potřeba používat externí napájecí zdroj.


Obr. 11: Programátor USBasp se připojuje do konektoru ISP

Jako ovládací software je možné použít celou řadu podporovaných aplikací, včetně AVRDUDE, nebo například eXtreme Burner – AVR.


Obr. 12: eXtreme Burner - AVR

Rovněž je pro programování vývojového kitu Mega128A možné použít například i PRESTO, přesto že neobsahuje shodný typ konektoru. Součástí programátoru PRESTO je ISP kablík, kterým se propojí s příslušnými piny v ISP konektoru na desce.


Obr. 13: PRESTO - rychlý USB programátor

Závěr
Pokud se Vám také vývojový kit Mega128A líbí, můžete využít skladové dostupnosti prostřednictvím našeho eShopu. Součástí každého balení jsou propojovací RS232 a USB kabely, stejně jako zmíněné CD s technickou dokumentací a velkým množstvím připravených a okomentovaných ukázkových aplikací, psaných v jazyce C. Rovněž si prostřednictvím našeho eShopu můžete objednat také zmíněný levný univerzální programátor MiniProg s podporou většiny obvodů z řady AVR a S51.


Obr. 14: Vývojový kit Mega128A, dostupný prostřednictvím našeho eShopu

Postupem času připravíme k vývojovému kitu Mega128A i několik vlastních příkladů a aplikací, dostupných volně ke stažení. Navíc máme v úmyslu jeho další použití i jako referenční platformy pro demonstraci funkce různých obvodů a modulů z naší produkce, takže se můžete již nyní těšit i na řadu knihoven, určený pro AVR GCC.

Odkazy & Download:
Vývojový kit MEGA128A v našem eShopu
MiniProg – Univerzální programátor AVR
Síťový napáječ 12V/500mA

Informace o obvodu ATmega128A
USBasp - USB programmer for Atmel AVR controllers
eXtreme Burner – AVR







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (4):

Zobrazit starší 30 dnů (4)...

host
4. Dne 07. 02. 2012 v 15:25 zaslal host
meety
Dobry den, jsou k dispozici zminene hotove priklady (zdrojove kody) pro tento vyvojovy kit? Dekuji.


Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
M66 QUECTEL
Quad-Band GSM/GPRS SMD modul s Bluetooth a rozměry 15,8 x 17,7 mm.
Skladem od 289 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007