Hola,
Necesito comunicar el pic 18f2680 a un modulo Bluetooth, llamado Bluematik (aqui esta el datasheet--> http://www.albedo.biz/download/flexipanel/doc/BlueMatik.pdf)
Estoy programando con el CCS C y le envio comandos AT por el puerto serie del PIC al modulo Bluematik segun los comandos de configuración (http://www.okwelectronics.com/datasheets/bluetooth/DS372-2.pdf)
Empece introduciendo los comandos AT por hyperterminal y el modulo Bluetooth si los entencia y podia reconocer el modulo con mi movil, sin embargo cuando me he puesto a programar en C, no me funciona.
Les pongo el codigo por si ven algun fallo, Gracias
#include <18F2680.h>
#fuses HS,NOPROTECT,NOLVP,NOWDT,NODEBUG
#use delay(clock=8000000)
#use rs232(baud=115200,parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8)
#byte RCSTA= 0xFAB
#byte TXSTA= 0xFAC
#byte BAUDCON= 0xFB8
#byte SPBRG= 0xFAF
#define MUM PIN_C5
#define HUM PIN_C4
#define ONOFF PIN_C3
void main()
{
RCSTA=0b10010000;
TXSTA=0b00100110;
BAUDCON=0b01000000;
SPBRG= 3;
disable_interrupts(global);
setup_adc_ports(NO_ANALOGS);
set_tris_c(0b10000111);
while (true)
{
delay_ms(500);
output_high(HUM);
output_low(MUM);
delay_ms(500);
output_low(ONOFF);
delay_ms(500);
output_high(ONOFF);
delay_ms(2000);
printf("AT+BRSR=1,0\r\n");
delay_ms(2000);
printf("AT+BSEC=1\r\n");
delay_ms(2000);
printf("AT+BNAM=PFC\r\n");
delay_ms(2000);
printf("AT+BSLV\r\n");
delay_ms(2000);
}
}//FIN DEL PROGRAMA
Tengo las siguientes dudas:
- Nose si el retorno de carro es: \r\n
-La configuración de los registros rcsta,txsta,baudcon y sprgh, nose si son necesarios
Nuevamente gracias
Necesito comunicar el pic 18f2680 a un modulo Bluetooth, llamado Bluematik (aqui esta el datasheet--> http://www.albedo.biz/download/flexipanel/doc/BlueMatik.pdf)
Estoy programando con el CCS C y le envio comandos AT por el puerto serie del PIC al modulo Bluematik segun los comandos de configuración (http://www.okwelectronics.com/datasheets/bluetooth/DS372-2.pdf)
Empece introduciendo los comandos AT por hyperterminal y el modulo Bluetooth si los entencia y podia reconocer el modulo con mi movil, sin embargo cuando me he puesto a programar en C, no me funciona.
Les pongo el codigo por si ven algun fallo, Gracias
#include <18F2680.h>
#fuses HS,NOPROTECT,NOLVP,NOWDT,NODEBUG
#use delay(clock=8000000)
#use rs232(baud=115200,parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8)
#byte RCSTA= 0xFAB
#byte TXSTA= 0xFAC
#byte BAUDCON= 0xFB8
#byte SPBRG= 0xFAF
#define MUM PIN_C5
#define HUM PIN_C4
#define ONOFF PIN_C3
void main()
{
RCSTA=0b10010000;
TXSTA=0b00100110;
BAUDCON=0b01000000;
SPBRG= 3;
disable_interrupts(global);
setup_adc_ports(NO_ANALOGS);
set_tris_c(0b10000111);
while (true)
{
delay_ms(500);
output_high(HUM);
output_low(MUM);
delay_ms(500);
output_low(ONOFF);
delay_ms(500);
output_high(ONOFF);
delay_ms(2000);
printf("AT+BRSR=1,0\r\n");
delay_ms(2000);
printf("AT+BSEC=1\r\n");
delay_ms(2000);
printf("AT+BNAM=PFC\r\n");
delay_ms(2000);
printf("AT+BSLV\r\n");
delay_ms(2000);
}
}//FIN DEL PROGRAMA
Tengo las siguientes dudas:
- Nose si el retorno de carro es: \r\n
-La configuración de los registros rcsta,txsta,baudcon y sprgh, nose si son necesarios
Nuevamente gracias