//#define f 1000

#include <LiquidCrystal.h>
#include <Wire.h> 

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int potenciometro = A1; // ANALOG IN: A0, Terminal intermedio del potenciómetro.
float frecuencia = 100;
float frecuencia_actual = 100;
float valor = 0;
float fre;

float fm_freq = 90;

unsigned int conv = 0;
unsigned int maximo = 0;

void setup() {
  // inicio
  pinMode(9, OUTPUT);
  lcd.begin(16,2);
  TCCR1A = 0b10000000;
  TCCR1B = 0b00010001;

  maximo = (16000000/(2*6245))- 1;
  ICR1 = maximo;
  OCR1A = maximo >> 1;

  TIMSK1 = 0b00100000;
  sei();
  
}


void loop() {
  // put your main code here, to run repeatedly:
  valor = analogRead(A1);
fre = map(valor, 0, 1023, 0, 560);
frecuencia = 70 + fre / 10;
if (frecuencia != frecuencia_actual) { 
//fmtx_set_freq(frecuencia);
frecuencia_actual = frecuencia;
    lcd.clear();
//lcd.clear(); // Borra pantalla
lcd.setCursor(0,0); // Inicio del cursor
lcd.print("Frec.:");
lcd.print(frecuencia); 
lcd.print(" MHz");
lcd.setCursor(0,1); // Inicio del cursor
lcd.print("................");
delay(500);
lcd.setCursor(0,1); // Inicio del cursor
lcd.print("...LOCK   OK....");
delay(500);
lcd.setCursor(0,1); // Inicio del cursor
lcd.print("Po:");
lcd.print("6,7W");
lcd.setCursor(9,1); // Inicio del cursor
lcd.print("Pr:"); 
lcd.print("0,2W");
  }
}

ISR (TIMER1_CAPT_vect)
{
  //conv = analogRead(A0);
  //conv = map(conv, 0, 1023, 0, maximo);
  conv = 636;
  OCR1A = conv;
}
Loading chip...chip-scope