Bueno luego de 14.000 pruebas y errores el PIC manda SMS !
Mis comentarios:
- Probado con la serie PIC16F. (PIC16F877A).
- Cristal usado: 20Mhz.
- debug con el hyperterminal del PicKit2 (Usart TOOL).
- Código de programación en C de CCS.
- Celular usado: T237 (Por comandos AT me dice que es el T230).
- Conexión del teléfono con el PIC de forma directa: TX PIC - RX CEL | RX PIC - TX CEL.
Nota: La fuente con la que se alimente el PIC tiene que estár debidamente filtrada y regulada para evitar posibles funcionamientos erráticos.
Mis aportes hasta el momento:
Código fuente del programa:
Archivo de cabecera:
Les dejo también el esquema de conexión del microcontrolador al celular:
En caso de que no se vea bien el esquema en el foro tambíen dejo el rar con todo lo que necesitan para hacer las pruebas.
Parte 1 del proyecto concluida !!!!
Mis comentarios:
- Probado con la serie PIC16F. (PIC16F877A).
- Cristal usado: 20Mhz.
- debug con el hyperterminal del PicKit2 (Usart TOOL).
- Código de programación en C de CCS.
- Celular usado: T237 (Por comandos AT me dice que es el T230).
- Conexión del teléfono con el PIC de forma directa: TX PIC - RX CEL | RX PIC - TX CEL.
Nota: La fuente con la que se alimente el PIC tiene que estár debidamente filtrada y regulada para evitar posibles funcionamientos erráticos.
Mis aportes hasta el momento:
Código fuente del programa:
Código:
#include <config.h>
void main()
{
setup_adc(ADC_OFF);
setup_spi(FALSE);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
while(true){
if(input(PIN_D2)==1){
delay_ms(300);
printf("AT\r\n"); // Le llama la atención al teléfono.
delay_ms(3000); //espera 5 segundos
printf("AT+CMGF=1\r\n"); //configura modo texto
delay_ms(3000);
printf("AT+CMGS=\"número de teléfono\"\r\n"); // N° del destinatario.
delay_ms(2000); //del celular al que se envia el sms
printf("Esto es una prueba\r\n");
putc(26); //ascii(26)=(ctrl+z) envia el mensaje
printf("\r\n");
delay_ms(5000);
}
}
}
Archivo de cabecera:
Código:
#include <16F877A.h>
#device adc=8
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz)
#FUSES PUT //Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOCPD //No EE protection
#FUSES NOBROWNOUT //No brownout reset
#FUSES LVP //Low Voltage Programming on B3(PIC16) or B5(PIC18)
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOWRT //Program memory not write protected
#use delay(clock=20000000)
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
Les dejo también el esquema de conexión del microcontrolador al celular:
En caso de que no se vea bien el esquema en el foro tambíen dejo el rar con todo lo que necesitan para hacer las pruebas.
Parte 1 del proyecto concluida !!!!