108Khz 10% from Nano?

Thread Starter

Torbek

Joined Apr 19, 2019
83
Can I get 108Khz 10% PWM out of an arduino Nano? Trying but I am not getting any output from pin 9. Tried pin 11 too


Code:
void setup() {

  pinMode(9, OUTPUT);  // Critical: Must set pin as OUTPUT



  // Reset Timer1 registers (safely override Arduino defaults)

  TCCR1A = 0;

  TCCR1B = 0;

  TIMSK1 = 0;  // Disable Timer1 interrupts



  // Configure Timer1 for Fast PWM, TOP = ICR1

  TCCR1A = _BV(COM1A1) | _BV(WGM11);  // Clear OC1A on compare, Fast PWM

  TCCR1B = _BV(WGM13) | _BV(WGM12) | _BV(CS10);  // No prescaler, Fast PWM



  ICR1 = 147;  // TOP for 108 kHz (16MHz / (147 + 1))

  OCR1A = 15;  // 10% duty (15/147 ≈ 10%)

}



void loop() {}
 

Thread Starter

Torbek

Joined Apr 19, 2019
83
I have now sussed this out, trouble is, I need to use timer1, and I need that for I2C! I am trying to use softwire for I2C but getting errors sadly... I would appreciate some help if anyone can spare a minute, I can post code
 
Top