Go Down

Topic: 100KHZ PWM with 41.66% duty cycle (Read 339 times) previous topic - next topic


I tried a code to obtain 100KHZ PWM output with 41.66% duty cycle by reading an analog value at A0 which is compared with a reference 5V value for obtaining PWM value.

Can some one help me with the code? Any help is very much appreciated.

here is my code.

 int Pwmpin=9;//Pwm Output Pin
  int Fchange= A0;//Frequency change through Potentiometer
  void setup()
  pinMode(Pwmpin, OUTPUT);//Pwm pin as Output
  TCCR1A=_BV(COM1A1)|_BV(COM1B1);//Non-inverted Mode
  TCCR1B=_BV(WGM13)|_BV(CS11);//Prescalar 8

  void loop(){
  float freq=0;
  float count=10000,countt=0,Pinput=0;

 ICR1=count;//variable Frequency
 freq= int(16000000/countt);
 Serial.print("Pwm Freq =");
 Pinput=analogRead(A0);//Read input value
 Serial.print("adc value is:");
 Serial.print("pwm value is:");

Go Up