sexta-feira, 7 de agosto de 2009

Mais código! Configurando AD com o IO Wizard.

Continuando nossa saga, vamos agora fazer a configuração do ADC usando o IO Wizard.O procedimento é basicamente o mesmo, se já fez toda a configuração do post anterior, é só abrir o IO Wizard e fazer a configuração abaixo do ADC.

Eu usei o AN1, pino 14 do micro, mas nada impede o uso de qualquer outra entrada do conversor.

Uma coisa interessante para se fazer é alternar a entrada escolhida e na janela de código gerado observar os registradores ch0, ch1 e ch2 mudando de acordo com a entrada selecionada. A configuração fica como na figura abaixo:




Já que vamos usar o ADC, por que não colocar um timer rodando também? Eu escolhi o Timer X por que gosto do nome, mas o Timer Z também pode ser usado para essa função!
Simples, selecione o Timer X, ative e selecione o modo de opeção timer.
O Timer X é um timer de 8 bits com um preescaler de 8, o que para mim é um timer de 16 bits, mas chamem como quiserem.

O registradores que determinam o tempo são os prex e o tx, preescaler e registrador do timer respectivamente.

Como selecionei sem divisão (no division) o timer está rodando a 20MHz, logo 50nS de período para cada incremento do preescaler.

A conta para saber o tempo é: t = (prex + 1) * (tx + 1) * período

No nosso caso: t = (249 + 1) * (79 + 1) * 50*10^-9 = 1*10^-3 = 1mS

Mais fácil que furar um olho, não? Veja na figura abaixo:

Eu usei ambos recursos em um projeto, aproveitando a paranoia da gripe suina, fiz um termometro com um LM35, claro que sem precisão, não usei uma referência boa, só o velho 7805 da placa e o LM35 ligado direto na entrada do ADC! Olha como ficou a montagem na placa.

Com o software rodando no micro, conectado a serial, Hyperterminal aberto, 19200 8-N-1, deve aparecer a tela abaixo:

Como sempre, o WorkSpace completo, LM35_serial.zip está na seção arquivos no site do grupo, para quem ainda não conhece:

http://groups.google.com.br/group/renesas_brasil

Até a próxima!

Nenhum comentário:

Postar um comentário