#include "Blinker.hpp"



Blinker::Blinker(){
}

void Blinker::initialize(){
  ATOMIC_BLOCK(ATOMIC_RESTORESTATE){
          Serial.println("Beginning initialization!");
          TCCR2A |= (1<<WGM21);
          TCCR2A &= ~(1<<WGM20);
          TCCR2B |= (1<<CS22) | (1<<CS21) | (1<<CS20);
          TIMSK2 |= (1<<OCIE2A);
          TCNT2 = 0;
          OCR2A = static_cast<uint8_t>(200);

          Serial.print("TCNT2: "); Serial.println(TCNT2, BIN);
          Serial.print("OCR2A: "); Serial.println(OCR2A, BIN);
          Serial.print("TCCR2A: "); Serial.println(TCCR2A, BIN);
          Serial.print("TCCR2B: "); Serial.println(TCCR2B, BIN);
          Serial.print("TIMSK2: "); Serial.println(TIMSK2, BIN); Serial.println(TIMSK2, BIN);
          Serial.print("TIFR2: "); Serial.println(TIFR2, BIN);
          Serial.print("SREG: "); Serial.println(SREG, BIN);

          Serial.println("Initialization done!");
  }
}
