Enquanto que a API do Windows dá um razoável controle sobre os sinais da porta serial, ela é totalmente inadequada para o uso da porta paralela para algo diferente da conexão de uma impressora. A solução é o acesso direto ao hardware. Entretanto, a partir do Windows NT aplicações normais não tem permissão para executar as instruções IN e OUT.
Já vimos que o AVRDUDE requer um driver para acesso à porta paralela, o giveio.sys. Mas o que este driver faz e como usá-lo? Uma busca na internet localizou duas informações importantes: o fonte do giveio e a indicação que ele foi originalmente apresentado na revista Dr Dobb's Journal de Maio de 96, que convenientemente tenho na minha estante. Resumindo uma interessante história, o driver giveio fornece às aplicações o direito de executar as instruções IN e OUT. Para isto basta abrir o dispositivo "giveio".
A documentação do hardware eu encontrei parcialmente na internet e em mais detalhes no meu velhusco "The Undocumented PC". A figura abaixo (copiada de um tutorial da internet) resume a associação entre os pinos do conector e as três portas do hardware:
Os demais bits das portas tem as seguintes funções:
- S0 e S1 não são usados
- S2 indica que tem uma interrupção pendente
- C7 e C6 não são usados
- C5 define se o registrador de dados é de saída (0) ou entrada (1)
- C4 habilita a interrupção
Com estes conhecimentos e o circuito do programador STK-200, fica fácil fazer um pequeno programa de teste, que você encontra nos arquivos do blog.
Nenhum comentário:
Postar um comentário