Página 1 de 1

PIC16F873A - Comparadores

MensagemEnviado: 14 Jul 2012 07:53
por MOR_AL
Olá pessoal!
Estou querendo usar o módulo comparador do PIC16F873A, com 28 pinos.
Quero usar apenas o pino RA0/AN0 e a tensão de referência interna.
Os outros possíveis pinos que o módulo comparador usa são RA1/AN1, RA2/AN2 e RA3/AN3. Estes eu desejo usar como I/O digital.
Estudando o datasheet do PIC, ví que o único modo que interage com a tensão de referência é o modo 110.
O esquema dele é esse aí.
Imagem

Alguém sabe se isso é possível?
Estou fazendo uns testes com ele para ver se é possível, mas se alguém tiver maiores informações seria de grande ajuda.
[]'s.
MOR_AL

Re: PIC16F873A - Comparadores

MensagemEnviado: 14 Jul 2012 08:51
por andre_luis
Moral,


Posso estar enganado, mas aparentemente, não deve funcionar.
O registrador Analog Input Mode na figura 3-1. pode bloquear a entrada digital.
Veja também a observação na seção 11.3.

http://ww1.microchip.com/downloads/en/d ... 30292c.pdf

+++

Re: PIC16F873A - Comparadores

MensagemEnviado: 14 Jul 2012 11:22
por MOR_AL
andre_teprom escreveu:Moral,


Posso estar enganado, mas aparentemente, não deve funcionar.
O registrador Analog Input Mode na figura 3-1. pode bloquear a entrada digital.
Veja também a observação na seção 11.3.

http://ww1.microchip.com/downloads/en/d ... 30292c.pdf

+++


É... O sinal Analog Input Mode faz com que em toda operação de leitura, a entrada seja lida como '0'.
... Mas para saídas digitais está escrito...

" The port pins that are desired as analog inputs must have their corresponding TRIS bits set (input). If the TRIS bit is cleared (output), the digital output level (VOH or VOL) will be converted."

Talvez possa ser usado como saída digital.
Nesse caso o pino AN1, que entra no comparador que não me interessa, deve causar alteração na saída C2OUT, que não será usada para nada.

Já estou pronto para testar. Vou confirmar esses dados.
Grato Andre!
MOR_AL

MensagemEnviado: 14 Jul 2012 17:00
por MOR_AL
Bom!
Testei e:
1 - Os outros pinos do comparador não devem ser usados como pinos de I/O.
2 - Configurando o comparador ele funciona, mas ao se reconfigurar apenas os pinos não usados do comparador AN1, AN2 e AN3, ocorre:
a) Como entradas. A eitura dá sempre '0', como o André previu.
b) Como saídas. Funciona, mas os comparadores deixam de funcionar.
Conclusão.
Vide item 1.
MOR_AL

MensagemEnviado: 14 Jul 2012 17:38
por andre_luis
Por serem apenas entradas, não dá pra você reprogramar os TRIS em tempo de execução do programa, após a leitura do I/O digital para retornar á opção comparador ?

Não tenho certeza do RA1/AN1, mas ao menos o RA2/AN2 e RA3/AN3 parecem estar disponíveis.

( vale lembrar o mito que, por SW corrigimos resolver quase qualquer problema de HW )


+++

MensagemEnviado: 14 Jul 2012 18:44
por MOR_AL
andre_teprom escreveu:Por serem apenas entradas, não dá pra você reprogramar os TRIS em tempo de execução do programa, após a leitura do I/O digital para retornar á opção comparador ?
Fiz isso! Não funcionou!
Não tenho certeza do RA1/AN1, mas ao menos o RA2/AN2 e RA3/AN3 parecem estar disponíveis.
Tentei usar mas recai na minha postagem anterior.
( vale lembrar o mito que, por SW corrigimos resolver quase qualquer problema de HW )


+++


O interessante é que os números dos modos do PIC16F628A são diferentes dos números dos modos do PIC16F873A.
Bom! Vou usar o modo de apenas um comparador independente.
Modo 001 no PIC16F873A ou Modo 101 no 16F628A.
MOR_AL