Hola a todos!!!
Me ha surgido una dudilla.
Tengo un potenciómetro que me regula la tensión del una entrada para ADC, la tensión va d 0 a 5 V. Lo que quiero es que a partir de un valor determinado de tensión se active una salida del pic. Creo que no se puede hacer una compración en un IF con un float, no? entonces comparo el valor d "q" que es un entero despejando de la ecuación del adc con una "q" de 3v y m da un valor de 614, pero ni por esas me deja, os dejo el código para ver si m podeis dar una solucion ok??
#include <16f877.h>
#device adc=10
#fuses xt,nowdt
#use delay(clock=4000000)
#include <lcd.c>
#use standard_io(b)
#use standard_io(d)
void main(){
int16 q;
int16 j;
int l;
float p;
port_b_pullups(true);
setup_adc_ports(an0);
setup_adc(adc_clock_internal);
set_tris_b(0x00);
lcd_init();
for(;
{
set_adc_channel(0);
delay_us(20);
q=read_adc();//Valor ADC
p=5.0*q/1024.0;//Voltage
printf(lcd_putc,"\fADC= %6ld",q);
printf(lcd_putc,"\nVoltage= %01.2fV",p);
delay_ms(100);
if(q>>614)
output_high(pin_d0);
else
output_low(pin_d0);
}}