Mais Universal Asynchronous Receiver Transmitter ( UART) que eu encontrei on-line, são muito complicados e difíceis de entender , aqui vou explicar uma teoria simples e também de código sobre como construir um. Coisas que você precisa
Xilinx ISE
Show Mais instruções
1
Primeiro vamos falar sobre como transmissores de trabalho. O princípio básico é o de enviar vários bits de dados através de uma única linha. No nosso transmissor , esse dado é paralelo , no entanto, reduzir o número de fios necessários , usamos a comunicação serial que é convertido em paralelo no final de recebimento
As coisas básicas que precisamos são os seguintes: . < Br >
1. Um divisor de relógio ( o nosso contador)
Este é nos permite enviar dados a uma determinada velocidade (taxa de transmissão ) . Nosso receptor irá provar e tomar o bit de dados por bit .
2. Registar-se uma mudança
Precisamos saber quantos bits de cada vez estamos transmitindo , nosso registro de deslocamento terá um bit de início, bits de dados , bit de paridade (opcional), bit final .
3 . Um estado diagrama
Antes escrevendo qualquer código , temos de pensar no que precisamos criar ea melhor maneira é a criação de um diagrama de estado do nosso design. Nós sabemos para um transmissor precisamos de 2 estados, IDLE e transmissão .
2
Depois de ter um diagrama de estado , agora podemos calcular o que o nosso contador será . Isso é feito usando-se: .
Contador = FPGA taxa de velocidade /transmissão relógio
Neste exemplo, eu uso uma taxa de transmissão de 9600 , fazendo o meu contador = 5208
3
último, calculamos nosso registrador de deslocamento e terminar de escrever a nossa máquina de estado. No meu código de exemplo que eu uso um pouco de início, o bit de paridade , 8 bits de dados e bits final . Este é 11 bits total .
Ambas as imagens no passo 2 e 3 juntos no mesmo módulo completar nosso código transmissor necessário para programar para o FPGA . Este código irá trabalhar com outro FPGA ligados em série ou com janelas hyperterminal entre outro hardware. Pode ser facilmente modificáveis para trabalhar com muito mais .
4
último, criamos um dispositivo de ensaio para corrigir os erros e simular o nosso programa antes de programar o FPGA .
Isto conclui o Transmissor . Por favor, deixe comentários, se você tiver alguma dúvida ou se sentir que há algo faltando aqui.