RS232 C LINUX

- Descargar http://www.teuniz.net/RS-232/RS-232.tar.gz de la web http://www.teuniz.net/
- Descomprimir el archivo.
- Colocamos los archivos descargados rs232.h y rs232.c en la carpeta de nuestro proyecto junto al archivo que vamos a crear con el nombre main.c y al que añadiremos lo siguiente:


#include <stdlib.h>
#include <stdio.h>

#ifdef _WIN32
#include <Windows.h>
#else
#include <unistd.h>
#endif

#include "rs232.h"

int main(int argc,char ** argv) {
int i, n,
cport_nr = 0, /* /dev/ttyS0 (COM1 on windows) */
bdrate = 9600; /* 9600 baud */

unsigned char buf[4096];

if(RS232_OpenComport(cport_nr, bdrate)) {
printf("Can not open comport\n");

return(0);
}

/*while(1) {
n = RS232_PollComport(cport_nr, buf, 4095);

if(n > 0) {
buf[n] = 0; // siempre poner null al final de la cadena 

for(i=0; i < n; i++) {
if(buf[i] < 32) {
buf[i] = '.';
}
}

printf("received %i bytes: %s\n", n, (char *)buf);
}
}*/

// ENVIAR letra ASCII. Ejemplo: letra L=0x4C
char * p;
unsigned char byte = (unsigned char)strtol(argv[1], &p, 16);
RS232_SendByte(cport_nr, byte);
printf(argv[1]);

#ifdef _WIN32
Sleep(100);
#else
usleep(100000);
#endif

return 0;
}


- Por último, para compilar y ejecutar el programa, nos situamos en la carpeta de nuestro proyecto y escribimos:
/proyecto# gcc main.c rs232.c -Wall -o test
/proyecto# ./test 0x4C (enviamos letra L)

Comentarios

Entradas populares