Como descubro se algo está usando a porta serial?

0

Eu quero programar um microcontrolador sob o Debian Wheezy, mas não consigo fazê-lo funcionar até agora. Eu perguntei sobre Engenharia Elétrica e Consegui o conselho para verificar se algo já está ocupando a porta serial. Eu não tenho o programa que eles sugeriram, brltty .

Como posso verificar se existe algum outro pacote impedindo que a placa do microcontrolador converse com o computador? Ou se houver algum tipo de problema de driver com o dispositivo?

Isso é o que acontece quando eu o insiro:

rumtscho@simak:~/Projects/had_launchpad-blink-master$ dmesg | tail
[11936.051300] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[11936.051306] usb 4-1: Product: Texas Instruments MSP-FET430UIF
[11936.051313] usb 4-1: Manufacturer: Texas Instruments
[11936.051318] usb 4-1: SerialNumber: 95FF469286C9572A
[11936.060401] cdc_acm 4-1:1.0: This device cannot do calls on its own. It is not a modem.
[11936.060412] cdc_acm 4-1:1.0: No union descriptor, testing for castrated device
[11936.060467] cdc_acm 4-1:1.0: ttyACM0: USB ACM device
[11946.113517] generic-usb 0003:0451:F432.0005: usb_submit_urb(ctrl) failed
[11946.113550] generic-usb 0003:0451:F432.0005: timeout initializing reports
[11946.114261] generic-usb 0003:0451:F432.0005: hiddev0,hidraw0: USB HID v1.01 Device [Texas Instruments Texas Instruments MSP-FET430UIF] on usb-0000:00:1d.0-1/input1

Posso de alguma forma solucionar a conexão daqui?

    
por rumtscho 11.01.2015 / 16:37

3 respostas

1

O Linux usa o ttySx para um nome de dispositivo de porta serial. Por exemplo, COM1 (nome do DOS / Windows) é ttyS0, COM2 é ttyS1 e assim por diante.

  1. Conecte seu microcontrolador à porta serial e digite o comando dmesg | grep tty para verificar se ele foi detectado ou não.

  2. Se todos os seus slots forem PCI, a porta serial provavelmente estará em um barramento ISA ou LPC (também chamado de "interface LPC"). LPC é comum em computadores portáteis. Digite " lspci " para ver se mostra "LPC"

Agora, para configurar sua porta serial, você precisa trabalhar com setserial comand. ( CLIQUE AQUI para aprender o comando setserial .)

REFERÊNCIAS:
link link

    
por 11.01.2015 / 16:53
1

Eu rodaria lsof como root e verifiquei quais processos tinham arquivos / dev / tty * abertos. Em seguida, rastreie o processo para determinar o que eles estão fazendo.

    
por 11.01.2015 / 21:03
0

Olá eu uso um pc com dois controladores seriais externos para conectar em dois sistemas BMS diferentes. Executando dois vmware players no debian weezy com diferentes sistemas operacionais em cada um deles e conectando uma porta serial a cada máquina vmware! O problema era que, imprevisivelmente, um ou ambos os seriados não se conectavam ao vmware ou mostravam como se fossem usados por outro aplicativo. Depois de horas de pesquisa de log, hardware alterando etc, notei em / var / log / syslog o modemmanager fazendo chamadas para todos os ttyS * tentando identificar o modem conectado! Eu removi com "apt-get remove modemmanager" e problema resolvido! Acredito que tentar encontrar dispositivos conectados deixou as portas ou os dispositivos conectados às portas em uma condição não pronta! Espero que tenha ajudado!

    
por 04.01.2016 / 11:38