Conversão A/d e interrupções

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor itamar » 29 Mai 2011 15:35

Não consegui implementar a idéia dos comparadores. Acho que não entendi o Circuito(que tipo de circuito é? Amplificador diferencial??).

E tem outra coisa... a leitura do AD tá muito louca. Coloquei um loop pra ele ficar lendo de tempos em tempos o canal AD mas a cada leitura eu tinha um valor diferente mesmo sem mexer em absolutamente nada(coloquei um pot linear com um terminal no + outro no gnd e o pino central na entrada analógica). Quando mando imprimir a leitura no LCD tem hora que dá 888, logo em seguida 128... etc. Se possível me ajudem(PIC16f877A-12MHz - AD-10bits- C- ccs). Ah.. já tentei mudar o intevalo entre as amostragens e colocar um delay de estabilização... não funfa!
No aguardo
itamar
Nibble
 
Mensagens: 61
Registrado em: 24 Dez 2010 10:21

Mensagempor andre_luis » 29 Mai 2011 17:30

itamar escreveu:...Não consegui implementar a idéia dos comparadores. Acho que não entendi o Circuito...


Esse é um croqui da solução que foi proposta baseado na dica do Aquino sobre o PWM.

Imagem

Seu trabalho agora será pesquizar se o uC que voce está usando possui esses recursos de hardware.
E ainda : Mesmo possuindo eses recursos - PWM / Comparador / AD - deve saber também se existe algum impedimento relacionado ao compartilhamento de recursos. Acredito que não terá problema.

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor MOR_AL » 29 Mai 2011 19:18

itamar escreveu:Não consegui implementar a idéia dos comparadores. Acho que não entendi o Circuito(que tipo de circuito é? Amplificador diferencial??).
São os comparadores do PIC877A.

E tem outra coisa... a leitura do AD tá muito louca. Coloquei um loop pra ele ficar lendo de tempos em tempos o canal AD mas a cada leitura eu tinha um valor diferente mesmo sem mexer em absolutamente nada(coloquei um pot linear com um terminal no + outro no gnd e o pino central na entrada analógica). Quando mando imprimir a leitura no LCD tem hora que dá 888, logo em seguida 128... etc.
Se os valores estão aparecendo tão diferentes (ora 888 ora 128), significa que PODE estar lendo uma entrada aberta!!! Com o tal potenciômetro na fonte, apareceriam tensões com valores próximos.
Você configurou o pino da entrada analógica como entrada?
Além disso, você configurou a conexão da entrada analógica para o pino do PIC?

Se possível me ajudem(PIC16f877A-12MHz - AD-10bits- C- ccs). Ah.. já tentei mudar o intevalo entre as amostragens e colocar um delay de estabilização... não funfa!
No aguardo

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

Mensagempor vtrx » 29 Mai 2011 23:22

Itamar,deixa eu 'meter o bico'.
Voce quer girar um potenciometro e verificar ou medir oque?
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor itamar » 30 Mai 2011 08:21

vtrx escreveu:Itamar,deixa eu 'meter o bico'.
Voce quer girar um potenciometro e verificar ou medir oque?


Quero controlar a potencia sobre um carga(uma espécie de dimmer)
itamar
Nibble
 
Mensagens: 61
Registrado em: 24 Dez 2010 10:21

Mensagempor luisf.rossi » 30 Mai 2011 08:25

E por que raios você quer amostrar apenas quando você alterar o valor? Imagino que o processamento que você vai precisa não seja tão elevado assim não?
luisf.rossi
Byte
 
Mensagens: 109
Registrado em: 28 Nov 2010 12:48
Localização: São Paulo, SP

Mensagempor itamar » 30 Mai 2011 10:55

luisf.rossi escreveu:E por que raios você quer amostrar apenas quando você alterar o valor? Imagino que o processamento que você vai precisa não seja tão elevado assim não?


rsrsrs... existem outras etapas já implementadas e funfando e essas consomem muitas instruções e tem delays para visualização em LCD etc... em resumo eu quero que o PIC se ocupe com as outras tarefas, e só quando houver alterção no potenciometro(canal AD) é que ele trate essa alteração bem rapidinho e volte o que estava fazendo antes(semelhante a uma interrupção OK). Qualquer idéia posta aí.
vlw
itamar
Nibble
 
Mensagens: 61
Registrado em: 24 Dez 2010 10:21

Mensagempor luisf.rossi » 30 Mai 2011 11:22

itamar escreveu: e tem delays para visualização em LCD etc


É nesse momento que você deve amostrar... se você postar o seu codigo realmente seria mais simples, mas provavelmente o tempo de leitura do AD vai ser insignificante no seu codigo... ainda mais se você estiver implementando delays por instruções e não por timer.... isso sim mata eficiencia em qualquer codigo...
luisf.rossi
Byte
 
Mensagens: 109
Registrado em: 28 Nov 2010 12:48
Localização: São Paulo, SP

Anterior

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x