Como configurar a porta USB para serial no QNX?

Como configurar a porta USB para serial no QNX?

Como configurar o dispositivo usb para serial no sistema operacional QNX para usá-lo em código como open("/dev/serusb1")? Estou usando o VMWare para hospedar o QNX. Como verificar se o adaptador USB está conectado corretamente?

Responder1

O driver que você precisa executar é chamado devc-serusb, uma vez executado, se o hardware estiver presente você deverá ver o dispositivo /dev/serusbx em /dev. (onde x é o índice do seu dispositivo)

Depois de conectar o dispositivo USB para serial à sua caixa física, certifique-se de que ele esteja conectado à imagem QNX VMware em execução e que o dispositivo realmente apareça em /dev após executar o driver.

A próxima etapa é confirmar se está funcionando na linha de comando. Conecte a outra extremidade do dispositivo serusb a algo que envie dados. Em seguida, execute isso na linha de comando:

# cat /dev/serusb1

Se você não vir nenhum dado chegando, pode haver uma taxa de transmissão ou outro parâmetro serial desligado, dê uma olhada na documentação do comando stty para definir os parâmetros corretamente. Se você estiver rodando em 115200 8-n-1, poderá fazer algo assim:

# stty baud=115200 < /dev/serusb1

Se você conseguir que os dados sejam exibidos ao 'cat' o dispositivo na linha de comando, você estará pronto para abrir o dispositivo de dentro de um programa e lê-lo como se fosse um arquivo, algo assim:

int main(int argc, char* argv[]) {
    int fd=-1;
    char ch;
    fd = open("/dev/serusb1", O_RDONLY);
    while(read(fd, ch, 1) > 0) {
        printf("%c", ch);
    }
}

informação relacionada