Hola. Intento realizar un pequeño proyecto con un PIC18F4550, en el cual quiero leer por un pin analógico la señal de un LM35, y que muestre los datos obtenidos a través de un módulo Bluetooth hacia un celular u ordenador, y al mismo tiempo que el PIC reciba datos con el Bluetooth y encienda o apague unos leds.
Mi problema es que en la programación del PIC utilizo el comando "getch()" y la señal del sensor la manda hasta que yo envío un dato al getch()
Espero que me puedan ayudar para que me esté enviando los datos del sensor y poder encender o apagar los leds cuando yo le envíe datos. Gracias.
Mi problema es que en la programación del PIC utilizo el comando "getch()" y la señal del sensor la manda hasta que yo envío un dato al getch()
Espero que me puedan ayudar para que me esté enviando los datos del sensor y poder encender o apagar los leds cuando yo le envíe datos. Gracias.
PHP:
#include <18f4550.h>
#use delay(crystal =4MHz)
#include <string.h>
#fuses HS
#fuses NOPROTECT
#fuses NOPUT
#fuses NOWDT
#fuses MCLR
#use rs232(UART1, baud= 9600, xmit=pin_c6, rcv=pin_c7, parity=n, bits=8, stop=1)
#use standard_io(b)
#use standard_io(a)
#define led1 pin_b0
#define led2 pin_b1
char dato;
float temperatura;
long valor;
void main()
{
while(true)
{
dato=getc();
setup_adc(adc_clock_internal);
setup_adc_ports(all_analog);
delay_us(20);
set_adc_channel(0);
delay_us(50);
valor=read_adc();
//temperatura=(0.488758*(float)valor);
printf("%2.1f\n\r",temperatura);
delay_ms(2000);
switch (dato)
{
case 'a':
output_high(led1);
break;
case 'b':
output_high(led2);
break;
}
}
}
Última edición por un moderador: