Conceção de um microcomputador de pastilha única e de um circuito de comunicação de porta série de microcomputador

O microcontrolador está limitado pelo suporte de armazenamento e não pode continuar a processar os dados enviados e recebidos. Por conseguinte, nas aplicações que requerem o processamento de grandes quantidades de dados, devem ser utilizadas as poderosas capacidades de processamento de dados dos microcomputadores. Deste modo, a transmissão fiável de dados entre o microcontrolador PIC e o microcomputador deve ser conseguida através de circuitos de comunicação. O microcontrolador PICl6F876 não dispõe de uma porta série, mas integra dois tipos diferentes de módulos de comunicação série, nomeadamente o módulo USART (recetor-transmissor síncrono universal/assíncrono) e a porta série síncrona mestre (MSSP). Considerando que as portas de série do PC são todas estruturas 232 de nove pinos, a interface de série do PC é uma interface padrão de barramento externo que está em conformidade com a especificação EIA RS-232C. O RS-232C utiliza lógica negativa, ou seja, lógica "1": -5v ~ -15v; lógica "0": 5V ~ 15V. O nível CMOS é lógico "1": 4,99V, lógica "0": 0,01V; a lógica "1" e "0" do nível TTL são 2,4V e 0,4V, respetivamente. Por conseguinte, quando se utiliza o bus RS-232C para comunicação em série, é necessário um circuito externo para efetuar a conversão de níveis. O driver é usado na extremidade transmissora para converter o nível TTL ou CMOS para o nível RS-232C, e o recetor é usado na extremidade recetora para converter o nível RS-232C para o nível TTL ou CMOS [2].

O MAX232CPE da MAXIM Company é selecionado aqui para conversão de nível. O MAX232CPE é um chip de controlo de receção/transmissão série universal da MAXIM Company. É utilizado para realizar a conversão de nível do protocolo de aperto de mão necessário quando o microcontrolador e o PC trocam dados. O circuito periférico do MAXIM232 é muito simples. Só precisa de ligar alguns condensadores externos de 0,1μF. As resistências de proteção entre as mesmas etiquetas de rede são todas de 330Ω. Portanto, aplicamos principalmente o USART no modo de transmissão assíncrona. Além disso, a comunicação em série deve ser implementada utilizando módulos de comunicação existentes e combinada com software de comunicação concebido pelo próprio.

Conceção de um microcomputador de pastilha única e de um circuito de comunicação de porta série de microcomputador

O núcleo do transmissor assíncrono USAR é o registo de deslocamento de transmissão TSR e o buffer de transmissão TXREG. O TXREG está diretamente ligado ao barramento de dados interno e é um registo legível/gravável por software. O programa do utilizador escreve os dados a enviar no TXREG e, em seguida, o hardware controla automaticamente os dados a carregar do TIREG para o formato TSR (se for selecionado o formato de 9 bits) e, juntamente com o bit TX9D do TXSTA, para formar dados de 9 bits); em seguida, adiciona automaticamente um bit de arranque 0 à frente e um bit de paragem 1 atrás para formar uma estrutura de quadro completa: Finalmente, no relógio de velocidade de transmissão Sob o controlo do registo de deslocamento TSR, os dados são enviados bit a bit; completando a conversão de "paralelo para série".

O TSR aguarda até que o bit de paragem dos dados que estão a ser enviados seja enviado antes de carregar novos dados de transmissão a partir do TXREG. Quando o TXREG envia dados para o TSR, o registo TXREG fica vazio e, ao mesmo tempo, o bit de sinalização de interrupção de transmissão TXIF é colocado a 1, enviando um pedido de interrupção à CPU. Embora o bit de habilitação de interrupção de transmissão TXIE controle se a CPU responde à interrupção, TXIF será automaticamente definido como 1 enquanto TXREG estiver vazio. Além disso, o hardware limpará automaticamente o TXIF apenas depois de novos dados de transmissão serem escritos no registo TXREG. 0. Por conseguinte, também nos dá novas ideias e possibilidades de utilizar o software para avaliar o estado de funcionamento.

O núcleo do recetor assíncrono USART é o registo de deslocação de receção RSR e o registo de receção RCREG. Os dados de série assíncronos enviados pela parte comunicante são introduzidos a partir do pino RC7/RX/DT; sob o controlo do sinal de temporização de amostragem fornecido pelo gerador de débito, o circuito de deteção e recuperação de dados recolhe amostras da forma de onda do sinal de entrada. Para restaurar a aparência original dos dados; em seguida, sob o controlo do impulso de relógio de deslocamento fornecido pelo gerador de débito, os dados de série recuperados, bem como o bit de início e o bit de paragem, são movidos para o registo RSR passo a passo.

Desde que o bit de paragem seja amostrado, o registo de deslocação de receção RSR carrega os dados de 8 bits recebidos no registo de receção RCREG (se RCREG estiver vazio); e carrega o 9º bit (se houver) no bit RX9D; completou ao mesmo tempo a conversão "Série para paralelo"; definir o bit de sinalização de pedido de interrupção de receção RCIF = 1 para notificar a CPU para ler os dados no registo de receção RCREG e os dados do 9º bit RX9D. Na conceção do software, os dados do 9º bit são julgados (caracterizados) Em termos de propriedades dos dados, 1 representa o código de endereço e 0 representa o código de dados) para implementar o processamento correspondente.

Entre eles, o RCREG é um registo de buffer duplo com uma estrutura de 2 níveis de fila de primeiro a entrar, primeiro a sair. Da mesma forma, o bit RX9D é também uma estrutura de nível 2. Por conseguinte, isto permite que o registo de deslocação receba 2 quadros consecutivos de dados e os carregue na fila para armazenamento em buffer, e depois o terceiro dado pode ser deslocado para o registo RSR.

Palavras-chave: transmissão de dados sem fios

Contactar-nos