Linux - termios

 
Vista:

termios

Publicado por william (19 intervenciones) el 02/12/2002 11:54:21
Bien, bueno me hace falta lo siguiente si me podeis ayudar de antemano gracias.

Bueno, a la fecha e configurado el puerto paralelo y e impreso varios codigos de barras (para esto estoy trabajando conla estructura termios); bien el problema lo tengo cuando quiero leer del puerto leo toda la iinformacion pero se me queda en un bucle infinito, lo que pasa es que no e podido manejar segun creo el campo de caracteres de control de la estructura (cc_t c_cc), pienso que el problema puede estar desde la configuracion.

nueva.c_iflag = IGNPAR|ICRNL|INLCR;
nueva.c_cflag = B9600|CS8|CRTSCTS|CREAD|CLOCAL;
nueva.c_oflag = 0;
nueva.c_lflag = ICANON;

/*Inicializacion caracteres de control*/
nueva.c_cc[VINTR] = 0; /* Ctrl-c */
nueva.c_cc[VQUIT] = 0; /* Ctrl-\ */
nueva.c_cc[VERASE] = 0; /* del */
nueva.c_cc[VKILL] = 0; /* @ */
nueva.c_cc[VEOF] = 4; /* Ctrl-d */
nueva.c_cc[VTIME] = 0; /* temporizador entre caracter, no usado */
nueva.c_cc[VMIN] = 1; /* bloqu.lectura hasta llegada de caracter. 1 */
nueva.c_cc[VSWTC] = 0; /* '\0' */
nueva.c_cc[VSTART] = 0; /* Ctrl-q */
nueva.c_cc[VSTOP] = 0; /* Ctrl-s */
nueva.c_cc[VSUSP] = 0; /* Ctrl-z */
nueva.c_cc[VEOL] = 0; /* '\0' */
nueva.c_cc[VREPRINT] = 0; /* Ctrl-r */
nueva.c_cc[VDISCARD] = 0; /* Ctrl-u */
nueva.c_cc[VWERASE] = 0; /* Ctrl-w */
nueva.c_cc[VLNEXT] = 0; /* Ctrl-v */
nueva.c_cc[VEOL2] = 0; /* '\0' */

Cuando estoy leyendo realizo lo siguiente.


while(i==0)
{
read(fd,lectura,255);

printf("\n%s",lectura);

if(lectura[strlen(lectura)-1]==EOF)
{
i=1;
}

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

TERMINALES POSIX :P

Publicado por nobody (1 intervención) el 28/12/2002 22:50:59
Hice un texto bastante amplio sobre las terminales POSIX, lástima que no sepa donde lo he metido :( lo distribuí eso sí en una lista de correo, eran dos textos (en pdf) "TERMINALES POSIX" y "IPC SYSTEM V" para la lista del "Kernel Coders" (7a69 ahora off-line) si lo encuentro te lo avisaré... quizás hice una copia del tarball, pero no lo recuerdo.
No eran nada del otro mundo pero... en fin, lo mismo te ayudaban porque tenía ejemplos en C de manipulación de la terminal...

En todo caso mira por INET alguien me dijo que queria los pdf's para si sitio web o algo así... busca lo mismo encuentras algo.

[opencoders: now updating]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar