what is the minimum and maximum frequency in arduino uno?

I wanted to get interrupt with nano seconds [ taking in mind the frequency for one clock pulse is 62.5 nano second ] , however , the only readings in the oscilloscope is in micro.

I did the following :

  • pre-scaler is set to one clock increment
  • ctc is activated (clear timer on compare match)

I used the code below

const uint16_t t1_comp=50; // compare match value 

void setup() {

DDRB |=(1<<PB5);
  TCCR1A=0;
  //TCCR1B |=0B00001001;
  TCCR1B |=(1<<CS10);
  TCCR1B &=~(1<<CS11);
  TCCR1B &=~(1<<CS12);
  TCCR1B |=(1<<WGM12);
  TCNT1=0;
  OCR1A=t1_comp;
  cli();
  TIMSK1 |=(1<<OCIE1A);
  sei();
}

void loop() {
}

ISR(TIMER1_COMPA_vect)
{  
  PORTB ^=(1<<PB5);  
}

any correction is highly appreciated

BR

I wanted to get interrupt with nano seconds

Please explain what this means, and what you are actually trying to do.

i wanted to get a 900ns pulse or some thing near that using the interrupt on compare match of timer one

There are two ways to generate such short pulse:
SW way: toggle pin, add enough nop() instruction to get the right pulse length and toggle again (with interrupts disabled ofc).
HW way: use an Output Compare feature of a timer

To answer your question, check the datasheet, paragraph 28.4.