// Define CPU Clock
#define F_CPU 16000000UL

// Include Libraries
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "H_bridge.hpp"

// Define Hardware Mapping
#define outA (1 << PB1) // Arduino pin 9 (OC1A)
#define outB (1 << PB2) // Arduino pin 10 (OC1B)

// Main Function
int main(void) {

    // Initialize H-Bridge
    H_bridge motor1(outA, outB, PORTB, DDRB);

    while (1) {

        motor1.motor_CW(PORTB);  // Rotate motor clockwise
        _delay_ms(1741);         // Wait for 1741 ms
        motor1.motor_CCW(PORTB); // Rotate motor counterclockwise
        _delay_ms(1741);         // Wait for 1741 ms

    }

    return 0;
}