Quiero enviar un dato a mi PC por el protocolo rs232 , al momento de querer enviar el valor de una variable flotante mi PC recive una serie de caracteres sin sentido cuando debería de recibir un número con dos decimales, para ver los datos que recibía la PC de mi pic fue el Hércules
Use un modulo rs232 a ttl y un cable db9 a USB para poder conectar los pines rx y tx a mi PC espero alguien me pueda asesorar.
Dejo mi código abajo por si alguien puede ayudar
# include <16f877a.h>
# device adc=16
# fuses xt, wdt, brownout,NOWDT
# use delay (clock = 4M)
#use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7, bits=8)
# use standard_io (a,b,c,d)
# include <lcd.c>
float bits_analog;
float xvalu;
void main (){
lcd_init();
LCD_PUTC("\f");
setup_adc_ports (AN0_AN1_AN3);
setup_adc(adc_clock_div_16);
setup_ccp1(CCP_PWM);
setup_timer_2(T2_DIV_BY_16, 255,1);
while (true){
set_adc_channel(0);
delay_ms (2);
bits_analog = read_adc();
delay_ms (300);
set_pwm1_duty (bits_analog);
delay_ms (2);
xvalu=(bits_analog*100/65528);
putc(xvalu);
LCD_PUTC("\f");
LCD_gotoxy(1,1);
printf(lcd_putc,"valor: %f ",xvalu);
lcd_gotoxy(12,1);
lcd_putc("%");
}
}