Autor Tema: Conversor D/A con pic18f4550?  (Leído 10836 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado dielafer

  • PIC10
  • *
  • Mensajes: 8
Conversor D/A con pic18f4550?
« en: 09 de Febrero de 2011, 12:48:56 »
He estado mirando el datasheet del pic 18f4550 y parece que si se puede hacer un conversor analógico-digital pero no he visto nada sobre uno digital-analógico. Ademas en las librerias para programarlo en c tampoco he visto nada.

Quisiera saber si es posible realizar un DAC con este pic, el cual actuaria como maestro en una cominicación SPI con un mcp4822.

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Conversor D/A con pic18f4550?
« Respuesta #1 en: 09 de Febrero de 2011, 13:49:53 »
  Por ejemplo un DAC de 8 bits es muy fácil de implementar utilizando el sistema R-2R. Busca en google que seguro encontrarás algo.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Conversor D/A con pic18f4550?
« Respuesta #2 en: 09 de Febrero de 2011, 16:17:16 »
También se puede implementar un PWM y un filtro pasa bajos, en el foro Nocturno hizo algo por el estilo. Y sino un C.I. dedicado a ello.  ;-)


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado dielafer

  • PIC10
  • *
  • Mensajes: 8
Re: Conversor D/A con pic18f4550?
« Respuesta #3 en: 10 de Febrero de 2011, 13:21:34 »
Lo que pasa es que tengo que utilizar el mcp, el mcp4822 o el mcp4921 y la verdad es que no se muy bien como funciona.

Yo le metería la entrada digital por cualquier puerto del pic y despues de meter las instrucciones de configuracion del spi, me haría la conversión a la salida del mcp4921?
Como veis estoy un poco perdido.
« Última modificación: 10 de Febrero de 2011, 13:29:55 por dielafer »

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Conversor D/A con pic18f4550?
« Respuesta #4 en: 10 de Febrero de 2011, 13:49:47 »
Busca el datasheet del mcp4822 o el mcp4921, allí está detallado como funciona y como debe trabajarse.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado dielafer

  • PIC10
  • *
  • Mensajes: 8
Re: Conversor D/A con pic18f4550?
« Respuesta #5 en: 10 de Febrero de 2011, 14:20:35 »
Busca el datasheet del mcp4822 o el mcp4921, allí está detallado como funciona y como debe trabajarse.


Saludos!

Ok. Creo que mi problema ahora mismo sólamente es de programación, veremos si consigo solucionarlo.


Desconectado dielafer

  • PIC10
  • *
  • Mensajes: 8
Re: Conversor D/A con pic18f4550?
« Respuesta #6 en: 10 de Febrero de 2011, 14:35:01 »
Voy a dejar el código y una captura de como lo tengo. Soy novato así que no os asusteis mucho.


Código: [Seleccionar]
#include <18f4550.h>               
#device ICD=TRUE
#device ADC=10
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=4000000)
//#include <lcd_portd.c>
//#include <stdlib.h>
#include <mcp4921.c>

void main()
{
   
   int16 a;
   setup_spi(spi_master | spi_l_to_h | spi_clk_div_16);
   //lcd_init();
   init_dac();
   setup_adc_ports(AN0);
   setup_adc(ADC_CLOCK_DIV_64);
   set_adc_channel(0);
   delay_ms(100);

      while(1)
      {
         a=read_adc();
         delay_ms(1);
         //printf(lcd_putc,"\f  %ld",a);
         spi_write(a);
         delay_ms(100);
      }
}



Desconectado tinchomar

  • PIC10
  • *
  • Mensajes: 9
Re: Conversor D/A con pic18f4550?
« Respuesta #7 en: 10 de Febrero de 2011, 18:08:16 »
Digo yo, y talvez este pasando algo por alto, es posible tambien usar las entradas del pic como la parte digital del conversor, asi 4 entradas - 4 bits, 5 entradas - 5 bits... y tener una salida pwm que genere una tension segun las entradas...
Bueno, es una idea.
Saludos.

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Conversor D/A con pic18f4550?
« Respuesta #8 en: 10 de Febrero de 2011, 20:23:08 »
dielafer, SDI es el pin por el cual el dispositivo "saca" la data. O sea, no se puede conectar SDI del PIC con SDI del MCP  ;-)

Luego, el pin CS es para habilitar al dispositivo, y si has leído el datasheet sabrás que es activo a nivel bajo. Entonces, antes de comunicarte con el MCP lo habilitas mediante este pin, y al terminas lo des-habilitas llevando a 1 lógico.

Ahora, tienes un include de <mcp4921.c>, revisa esa librería y la ayuda de la misma, seguro tiene las funciones que necesitas para comunicarte con el MCP  :shock:


Saludos!
No contesto mensajes privados, las consultas en el foro