ENCICLOPÉDIA DE RÁDIO ELETRÔNICA E ENGENHARIA ELÉTRICA Conversor USB-COM-LPT em um microcontrolador Enciclopédia de eletrônica de rádio e engenharia elétrica / informática O artigo descreve um conversor simples que permite conectar dispositivos periféricos equipados com uma interface LPT a um computador que possui apenas uma interface USB. A conversão é realizada em duas etapas - um microcircuito especializado converte USB em COM (RS-232) e, em seguida, o microcontrolador converte COM em LPT. Como o computador neste caso troca informações por meio de uma porta COM virtual, somente programas desenvolvidos ou modificados com esse recurso em mente poderão interagir com um dispositivo LPT externo por meio do conversor proposto. Para todos os outros, você precisará conectar um driver de software especial ao sistema operacional, que ainda será desenvolvido. Ao mesmo tempo, muitos dispositivos eletrônicos e dispositivos conectados à porta LPT de um computador pessoal foram desenvolvidos e fabricados. Eles ainda existem hoje. Ao mesmo tempo, as portas LPT (assim como as portas COM, a propósito) nos computadores estão substituindo gradualmente a interface USB. Este processo é especialmente rápido em computadores portáteis (notebook). Mas devido à sua compacidade e autonomia, é muito conveniente usar esses computadores como ferramentas portáteis para configurar vários equipamentos eletrônicos, incluindo aqueles com interface LPT. A eliminação de portas LPT em computadores torna o trabalho com tais equipamentos problemático. Para resolver este problema, é proposto um conversor que utiliza componentes eletrônicos baratos e acessíveis e possui uma arquitetura aberta para o desenvolvimento de seus próprios programas. A presença de um microcontrolador nele permite, se necessário, desenvolver qualquer protocolo necessário para a troca de informações entre um computador e um dispositivo conectado através do conversor. A figura mostra o circuito do conversor. A informação transmitida através do conector X1 através da interface USB é convertida usando o chip CP2103-GM [1] para o formato da interface serial RS-232. Ele também realiza a transformação reversa. As saídas das linhas de controle da interface RS-232 deste microcircuito são conectadas por jumpers correspondentes à prontidão constante para troca de informações. Os pinos TXD e RXD são conectados respectivamente à entrada e saída de informações do microcontrolador UART integrado ATmega8515-8AC [2]. O conector X2 destina-se à programação em circuito do microcontrolador. Trabalhando de acordo com o programa, cujos códigos de inicialização são fornecidos na tabela, o microcontrolador processa os comandos do computador recebidos na entrada do UART embutido. Realizando-os, ele gera os sinais de saída da porta LPT em suas saídas e os contatos do conector XXNUMX conectado a elas e recebe os sinais de entrada desta porta. O programa é escrito em linguagem C no ambiente de desenvolvimento CodeVision. De acordo com o protocolo de troca de informações desenvolvido pelo autor e embutido no programa do microcontrolador, o computador deve enviar comandos de dois ou três bytes ao conversor. O bit menos significativo do primeiro byte do comando especifica a direção da transferência da informação: O - do computador para o conversor (registro); 1 - na direção oposta (leitura). O próximo bit define o espaço de endereçamento: 0 - registro de porta LPT; 1 - memória de dados não volátil do microcontrolador. Os seis bits mais significativos do primeiro byte ainda não são usados. O segundo byte do comando contém o endereço de um registrador ou local de memória, que pode estar no intervalo de 0 a 255. O terceiro byte está presente apenas em comandos de escrita e contém um código destinado a ser inserido em um registrador ou célula de memória. Em resposta a um comando de leitura de dois bytes, o conversor envia um byte para o computador - o conteúdo do registrador ou célula de memória solicitada. O iniciador da transferência de informações em qualquer direção é sempre um computador. A capacidade de ler e escrever informações da EEPROM do microcontrolador, embora não seja necessária para a aplicação em questão, é útil para o desenvolvimento e aprimoramento das funções desempenhadas pelo conversor. Por exemplo, para escrever o byte 0x01F na EEPROM do microcontrolador no endereço 0x5, o computador deve enviar uma sequência de três bytes pela porta COM virtual: 0x03, 0x01, 0x5F. E para ler dados no mesmo endereço, basta um comando de dois bytes: 0x02, 0x01. Em resposta a isso, o conversor enviará o byte lido da célula EEPROM especificada. Como você sabe, do ponto de vista do programador, a porta LPT em modo de operação normal (não EPP ou ECP) consiste em três registros: dados (DR), status (SR) e controle (CR). O endereço do registrador DR é o mesmo que o endereço base da porta, os endereços dos registradores SR e CR são maiores em uma e duas unidades, respectivamente. Essa estrutura da porta LPT também é implementada no dispositivo proposto. A atribuição de bits de todos os registradores também é totalmente preservada. Isso permite que você recicle programas de computador criados anteriormente para trabalhar com o conversor descrito a um custo mínimo. O programa inclui arquivos de cabeçalho que descrevem os nomes dos registradores do microcontrolador e entradas de valores binários de números usados para inicializar variáveis e outras operações. O programa configura a UART do microcontrolador para trabalhar em modo assíncrono a uma velocidade de 115200 bauds com oito informações (sem paridade) e um bit de parada. A porta COM virtual do computador deve ser configurada da mesma forma. Existem rotinas para recebimento (UART_RXD) e transmissão de bytes (UART_TXD) via UART, assim como rotinas para escrita (WRLPT) e leitura de RD_LPT de registradores de porta LPT e células de memória não volátil (WR_EEPROM e RD_EEPROM). Para máxima compatibilidade com LPT, são fornecidas máscaras de registro MaskSR e MaskCR. Quando a informação é enviada para as linhas das portas do microcontrolador conectadas ao conector XXNUMX, ou é recebida a partir dessas linhas, determinados bits dos registradores SR e CR são invertidos automaticamente usando as máscaras mencionadas e a operação lógica XOR (OR exclusivo). O texto fonte do programa é fornecido com um comentário detalhado, o que permite entendê-lo sem muita dificuldade. Para garantir o funcionamento do conversor, é necessário instalar no computador um driver de software para a porta COM virtual, que garante a troca de informações com o chip CP2103. Este driver está disponível gratuitamente no site do fabricante desses chips em silabs.com/public/documents/software_doc/drivers/Microcontrollers /lnterface/en/CP210x_VCP_Win2K_XP_S2K3.exe. Para verificar o conversor, você pode usar uma variedade de programas de teste e depuração que permitem trabalhar com a porta COM caso não acessem diretamente os registros dessa porta, como geralmente era feito em DOS e Windows9X/Me. Essas chamadas devem ser substituídas por funções de porta (por exemplo, CreateFile, Get-CommConfig, SetCommConfig, Read-Corn, WriteFile) fornecidas pelo sistema operacional. Após o conversor ser ligado, o LED HL3 acende. Receber o primeiro byte do comando irá extingui-lo. Após receber o comando na íntegra e executá-lo, o LED acenderá novamente, o que significa que está pronto para receber o próximo comando. Tal algoritmo é conveniente para monitorar a passagem de comandos e a operação normal do conversor. Caso o microcontrolador congele, o programa utiliza um timer watchdog que reiniciará o microcontrolador quando tal situação ocorrer. Isso melhora a estabilidade do inversor mesmo quando operando em um ambiente de forte interferência. Um conjunto completo de arquivos de projeto de programa de microcontrolador pode ser baixado aqui. Literatura
Autor: O.Valpa, Miass, Região de Chelyabinsk; Publicação: radioradar.net Veja outros artigos seção informática. Leia e escreva útil comentários sobre este artigo. Últimas notícias de ciência e tecnologia, nova eletrônica: Couro artificial para emulação de toque
15.04.2024 Areia para gatos Petgugu Global
15.04.2024 A atratividade de homens atenciosos
14.04.2024
Outras notícias interessantes: ▪ Câmera de bolso Sony HDR-GW66VE para esportes radicais ▪ Especificação NFC atualizada ▪ Notebook para jogos Acer Nitro V 16 ▪ Proteção contra quedas para o seu smartphone Feed de notícias de ciência e tecnologia, nova eletrônica
Materiais interessantes da Biblioteca Técnica Gratuita: ▪ seção do site Amplificadores de potência. Seleção de artigos ▪ artigo Release press. Desenho, descrição ▪ Artigo É possível hipnotizar uma pessoa contra sua vontade? Resposta detalhada ▪ artigo Inspetor do posto de registro militar da prefeitura. Descrição do trabalho ▪ artigo Valkoder - do mouse. Enciclopédia de rádio eletrônica e engenharia elétrica
Deixe seu comentário neste artigo: Todos os idiomas desta página Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site www.diagrama.com.ua |