Novinka:Seriál tutoriálů k moderním AVR
(Kategorie: Mikroprocesory)
Napsal gripennn
17.01.2019 00:00

V krátkém textu si vás dovolím pozvat k prohlídce vznikajícího tutoriálu na novou řadu mikrokontrolerů Atmega a Attiny.

Zdravím čtenáře MCU.cz. Jistě jste už zaznamenali docela skrytý příchod "moderních AVR". Jmenovitě mikrokontrolerů

Attiny212
Attiny412
Attiny214
Attiny414
Attiny814
Attiny1614
Attiny416
Attiny816
Attiny1616
Attiny3216
Attiny417
Attiny817
Attiny1617
Attiny3217
Atmega3208
Atmega4808
Atmega3209
Atmega4809

které klamou svým názvem a navozují dojem, že jsou to jen další bráchové rozšířených "Meg" a "Tin". A to je škoda, protože jediné co s nimi mají společného je jádro. Periferie jsou úplně jiné a po prvních pokusech si dovolím tvrdit, že znatelně výkonější. Klame i samotný název a rozdělení na "tiny" a "mega". Troufám si totiž říct, že některé Tiny ve většině parametrů (od RAM, přes Flash až po počet periferí) značně překonávají řadu starých čipů Atmega. A do třetice mohou klamat i představou, že je tak jak 90% všech starých AVR půjde programovat pomocí ISP. Z mého úhlu pohledu (pohledu uživatele) jde vlastně o novou platformu a čekal bych nové jméno. Mohl bych na tomto místě psát o řadě věcí, které rozšiřují nebo zjednodušují použití ve srovnání se starými AVR, ale tohle všechno už ale asi víte (nebo se to můžete dočíst jinde a lépe), takže přejdu k jádru věci.

Potenciál, velmi příznivé ceny samotných čipů i existence rozumně plnohodnotného debuggeru za pár stovek mě zaujali do takové míry, že jsem se rozhodl si je osvojit. A protože nějaké ucelené tutoriály jsem na netu nenašel rozhodl jsem se nějaké postupně sepsat. Rozhodně necílím na to popsat všechny možnosti všech periferií, protože to by asi vydalo na slušnou knihu. Snažím se jen ucelit informace, které pří "průzkumu" získám a sepsat je do několika modelových příkladů. A na tomto místě bych chtěl potenciální zájemce o tuto platformu nasměrovat na svůj seriál tutoriálů. Budu rád za zpětnou vazbu nebo za zajímavé náměty a klidně i za nějaké publikovatelné komentované zdrojové příklady.

K předvádění jsem si vybral kit Attiny416 Xnano, hlavně pro jeho potenciál triviální přestavby (odstranění 3 rezistorů) na programátor/debugger. K půlce ledna se mi podařilo dát dohromady tutoriály o systému Clocku, o GPIO (PORTech), popsat vysílání i příjem po UARTu, omrknout jeden z čítačů/časovačů a nakousnout lákavý Event Systém (kteří možná znáte z Atxmeg).


AVR nové generace 14.12.2018
Nová generace AVR je vlastně nová a zajímavá rodina mikrokontrolerů. V úvodním dílu tutoriálu si připravíme půdu pro experimentování a prohlédneme hlavičkové soubory a styl programování.

Clock I 14.12.2018
První díl o možnostech a správě clocku na čipech AVR 1-serie. Na několika jednoduchých vzorových příkladech se seznámíme s vnitřními zdroji clocku a s možnostmi jejich kalibrace.

GPIO I 19.12.2018
Rozcvička na téma ovládání portů na moderních AVR.

USART I - 30.12.2018
První díl o UARTu na moderních AVR (Attiny416). Obsahuje příklad na odesílání pomocí printf_P a informace o "bugu" mEDBG jako USB-UART převodníku.

USART II - 2.1.2019
Druhý díl o UARTu na moderních AVR (Attiny416). Obsahuje příklad na příjem textových pokynů s číselnými argumenty s využitím přerušení. Navazuje na předchozí díl.

TCA I - 12.1.2019
První díl o Timeru/Counteru A. Ve třech příkladech se seznámíme s vytvářením PWM. V prvním zkusíme řídit tři modelářské servomotorky, ve druhém zredukujeme rozlišení z 16ti na 8bit a získáme za to 6 výstupů pro PWM. Ve třetím si primitivně pohrajeme s jasem LEDky a vytvoříme si animované rozsvěcení a zhasínání.

Eventy Systém I - Nejčerstvější (16.1.2019)
Tutoriál o ústřením prvku moderních AVR - o Event systému. Seznámíme se s účelem a způsobem konfigurace systému. V příkladech si vyzkoušíme přebrat eventy z PORTů a timeru TCA0 a taky si zkusíme eventy vypustit z čipu a generovat je softwarově.



Dovolil bych si vás tedy pozvat na tutoriál AVR 1-serie

a požděně popřát přijemné bastlení v novém roce.





Tato novinka je z -MCU-mikroelektronika
( http://mcu.cz/news.php?extend.4067 )