
Enviado em 21/04/2015 - 16:43h
Gostaria de saber se há algum comando que me permite visualizar os estados dos pinos RTS,DTR,DSR,DCD,CTS, etc ... em uma porta serial(RS232). Eu escrevi este programinha para testar os estados dos pinos:
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
#include <fcntl.h>
#include <termios.h>
#include <unistd.h>
#include <stdio.h>
#include <err.h>
#include <stdint.h>
int ler_pino(int fd,int pino)
{
int serial_status;
if (ioctl(fd, TIOCMGET, &serial_status) == -1)
err(-1,"ioctl()");
return (serial_status & pino) ? 1 : 0;
}
int main(int argc, char *argv[])
{
char * dispositivo;
int fd;
argc--;
if (argc == 0)
err(1,"Uso: ./a.out dispositivo\n");
dispositivo = argv[argc];
fd = open(dispositivo,O_RDWR);
if (fd == -1)
err(-1,"%s",dispositivo);
printf("RTS = %i\n", ler_pino(fd, TIOCM_RTS));
printf("DTR = %i\n", ler_pino(fd, TIOCM_DTR));
printf("DSR = %i\n", ler_pino(fd, TIOCM_DSR));
printf("DCD = %i\n", ler_pino(fd, TIOCM_CAR));
printf("CTS = %i\n", ler_pino(fd, TIOCM_CTS));
close(fd);
return 0;
}
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Linux Mint: Zram + Swapfile em Btrfs
O widget do Plasma 6 Área de Notificação
Quando vocês pararam de testar distros? (16)
Quero instalar, configurar, setar tamanho do rsyslog. (5)









