#include #include #define output(directions,pin) (directions |= pin) // set port direction for output #define input(directions,pin) (directions &= ~pin) // set port direction for input #define set(port,pin) (port |= pin) // set port pin #define clearpin(port,pin) (port &= (~pin)) // clear port pin #define pin_test(pins,pin) (pins & pin) // test for port pin #define bit_test(byte,bit) (byte & (1 << bit)) // test for bit set char SINE_LENGTH = 101; char SINEWAVE[101] ={128,136,143,151,159,167,174,182,189,196,202,209,215,220,226,231,235,239,243,246,249,251,253,254,255,255,255,254,253,251,249,246,243,239,235,231,226,220,215,209,202,196,189,182,174,167,159,151,143,136,128,119,112,104,96,88,81,73,66,59,53,46,40,35,29,24,20,16,12,9,6,4,2,1,0,0,0,1,2,4,6,9,12,16,20,24,29,35,40,46,53,59,66,73,81,88,96,104,112,119,127}; #define MOSFET_PIN_A (1 << PA7) #define MOSFET_PIN_B (1 << PB2) // output locations #define TRIG_PIN (1<100; D=D-10){ play_sine(D,1); //play 3 cycles at each freq } } else{ OCR0A = 0x00; OCR0B = 0x00; } } }