Olá humano!
Por volta de um mês (ou dois) atrás eu estava verificando o datasheet de um conversor DAC (Digital Analogic Converter) da Microchip, o MCP4921, e no final do documento nos é apresentado uma serie de aplicações mais comuns envolvendo o dito cujo. Uma destas aplicações sugeridas é o uso de dois conversores deste, mais um amplificador operacional, para que consigamos uma resolução maior do que a dos conversores usados.
Cabe aqui um alerta antes de prosseguir com o texto. Neste post, ou experimento, só quero verificar o funcionamento do circuito proposto na pratica, não quero discutir qualquer outra característica ou custo-benefício. Dito isto, prossigamos.
Como tenho dois conversores destes por aqui (conversor DAC de 12 bits), resolvi fazer um circuito para verificar o funcionamento. O circuito é baseado no proposto pelo fabricante, em seu datasheet (link), na pagina 32, item 6.7. No datasheet o circuito é apresentado pelo titulo Designing a Double-Precision DAC.
Com base no datasheet desenhei o circuito abaixo:

Onde utilizei um PIC 18F4550 (antes de começarem os blablabla, usei este PIC pois tenho alguns dele aqui disponíveis, pronto, só por isso, eu sei que é mais do que o necessário neste caso…) para poder controlar os DAC, e comunicar com o computador através da porta serial, para que eu possa variar os valores dos conversores através do computador. Por conta da interface com a serial do computador, foi necessário o uso do CI (Circuito Integrado) MAX232. Como referencia de tensão para os DAC utilizei um MC1541, uma referencia de tensão de 4.096V também da Microchip. O circuito conta ainda com um conector para gravação ICSP (In Circuit Serial Programming) do PIC.
O amplificador operacional que utilizei foi o TLE2142, não o LM358 como mostra o esquema elétrico acima. A principal razão é que as características do TLE2142 são muitos melhores. Então porque o LM358 no esquema acima? Simples, o Eagle não tem na sua biblioteca o TLE2142, porém ele é pino-a-pino compatível com o LM358, então para facilitar usei o LM mesmo.
Sobre a parte do amplificador operacional, deixei três contatos para que pudesse medir a tensão em três pontos distintos do circuito, SV7 onde podemos medir a tensão na entrada do Amp Op (saída dos DACs depois dos resistores), SV6, saída do primeiro Amp Op que deve ser igual a saída dos DACs uma vez que este Amp Op esta ligado como um seguidor de tensão, e por fim SV5 que esta conectado a saída do segundo Amp Op (mesmo encapsulamento) que deve apresentar um valor entre 0 e -10V uma vez que o segundo Amp Op esta ligado como um amplificador inversor com ganho em torno de 4.50.
Com o circuito desenhado, a placa ficou com esta cara:

Depois desta etapa, a placa prensada, corroída, limpa, furada, lixada e estanhada ficou com esta cara:


Depois de conseguir uma boa placa, sem curto circuitos ou falhas nas trilhas, pude então prosseguir com a solda dos componentes. Uma vez soldados bastou utilizar o [propaganda ON] Gravador de PIC USB [propaganda OFF] e através do conector ICSP, fazer o download do código na memoria do microcontrolador. A placa montada pode ser vista na próxima figura:
Firmware:
O firmware do PIC foi escrito e compilado no MikroPascal PRO PIC da Mikroeletronika (www.mikroe.com), que é um compilador que eu já uso a algum tempo e possuo a licença (comprei a alguns anos atrás). Não sei se o código compila em uma versão gratuita deste compilador, de qualquer forma, junto com os outros arquivos deste projeto disponibilizarei o arquivo .hex para a memoria do PIC, já compilado.
O firmware é bastante simples, basicamente lê valores enviados pela porta serial do computador e envia estes valores para os DACs, de forma a obtermos a saída desejada.
Devido ao fato do post estar ficando grande, vou separa-lo em 2 partes. Abraço!