PIC ADC e Digital input juntos.

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

PIC ADC e Digital input juntos.

Mensagempor vtrx » 19 Ago 2019 20:57

Alguém me da uma ideia de como poderia fazer,no hardware,uma maneira do PORTa ser ADC e se precisar ser Entrada Digital,ja que para entrada digital vou precisar de resistores Pull Up?
Como poderia fazer para os resistores Pull Up não interferir no ADC?
Pensei em transistores 'chaveando' os resistores.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: PIC ADC e Digital input juntos.

Mensagempor milordy » 19 Ago 2019 21:24

vtrx escreveu:Alguém me da uma ideia de como poderia fazer,no hardware,uma maneira do PORTa ser ADC e se precisar ser Entrada Digital,ja que para entrada digital vou precisar de resistores Pull Up?
Como poderia fazer para os resistores Pull Up não interferir no ADC?
Pensei em transistores 'chaveando' os resistores.

Os pic mais novos tem resistores de pull-up,e você pode habilitar e desabilitar no código.
No hardware se poderia deixar dois resistores,um de pull up e outro que vai do adc para pic,escolher um de acordo com opção que vai querer.
milordy
Nibble
 
Mensagens: 63
Registrado em: 26 Fev 2015 12:48

Re: PIC ADC e Digital input juntos.

Mensagempor vtrx » 20 Ago 2019 06:42

O PORTa do PIC em questão não tem Pull up interno.
No hardware se poderia deixar dois resistores,um de pull up e outro que vai do adc para pic,escolher um de acordo com opção que vai querer.

Queria fazer isso por 'software',sem que o usuário tenha que alterar algo no Hardware.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: PIC ADC e Digital input juntos.

Mensagempor milordy » 20 Ago 2019 21:51

vtrx escreveu:O PORTa do PIC em questão não tem Pull up interno.
No hardware se poderia deixar dois resistores,um de pull up e outro que vai do adc para pic,escolher um de acordo com opção que vai querer.

Queria fazer isso por 'software',sem que o usuário tenha que alterar algo no Hardware.

Poderia usar um resistor de pull-up de valor elevado,de modo que interferência no adc seja pouca significativa.
milordy
Nibble
 
Mensagens: 63
Registrado em: 26 Fev 2015 12:48

Re: PIC ADC e Digital input juntos.

Mensagempor vtrx » 20 Ago 2019 22:40

Poderia usar um resistor de pull-up de valor elevado,de modo que interferência no adc seja pouca significativa.

Pensei nisso,mas preciso testar,me parece que 47k altera pouco mas vou ver se ao PORT não fica instável como leitura.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: PIC ADC e Digital input juntos.

Mensagempor ze » 21 Ago 2019 19:17

Se tiver outro port disponível p.ex RA2, use-o como 'vcc' pro pullup. Imagine um 4K7 entre Ra2 e Ra0. Chaveie o TRIS do RA2
Código: Selecionar todos
RA2=1;TRISA2=0;//=>liga pullup em RA0
RA2=0;TRISA2=0;//pulldown em RA0
TRISA2=1;//libera analógico em RA0
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Re: PIC ADC e Digital input juntos.

Mensagempor vtrx » 21 Ago 2019 19:46

ze escreveu:Se tiver outro port disponível p.ex RA2, use-o como 'vcc' pro pullup. Imagine um 4K7 entre Ra2 e Ra0. Chaveie o TRIS do RA2
Código: Selecionar todos
RA2=1;TRISA2=0;//=>liga pullup em RA0
RA2=0;TRISA2=0;//pulldown em RA0
TRISA2=1;//libera analógico em RA0

O problema é que pretendia usar os analógicos RA0 a RA6,essas entradas vão fazer falta caso o usuário não queira utilizar ADC.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: PIC ADC e Digital input juntos.

Mensagempor milordy » 21 Ago 2019 23:20

