quarta-feira, 27 de setembro de 2017

Complemento da postagem anterior: medidor de Tensão/Corrente com o INA219 com display LCD no NOKIA1100.

        Aproveitando a montagem do placa do medidor da postagem anterior com displays LED, fiz esta adaptação para usar o display LCD do indestrutível NOKIA1100 e testar a comunicação da USART do PIC12F1840 enviando 9 bits requeridos por este display LCD que usa o controlador PCF8814 da NXP (antiga Philips).
        Assim como no caso do AS1107/MAX7219, o PCF8814 deve além de receber o bit mais significativo primeiro deve receber antes o 9ºbit de comando/dados. A USART do PIC12F1840 pode enviar este 9 bits mas deve-se inverter a ordem dos bits e acrescentar o 9° bit, uma tarefa que me consumiu bastante tempo.

Placa do medidor com o display do NOKIA1100 e seu adptador.

Display em ação mostrando o bargraph da corrente, tensão, potência e corrente.

Com uma corrente maior.


















Medidor de Tensão/Corrente com o INA219 com display de 7 segmentos.

       Para a futura fonte que estou projetando, montei este medidor de tensão/corrente com o já mostrado IC INA219. Este medidor, no entanto, usa displays comuns de LED de 7 segmentos de catodo comum acionados pelo IC AS1107 da AMS. Este IC é compatível com o MAX7219, da Maxim.
        O IC AS1107 pode acionar 8 displays de 7 segmentos (mais o ponto decimal). Usa comunicação serial síncrona e pode ser cascateável com outros AS1107 para acionar mais displays. Pode também acionar 64 LEDs em uma matriz 8x8.
Este medidor é controlador por um PIC12F1840 que pode usar simultaneamente I²C (comunicação com o IN219) e serial síncrona (comunicação com o AS1107).
        Como é um protótipo, fiz este medidor em duas placas: uma é do display e o IC AS1107 (que pode ser aproveitada em outro projeto ou protótipo) e a outra é do medidor propriamente dito, com o PIC12F1840 e o INA219.
        O que mais deu trabalho neste medidor foi fazer a USART do PIC12F1840 comunicar com o AS1107, pois esta envia o bit menos significativo primeiro e o AS1107 deve receber o bit mais significativo primeiro, assim o bits a serem enviados devem ter a ordem de envio invertida. Consegui fazer uma rotina que fizesse esta inversão gastando menos de 30 words da memória do PIC12F1840.

Medidor visto de cima, com o PIC12F1840 e o INA219 em um adaptado DIP.

Medidor visto de baixo, note o resistor shunt de 0R200 e os componentes de filtragem.

Display do medidor. Linha superior mostra tensão e de baixo a corrente.

Placa com os displays LED e o AS1107 visto de cima.

Placa com os displays LED e o AS1107 visto de baixo.

Medidor em ação mostrando um corrente positiva de 0,10A.

Medidor em ação mostrando um corrente negativa de 0,10A.

Medidor em ação mostrando um corrente positiva de 1,59A.