// for https://forum.arduino.cc/t/generating-pwm-square-wave-output/1120387/4
void setup () {
// Pin 10(OC1B) is output
pinMode(10, OUTPUT);
//Load 1000 into OCR1A for 15.98KHz
TCCR1A = 0;
TCCR1B = 0;
Serial.begin(115200);
Serial.print("TCCR1A:0b");
Serial.println(TCCR1A);
Serial.print("TCCR1B:0b");
Serial.println(TCCR1B);
OCR1A = 1000;
//Load 200 into OCR1B for 20% duty cycle
OCR1B = 500;
// non-inverted fast PWM on OC1B with prescalar of 1 for 15.98KHz fast PWM
TCCR1A = (1 << COM1B1) | (1 << WGM11) | (1 << WGM10);
TCCR1B = (1 << WGM13) | (1 << WGM12) | (0b001 << CS10);
}
void loop() {
}