O UART, ao qual acredito que você está se referindo, é um protocolo de comunicação bidirecional de 2 fios que é normalmente usado por micro-controladores para se comunicar entre si - normalmente usado para transferir texto entre dois dispositivos. É o que a maioria das pessoas quer dizer quando dizem serial
, mas há muitos protocolos diferentes lá fora.
/dev/ttyAMA0
é um dispositivo serial UART no pi de framboesa. Este arquivo de dispositivo controla os pinos rx (10) e tx (8) no cabeçalho pi do raspberry. Qualquer programa pode abrir a porta serial e ler / gravar dados para ela, mas sem nada anexado a ela, todos os dados enviados são perdidos e não há nada enviando dados de volta.
A maioria das distribuições Linux do raspberry pi tem um getty ouvindo em /dev/ttyACM0
, este é um programa que fornece um prompt de login e um shell. Quando você inicia o minicom
on /dev/ttyAMA0
e o getty estão enviando dados no pin do tx e recebendo dados no pin do rx - isso irá confundir qualquer coisa que esteja anexada a eles se você tivesse alguma coisa anexada a eles.
Para fazer com que o dispositivo serial faça alguma coisa útil, ele precisa de algo para se comunicar. Você pode obtê-lo para se comunicar com o seu PC, obtendo um desses adaptadores USB para UART e anexando o rx ao pin do tx , o tx para o pino rx e o pino gnd para gnd, em seguida, conectando-o ao seu pc. Uma vez conectado, você receberá um dispositivo serial no seu PC ( /dev/ttyUSB0
na maioria das distribuições do Linux) e todos os dados que você enviar aparecerão em /dev/ttyAMA0
no pi, e todos os dados que o pi enviar em /dev/ttyAMA0
aparecerão no seu pc.
Dado que o pi já tem um getty listening, tudo que você precisa fazer é iniciar minicom
ou programa similar no seu pc e você deve obter um prompt de login (pode ser necessário digitar algumas vezes). Você pode, claro, parar o getty e executar outro programa que possa falar com a linha serial.