This is an old revision of the document!


Laboratorul 08. Timing & Timere

Timere Arduino

Platforma Ardunio utilizează microcontrollere din familia Atmel megaAVR, ce conțin un număr de timere hardware:

  • Modelul ATmega328, disponibil pe Arduino Uno, are 3 timere (timer0 - timer2), dintre care unul pe 16 biți
  • Modelul ATmega2560, disponbil pe Arduino Mega, are 6 timere (timer0 - timer5), 4 dintre ele fiind pe 16 biți

În modul de lucru clasic, timer0 este utilizat de funcțiile delay(), millis() și micros(). În plus, timerele controlează și pinii PWM ai plăcuțelor Arduino.

Timerele pot fi modificate manual, în funcție de comportamentul dorit, prin regiștrii corespunzători. Pentru a găsi acești regiștri și biții ce trebuie modificați, trebuie să consultați documentația microcontroller-ului. De exemplu, pentru ATmega328, documentația poate fi găsită aici. La pagina 74 puteți găsi informații despre timer-ul pe 8 biți și regiștrii acestuia.

Software Timer API

Timerele menționate anterior sunt hardware, iar utilizarea lor nu este cea mai facilă. FreeRTOS simplifică acest lucru, printr-un API specializat în crearea de timere software. Aceste timere sunt mai ușor de utilizat, întrucât funcționează ca o punte între programator și circuitele electronice.

În documentația FreeRTOS, informații despre acest API se găsesc începând cu pagina 253.

patr/laboratoare/08.1641466743.txt.gz · Last modified: 2022/01/06 12:59 by alexandru.ionita99
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0