Stap 2: Open het voorbeeldbestand in de Arduino IDE
Toegang krijgen tot mijn Timer2_Counter 0.5us-precisie timingfuncties, moet u eerst aanroepen "setup_T2();" om de Atmega Timer2 prescalers en dergelijke juist zijn ingesteld. In mijn voorbeeldcode belde ik deze functie binnen de Arduino Setup functie.
Deze timer is 8 x nauwkeuriger dan wat de ingebouwde Arduino micros() functie geeft u!
U kunt bellen "get_T2_micros();" om de waarde van de microseconde van de timer, naar de dichtstbijzijnde waarde van 0,5 microseconde, of u kunt bellen "get_T2_count();" om de waarde van count op de microcontroller van Timer2. Sinds de graaf stappen één waardetelling elke 0.5us, deze waarde te delen door 2 geeft u de microseconde waarde op de timer.
Dit Timer2_Counter code automatisch voor de 8-bits timer zorgt loopt over via een interrupt, en zal daarom terugkomen waarden tellen vanaf 0 4,294,967,296, aangezien het waarden tellen als een niet-ondertekende long-gegevenstype geretourneerd. Dit komt overeen met microseconde waarden van 0us naar 2,147,483, 648us. Dit betekent dat de timer tot 35.79 minuten vóór het overvolle terug naar 0 kunt uitvoeren. Als u wilt handmatig opnieuw instellen de achterkant van de timer op nul u kan de "reset_T2();" functie aanroepen.
Nogmaals, voor een volledige beschrijving van de code, verwijzen naar mijn belangrijkste artikel hier, maar ook de documentatie op het tabblad Timer2_Counter, die automatisch geopend in de Arduino IDE wanneer u het bestand "Timer2_Counter_Basic_Example.ino" enkel een minuut geleden opengesteld.