From 4bf2c7d7c60b6e49d2403476d50b471b35e89784 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20V=C3=ADtek?= <fotomartinkv@gmail.com>
Date: Wed, 28 Dec 2016 17:10:37 +0100
Subject: [PATCH] =?UTF-8?q?P=C5=99id=C3=A1n=20=C4=8Dl=C3=A1nek=20o=20nov?=
 =?UTF-8?q?=C3=BDch=20ATtiny?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 articles/2016/attiny417-814-816-817.md | 127 +++++++++++++++++++++++++
 1 file changed, 127 insertions(+)
 create mode 100644 articles/2016/attiny417-814-816-817.md

diff --git a/articles/2016/attiny417-814-816-817.md b/articles/2016/attiny417-814-816-817.md
new file mode 100644
index 00000000..c6871e5a
--- /dev/null
+++ b/articles/2016/attiny417-814-816-817.md
@@ -0,0 +1,127 @@
+```
+title = "Nové AVR mikroprocesory ATtiny417/814/816/817"
+perex = "Krátké seznámení s novými mikroprocesory ATtiny firmy Microchip."
+tags = ["AVR", "Mikroprocesory"]
+image = "attiny_lead.jpg"
+
+```
+
+# Ăšvod
+Na podzim firma Microchip (Microchip [koupil](http://www.microchip.com/announcements/microchip-technology-inc-acquires-atmel) Atmel [začátkem roku 2016](http://www.atmel.com/about/news/release.aspx?reference=tcm:26-82057)) oznámila čtyři nové mikroprocesory řady [ATtiny](http://www.atmel.com/products/microcontrollers/avr/tinyavr.aspx), což jsou nejmenší mikroprocesory rodiny AVR s maximálně 24 piny.
+
+|  Model  |FLASH|SRAM|EEPROM|PoÄŤet pinĹŻ| Pouzdro |
+|---------|-----|----|------|----------|---------|
+|[ATtiny417](http://www.atmel.com/devices/ATtiny417.aspx)| 4kB |256B| 128B |    24    |QFN      |
+|[ATtiny814](http://www.atmel.com/devices/ATtiny814.aspx)| 8kB |512B| 128B |    14    |SOIC     |
+|[ATtiny816](http://www.atmel.com/devices/ATtiny816.aspx)| 8kB |512B| 128B |    20    |QFN, SOIC|
+|[ATtiny817](http://www.atmel.com/devices/ATtiny817.aspx)| 8kB |512B| 128B |    24    |QFN      |
+
+![Pinout](pinout.png =650x)
+
+# Výbava
+Jedná se o 8-bitový mikroprocesor s [Harwardskou architekturou](https://cs.wikipedia.org/wiki/Harvardsk%C3%A1_architektura). Struktura registrů je velice podobná té, kterou nalezneme u mikroprocesorů ATxmega. V **C** tedy můžeme pro přístup k jednotlivým registrům používat struktury jednotlivých modulů, což je na programování velice příjemné.
+- napájení 1.8 - 5V
+- PracovnĂ­ frekvence aĹľ 20MHz
+    - 16/20MHz vnitřní RC oscilátor
+    - 32.768kHz ultra low power vnitřní RC oscilátor
+    - 32.768kHz externĂ­ krystal
+    - externĂ­ zdroj pracovnĂ­ frekvence
+- 3 režimy spánku
+- watchdog
+    - 8ms aĹľ 8s
+- přerušení
+    - 2 priority přerušení - normal/high
+    - round-robin scheduling scheme - všechna přerušení se vykonají tak, aby se nahromaděná přerušení vykonávala rovnoměrně
+    - Non-Maskable Interrupts - vykonají se vždy, i když jsou přerušení globálně zakázaná
+    - všechny I/O piny mohou být využity pro externí přerušení
+- event systém
+    - 6 komunikačních kanálů, po kterých mohou periferie komunikovat bez využívání CPU
+- ÄŤasovaÄŤe/ÄŤĂ­taÄŤe
+    - 1x 16-bit typ A
+        - 3x PWM
+        - 2x 8-bit ve split mĂłdu
+    - 1x 16-bit typ B
+        - input capture - událost, měření frekvence, délky pulzu
+        - single shot - generování pulzu definované délky
+        - 8-bit PWM
+    - 1x 12-bit typ D
+        - aĹľ 32Mhz
+        - generování průběhů pro řízení LED, motorů, měničů, H-můstků
+        - 4x výstup - WOA, WOB, WOC, WOD
+        - deadtime
+    - 1x 16-bit RTC (hodiny reálného času)
+        - perioda 2s až 18h s rozlišením 30.5&#181;s nebo 1s
+        - RTC - Real Time Couter
+        - PIT - Periodic Interrupt Timer
+- USART
+    - fractional baud rate generator - možnost nastavení baudrate nezávisle na pracovní frekvenci
+    - podpora RS-485
+- SPI
+- TWI (I<sup>2</sup>C)
+    - 100kHz, 400kHz, 1Mhz
+    - podpora SMBus
+- CCL - Configurable Custom Logic
+    - sestavení logického obvodu uvnitř mikroprocesoru
+    - 2x pravdivostnĂ­ tabulka
+    - 6x vstup, 2x výstup
+    - jakákoliv logická funkce (dle pravdivostní tabulky)
+    - Gated D Flip-Flop, JK Flip-Flop, gated D Latch, RS Latch
+- AC - analogový komparátor
+    - 50ns reakÄŤnĂ­ doba
+    - detekce prĹŻchodu nulou
+    - hystereze - 0-10-25-50mV
+- ADC
+    - rozlišení 10-bit
+    - aĹľ 150k vzorkĹŻ za sekundu
+    - aĹľ 12 vstupĹŻ
+    - teplotnĂ­ senzor
+- DAC
+    - rozlišení 8-bit
+    - aĹľ 350k vzorkĹŻ za sekundu
+    - zátěž 5k&Omega;/30pF
+- napěťová reference
+    - zvlášť pro AC, ADC, DAC
+    - 0.55-1.1-1.5-2.5-4.3V
+- PTC - Peripheral Touch Controller
+    - detekce pro kapacitní dotykové senzory - tlačítko, posuvník, kolečko
+    - 1 pin pro 1 elektrodu - nejsou zapotřebí žádné externí součástky
+- CRCSCAN - [CRC](https://cs.wikipedia.org/wiki/Cyklick%C3%BD_redundantn%C3%AD_sou%C4%8Det) kontrola paměti
+    - vytváření kontrolního součtu boot sekce, aplikační sekce nebo celé Flash
+    - detekce chyby v uloženém programu
+- UPDI - rozhraní pro programování a debugování
+
+# Jak se programujĂ­?
+Bohužel vývojáři Microchipu/Atmelu vymysleli nové programovací rozhraní **UPDI** (*Unified Program and Debug Interface*), které využívá pouze 1 pin mikroprocesoru - reset. Pro přenos dat se používá half-duplex UART. Začátek programování se indikuje 12V pulzem, nebo nastavením pojistek.
+
+Dejte si pozor na první série, ty neměly z výroby nastavené programovací pojistky, ale byl nutný 12V pulz!
+
+Zatím [je vyzkoušeno](http://www.avrfreaks.net/forum/tiny817-updi-programming), že pro programování lze použít [JTAG ICE 3](http://www.atmel.com/tools/jtagice3.aspx) nebo [Atmel ICE](http://www.atmel.com/tools/atatmel-ice.aspx). Případně [lze použít](http://www.avrfreaks.net/forum/updi-programming-using-attiny817-xmini) programátor, který je integrovaný na vývojové desce [ATTINY817-XMINI](http://www.atmel.com/tools/ATTINY817-XMINI.aspx).
+
+Podpora pro programování je v nejnovějším [Atmel Studiu](http://www.atmel.com/tools/ATMELSTUDIO.aspx). Pod Linuxem se situace složitější. Ve Fedoře je aktuálně zabalíčkováno avr-gcc 6.0.2, ve kterém není zakompilována podpora pro tyto nové mikroprocesory. Řešením je použít [Atmel Packs](http://packs.download.atmel.com/), stáhnout si nové knihovny a zkompilovat si avr-gcc, avr-binutils a avr-libc.
+
+# Příklad využití Event systému a CCL
+V application note [AVR42778](http://www.atmel.com/Images/Atmel-42778-Core-Independent-Brushless-DCFan-Control-Using-Configurable-Custom-Logic-on-ATtiny817_ApplicationNote_AVR42778.pdf) se můžete dočíst, jak lze velmi jednoduše a efektivně využít tyto mikroprocesory pro řízení otáček stejnosměrného bezkartáčového motoru. Řízení otáček nespotřebovává žádný výpočetní čas CPU.
+
+![Řízení bezkartáčového DC motoru](dc_brushless_avr_controller.png =650x)
+
+Časovač/čítač TCA vytváří základní PWM signál. Vstup z hallova čidla je porovnáván na komparátoru, který vytváří signál, který říká, které cívky mají být sepnuté. Při překlopení komparátoru se zárověn spustí časovač/čítač TCB, který vytváří dead time signál. Všechny tyto signály jdou do CCL (*Configurable Custom Logic*), kde se z nich vytvoří dva signály pro spínání tranzistorů.
+
+![Průběhy řídícího systému](dc_brushless_waveforms.png =650x)
+![Zapojení CCL a výkonové části](dc_brushless_schema.png =650x)
+
+# Závěr
+Tyto nové AVR mikroprocesory řady tiny nabízejí v malém pouzdře mnoho skvělých vlastností, kdy některé byly přejaté z řady xmega. Řekl bych, že se momentálně jedná o jedny z nejvybavenějších AVR mikroprocesorů.
+
+Jako další významné plus vidím cenu, kdy se dá koupit ATtiny817 za 25Kč ([Farnell](http://cz.farnell.com/microchip/attiny817-mfr/mcu-8bit-pic24fj-20mhz-qfn-24/dp/2678821?ost=attiny817&categoryId=700000004187&searchView=table&iscrfnonsku=false)), což z ní dělá jeden z nejlevnějších AVR mikroprocesorů.
+
+Pro bastlíře je určitě mínus pouzdro QFN, které se ručně nepájí moc dobře a programovací rozhraní UPDI, se kterým nelze použít jedoduché programátory jako třeba [USBasp](https://ok1kvk.cz/clanek/2011/usbasp-programator-avr/).
+
+Pro otestování lze koupit vývojový kit ATTINY817-XMINI za 230Kč ([Farnell](http://cz.farnell.com/microchip/attiny817-xmini/dev-board-avr-microcontroller/dp/2674883?ost=attiny817&categoryId=700000005178&searchView=table&iscrfnonsku=false), [TME](http://www.tme.eu/cz/details/attiny817-xmini/vyvojove-kity-pro-obvody-atmel/atmel/)), který obsahuje programátor/debugger, virtuální sériový port, LED, tlačítko a dvě kapacitní dotyková tlačítka.
+
+# Zdroje
+- [ATtiny817 datasheet](http://www.atmel.com/Images/Atmel-42721-ATtiny417-814-816-817_Complete.pdf)
+- [AVRFREAKS](http://www.avrfreaks.net/forum/attiny417-attiny814-attiny816-attiny817?page=all)
+- [AVR42778](http://www.atmel.com/Images/Atmel-42778-Core-Independent-Brushless-DCFan-Control-Using-Configurable-Custom-Logic-on-ATtiny817_ApplicationNote_AVR42778.pdf)
+
+# FĂłrum
+Podělte se s námi o váš názor na nové ATtiny a případně se pochlubte vaším zapojením s některou z nových ATtiny na našem [fóru](https://forum.ok1kvk.cz).
-- 
GitLab