vtrx escreveu:
ze escreveu:Se tiver outro port disponível p.ex RA2, use-o como 'vcc' pro pullup. Imagine um 4K7 entre Ra2 e Ra0. Chaveie o TRIS do RA2
Código: Selecionar todos
RA2=1;TRISA2=0;//=>liga pullup em RA0
RA2=0;TRISA2=0;//pulldown em RA0
TRISA2=1;//libera analógico em RA0

O problema é que pretendia usar os analógicos RA0 a RA6,essas entradas vão fazer falta caso o usuário não queira utilizar ADC.

Qual o modelo de pic que você usa?Você poderia usar algum pic com mais pinos ou escolher alguns dos novos tem resistor de pull-up internos em todos os pinos.
Se você não pode usar pino extra,resistor de pull-up que não interfira no adc ou algum pic mais novo,imagino que unica opção será usuário fazer alguma mudança fisica para isso,talvez um jumper,chave,resistor...
milordy
Nibble
 
Mensagens: 63
Registrado em: 26 Fev 2015 12:48

Re: PIC ADC e Digital input juntos.

Mensagempor MOR_AL » 22 Ago 2019 09:29

vtrx escreveu:Alguém me da uma ideia de como poderia fazer,no hardware,uma maneira do PORTa ser ADC e se precisar ser Entrada Digital,ja que para entrada digital vou precisar de resistores Pull Up?
Como poderia fazer para os resistores Pull Up não interferir no ADC?
Pensei em transistores 'chaveando' os resistores.


A solução é simples, porém dá algum trabalho.
Considere o circuito a seguir:
Vtrx1.jpg

Onde:
V1 (conhecido) é a tensão que você deseja medir via ADC. Normalmente varia de 0 a 5V. No seu caso, você poderá alterá-lo, via o seu circuito de condicionamento de sinal. É o circuito que converte a pequena tensão gerada pelo seu sensor para os valores entre 0 e 5V. Mas se não puder alterá-lo, não tem importância.
R1 é a impedância de saída de sua fonte V1. Se V1 for fornecido por um amplificador operacional, ente valor será muito inferior a R2 e R3. Neste caso, seu circuito estará pronto. Caso queira ter mais exatidão, aguarde...
R2 (conhecido) é o valor que você escolheu para o resistor de pull-up. No manual do PIC, consta a impedância de entrada (R3) do pino na condição de entrada analógica. Então...
R3 (conhecido).

Sendo assim, vale a seguinte expressão para o valor de Vx em função dos diversos componentes.
Vtrx2.jpg


Você pode:
1 - Calcular Vx em função dos outros valores e da variável V1. Assim você terá a relação entre V1 e Vx e poderá compensar por software.
2 - Alterar V1 para que a tensão Vx varie entre 0 e 5V. Assim você terá toda a excursão do ADC para usar e terá maior precisão.

Talvez, se você fornecer maiores detalhes do que seria sua fonte V1, a gente poderia chegar a um denominador comum.
MOR_AL
Você não está autorizado a ver ou baixar esse anexo.
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Re: PIC ADC e Digital input juntos.

Mensagempor ze » 22 Ago 2019 11:32

vtrx escreveu: usar os analógicos RA0 a RA6,essas entradas vão fazer falta caso o usuário não queira utilizar ADC.

À válida alternativa do amigo Moris, permita-me algo [que considero ainda mais] simples: Use RB0 (ou o port disponível) como "pullup programável" (inventei isso agora) e um diodo em cada entrada.

Código: Selecionar todos
    +-->|-[4k7]--RA0
    |
    |-->|-[4k7]--RA1
    |
    |-->|-[4k7]--RA2
RB0-o
    |-->|-[4k7]--RA3
    |
    |-->|-[4k7]--RA4
    |
    +-->|-[4k7]--RA5


Nem precisa mexer com TRISB0. Basta :
RB0=0;//pullup desligado
RB0=1;//pullup ligado
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Re: PIC ADC e Digital input juntos.

Mensagempor vtrx » 22 Ago 2019 12:09

