Funciones para manejo de puertos serie 2014
Para la pc bajo Windows
Para un robot comercial
Para Windows:
Inicializar el port serie,Función initserie:
(trabaja en modo 8N1:8 bits datos,(8), sinbit de paridad,(N) 1 stop bit (1)))
Sintaxis: initserie(puerto,velo);
puerto: es un valor entero que puede asumir el valores desde 1 hasta N, siendo N el número del máximo puerto COM abierto.Según esta notación 1 representa al COM1, 2 al COM2 y así sucesivamente
Ejemplo: initserie(2,9600); //inicializa el puerto serie COM2 a 9600 bps
Transmitir datos hacia el puerto serie,Función envia:Sintaxis: resul=envia(pal);
pal: es de tipo AnsiString y representa l que se va a transmitir por puerto serie
La función devolverá un valor de tipo lógico verdadero,(true) cuando la transmisióntermino o falso,(false) si no termino
Ejemplo:
AnsiString pal1;
bool resul;
pal1=”Buenos Dias”;
...
resul=envia(pal1);
Otro ejemplo de envia
envia(“d”);
Recibir datos desde el puerto serie,Funciónrecibe:
Sintaxis:
..
bool d;// tipo lógico del C++ que solo puede valer true o false
…
d=recibe(void *dato,int nbyte);
dato:puntero sin tipo que tiene la dirección de la zona de memoria en elcual se alojarán los datos recibidos.
nbyte: número de bytes a recibir
La función devolverá un valor de tipo lógico verdadero,(true) cuando la recepción termino o falso,(false) si no terminoEjemplo leer lo que me envia el robot, se sabe que son 5 caracteres
…
unsigned char pal[6];
bool termino;
termino=recibe(pal,5);
if(termino== true)
{
...
}
Cerrar el Port serie,Función closeserie:En windows siempre hay que cerrar el puerto cuando se sale de la aplicación
Sintaxis:
closeserie();
Para el Robot:
Inicializar el puerto serie,función serialInit:
Inicializa el port serie delmicrocontrolador del robot con 115200 bps y en mod 8N1
8:Indica que los datos son de 8 bits,
N: Indica datosin paridad
1: representa 1 stop bit
No se necesita invocarla directamente porque es...
Regístrate para leer el documento completo.