[FUGSPBR] Programa "cu"

fabinho_zzz fabinho-zzz em bol.com.br
Qua Jul 9 01:02:50 BRT 2003


Alo, Leonardo...

eu tentei mandar o codigo em anexo mas acho que nao foi... heheh pelo menos
eu aqui nao recebi...

esta indo agora o codigo no corpo da mensagem...

eu dei uma mexida nele, ele ainda nao tah 100% mas testei agora mesmo no
linux...
tem aih uns 'printf's que vc pode habilitar para ver umas informações a
mais...

mas amanha ainda vou mexer nele e te mando uma versao mais enxuta e vou ver
se coloco uns comentarios tb...

abraços
fabio


/*-----------inicio do arquivo-------*/
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <termios.h>

int main(){
 char buf[31];
 int fd;
 struct termios opcoes;

fd=open("/dev/modem",O_RDWR | O_NOCTTY | O_NDELAY);
fcntl(fd,F_SETFL,0);
tcgetattr(fd,&opcoes);
opcoes.c_cflag |= (CLOCAL | CREAD);
opcoes.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);
opcoes.c_oflag &= ~OPOST;
opcoes.c_cc[VMIN] = 0;
opcoes.c_cc[VTIME] = 10;


tcsetattr(fd,TCSANOW,&opcoes);



envia(fd,"AT\r");
/*
printf("AT");
fflush(stdout);
*/
envia(fd,"ATZ\r");
envia(fd,"ATD1234567890\r");

}

int envia(int fd,char *buf){
int a,o; char c;

 a=write(fd,buf,strlen(buf));
 if (a<0) perror("Escrever");

/*
printf("enviados(%d)\n",a);
fflush(stdout);
*/

 while(1){
 short unsigned int dez;

 a=read(fd,&c,1);
 if ( a<0 ) perror("Ler");
/*
printf("recebidos(%d)\n",a);
fflush(stdout);
*/

 if (!dez || c!=10)
 {
  dez=1;
 }else dez=0;

 if (c=='K' && o) break; else o=0;
 if (c=='O') o=1;

 }
}
/*----------------fim do arquivo*/


-------------- Próxima Parte ----------
_______________________________________________________________
Sair da Lista: http://www2.fugspbr.org/mailman/listinfo/fugspbr
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/


Mais detalhes sobre a lista de discussão freebsd