(MOR_AL) ,no circuito a referencia é de 5V(do próprio PIC),é importante que o potenciômetro(Linear)tenha sua posição central correspondendo a metade da leitura.
(ze) Bastante interessante esta ideia,pois tinha pensado em usar uma ponte de resistores(4K7)controlado por um PORT,mas provavelmente uma iria interferir na leitura do outro pois são ligadas internamente,ja separando e usando o Diodo acho que esse problema desaparece.
(milordy) O modelo é o 18F4550,como é uma atualização tanto de funções como de 'preço' final,tem que ser ele,na verdade não precisaria mas pelo custo benefício(fonte compilada,testes Eeprom interna)ele continua a ser a escolha.
Caso não fique satisfatório,teria que oferecer duas versão de circuito...

PS:Em relação de escolha por chaves etc,a interface ja foi vendida($)para pessoas que me perguntaram como poderia ligar os fios numa chave de 3 contatos sendo que o circuito usa duas apenas...(o cliente sempre tem razão..).
A interface é programada por um aplicativo específico e gostaria de manter assim.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: PIC ADC e Digital input juntos.

Mensagempor MOR_AL » 23 Ago 2019 07:56

vtrx escreveu:(MOR_AL) ,no circuito a referencia é de 5V(do próprio PIC),é importante que o potenciômetro(Linear)tenha sua posição central correspondendo a metade da leitura.
....


Ok!
Vcc = 5V da fonte, que sabemos não ser uma boa fonte de referência. Mas tudo bem.

1 - Que potenciômetro é esse que você se refere? Reli todo o tópico e não achei menção a potenciômetro. Será que é a sua fonte V1 e R1 do meu circuito? Qual seria o valor dele?
2 - Você sabe qual é o valor de R3 no meu circuito? A resistência de entrada do pino quando ele estiver configurado como entrada analógica. Tem no datasheet do PIC.
3 - A sua tensão a ser lida pelo ADC pode ser entregue por um amplificador operacional?

MOR_AL
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Re: PIC ADC e Digital input juntos.

Mensagempor vtrx » 23 Ago 2019 10:34

MOR_AL escreveu:
vtrx escreveu:(MOR_AL) ,no circuito a referencia é de 5V(do próprio PIC),é importante que o potenciômetro(Linear)tenha sua posição central correspondendo a metade da leitura.
....


Ok!
Vcc = 5V da fonte, que sabemos não ser uma boa fonte de referência. Mas tudo bem.

1 - Que potenciômetro é esse que você se refere? Reli todo o tópico e não achei menção a potenciômetro. Será que é a sua fonte V1 e R1 do meu circuito? Qual seria o valor dele?
2 - Você sabe qual é o valor de R3 no meu circuito? A resistência de entrada do pino quando ele estiver configurado como entrada analógica. Tem no datasheet do PIC.
3 - A sua tensão a ser lida pelo ADC pode ser entregue por um amplificador operacional?

MOR_AL

A interface (atualizada)irá usar POT de 10K.
A tensão a ser lida é processada no PIC que é uma interface HID,nada externo.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: PIC ADC e Digital input juntos.

Mensagempor pamv » 23 Ago 2019 11:45

MOR_AL escreveu:Ok!
Vcc = 5V da fonte, que sabemos não ser uma boa fonte de referência. Mas tudo bem.


Usar um AD586 não rola porque você não quer mexer no projeto, né?
pamv
Word
 
Mensagens: 842
Registrado em: 20 Jun 2016 21:47

Re: PIC ADC e Digital input juntos.

Mensagempor vtrx » 23 Ago 2019 15:12

pamv escreveu:
MOR_AL escreveu:Ok!
Vcc = 5V da fonte, que sabemos não ser uma boa fonte de referência. Mas tudo bem.


Usar um AD586 não rola porque você não quer mexer no projeto, né?

Sim,e o ADC não é crítico nessa interface,apenas precisa que o POT tenha no meio do curso o valor mais próximo possível a metade da leitura.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Próximo

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

x