diff --git a/articles/2016/atmega328p-preruseni.md b/articles/2016/atmega328p-preruseni.md deleted file mode 100644 index 0b469afe6b4bb29a600f18787db7cff35b0d3e35..0000000000000000000000000000000000000000 --- a/articles/2016/atmega328p-preruseni.md +++ /dev/null @@ -1,46 +0,0 @@ -``` -title = "Atmega328p: pĹ™erušenĂ ÄŤasovaÄŤe" -perex = """ -Pokud programujete microcontrollery z rodiny AVR tak pĹ™erušenĂ jsou velmi uĹľiteÄŤnĂ˝m -nástrojem. V tomto ÄŤlánku se pokusĂm vysvÄ›tlit jak fungujĂ a nastĂnĂm pĹ™Ăklady -pro ÄŤip Atmega328p. -""" -tags = ["ProgramovánĂ", "AVR"] -``` - -Pokud programujete microcontrollery z rodiny AVR tak pĹ™erušenĂ jsou velmi uĹľiteÄŤnĂ˝m -nástrojem. V následujĂcĂch řádkách se pokusĂm vysvÄ›tlit jak fungujĂ a nastĂnĂm -pĹ™Ăklady pro ÄŤip Atmega328p. - -## Co je ÄŤasovaÄŤ - -V rodinÄ› microcontrollerĹŻ AVR je ÄŤasovaÄŤ vlastnÄ› ÄŤĂtaÄŤ - periferie, která jednou -za definovanĂ˝ ÄŤasovĂ˝ interval zvýšà hodnotu registru o 1. Dalšà moĹľnostĂ kromÄ› -zvýšenĂ po ÄŤasovĂ©m intervalu je moĹľnost zvýšenĂ pĹ™i signálu na urÄŤitĂ©m pinu, ale -to je mimo rozsah tohoto ÄŤlánku. - -## Konfigurace ÄŤasovaÄŤe - -Konfigurace ÄŤasovaÄŤe je pomÄ›rnÄ› jednoduchá - staÄŤĂ ho povolit v jeho registru. -To se provádĂ pomocĂ `TCCR1B = (1 << CS10);`. Tento pĹ™Ăkaz nastavĂ, Ĺľe se do -registru `TCNT1` pĹ™iÄŤte 1 pĹ™i kaĹľdĂ©m hodinovĂ©m cyklu - tedy napĹ™ 1 000 000x za sekundu -pokud máte frekvenci procesoru 1MHz. - -DajĂ se nastavit i jinĂ© hodnoty - tÄ›m se Ĺ™Ăká pĹ™eddÄ›liÄŤka. PĹ™eddÄ›liÄŤka (prescaler) -funguje tak, Ĺľe frekvenci procesoru vydÄ›lĂ danou hodnotou - tedy pokud je pĹ™eddÄ›liÄŤka -8 a frekvence procesoru je 8MHz tak se pĹ™iÄŤte do ÄŤĂtacĂho registru (`TCNT1`) -pĹ™iÄŤte 1000 000x za sekundu. - -RĹŻzná nastavenĂ registru `TCCR1B` a odpovĂdajĂcĂ hodnoty pĹ™eddÄ›liÄŤky ukazuje -následujĂcĂ tabulka (vycházejĂcĂ z [datasheetu][datasheet] strana 134) - -| NastavenĂ registru | PĹ™eddÄ›liÄŤka | -|--------------------------------|-----------------------| -| 0 | ÄŚasovaÄŤ je vypnut | -| (1 << CS10) | 1 (žádná pĹ™eddÄ›liÄŤka) | -| (1 << CS11) | 8 | -| (1 << CS11) | (1 << CS10) | 64 | -| (1 << CS12) | 256 | -| (1 << CS12) | (1 << CS10) | 1024 | - -[datasheet]: http://www.atmel.com/images/atmel-8271-8-bit-avr-microcontroller-atmega48a-48pa-88a-88pa-168a-168pa-328-328p_datasheet_complete.pdf