Časovač (timer)

Page

Stránky / Arduino / Pod kapotou Arduina /

Arduino Uno používa mikrokontrolér ATmega328P a praktický každý mikrokontrolér v sebe obsahuje časovače. Časovače sa dajú využívať na množstvo úloh. Postupne sa s týmito možnosťami oboznámime.

ATmega328P

Mikrokontrolér obsahuje 3 časovače:

  • Timer0 - 8-bitový. Je využitý na aktualizáciu času v Arduine.
  • Timer1 - 16-bitový.
  • Timer2 - 8-bitový.

Časovače v ďalších mikrokontroléroch

ATtiny85

Mikrokontrolér obsahuje 2 časovače:

  • Timer0 - 8-bitový.
  • Timer1 - 8-bitový.

ATtiny13A

Mikrokontrolér obsahuje 1 časovač:

  • Timer0 - 8-bitový.

ATmega2560

Mikrokontrolér obsahuje 6 časovačov:

  • Timer0 - 8-bitový.
  • Timer1 - 16-bitový.
  • Timer2 - 8-bitový.
  • Timer3-5 - 16-bitový.

Zdroj hodinového signálu

Časovač potrebuje na svoju činnosť zdroj hodinového signálu. Ten môže byť rôzny a od toho závisí, ako sa bude časovač prejavovať.

  • Žiadny zdroj hodín - Vtedy je časovač vypnutý.
  • Interný hodinový signál - Základný hodinový signál je možné pomocou preddeličiek znížiť na požadovanú hodnotu. Deličky majú obvykle hodnoty 1, 8, 64, 256, 1024, ale niekedy sa vyskytujú aj iné hodnoty. Zníženie frekvencie hodín je užitočné, pretože obvykle časovače nepoužívame na vysokej frekvencii, ale snažíme o nejakú frekvenciu, ktorá je bližšia potrebám. Napríklad ak potrebujeme generovať nejaký signál na frekvencii 1 Hz, stačí nám signál základných hodín znížiť deličkou a až potom s ním nejako manipulovať.
  • Externý hodinový signál - Externý hodinový signál nám umožňuje rátať externé signály. Vtedy hovoríme, že časovať pracuje ako počítadlo.

Režim generovania signálu

Generovaný signál sa môže tvoriť v rôznych režimoch. Každý režim má svoje špecifické nastavenie registrov. Arduino napríklad tieto režimy používa na generovanie PWM signálu.

  • Normálny
  • PWM Phase Correct
  • CTC
  • Fast PWM
  • PWM Phase and Frequency Correct

Online kalkulačka

V článkoch sa na generátor zdrojového textu budem obracať často. Preto je vhodné, ak si zapamätáte tento hypertext a budete ho používať vo svojich projektoch.

CTC Timer Calculator

Články v blogu o časovačoch ATmega328P

​Iné mikrokontroléry


24.01.2017


Menu