/*************************************************************************** */
/* sci-cad.c Julio-2004 */
/*---------------------------------------------------------------------------*/
/* Ejemplo para el skybot */
/*---------------------------------------------------------------------------*/
/* Enviar una cadena por el puerto serie cada vez que se recibe un caracter */
/*---------------------------------------------------------------------------*/
/* Juan Gonzalez <juan@iearobotics.com> */
/*---------------------------------------------------------------------------*/
/* LICENCIA GPL */
/*****************************************************************************/
//-- Especificar el pic a emplear
#define __16f877
#include "pic16f877.h"
//-- Se usa la libreria de comunicaciones serie
#include "sci.h"
/*********************************/
/* Programa principal */
/*********************************/
void main(void)
{
//-- Configurar el puerto B
//-- RB0, RB2 y RB7 como entradas
//-- RB1, RB3, RB4, RB5, RB6 como salidas
//-- Todos los sensores de entrada, pero el RB1 de salida, que es
//-- donde esta el led
TRISB=0x85;
//-- Configurar las comunicaciones serie
sci_conf();
//-- Bucle infinito
for (;;) {
//-- Esperar a que llegue dato
sci_read();
//-- Cambiar el led de estado
PORTB^=0x02;
//-- Enviar la cadena por el puerto serie
sci_cad("Hola como estas...");
//-- Si se quiere enviar una cadena que esta en un array
//-- utilizar la funcion sci_cad2()
//-- Ejemplo: sci_cad2(mi_cadena);
//-- con: unsigned char mi_cadena[]="test"; una variable global
//-- definida fuera del main
//-- Es un bug del SDCC 2.5.1
}
}