Hola buen día a todos, soy un nuevo usuario de este foro. Muchas veces vi que tienen soluciones muy buenas. Los felicito a los creadores del mismo y a todas las personas que comparten su conocimiento.
En fin, la duda que tengo es la siguiente, tengo un dspic (el de la descripción) y quisiera hacer andar el dac (Conversor Digital Analógico). La idea es lo que tome la entrada analógica (AN0) lo mande por el dac (derecho).
El lenguaje que estoy usando es el CCS. El programa compila, pero cuando voy a medir en el dspic, la salida del dac me da una continua de 1.77v. No se que estaría haciendo mal en el programa. Les adjunto el programa:
#include <33FJ128GP802.h>
#device ADC = 12
#use delay (CLOCK=20000000) //cristal es 20MHz
#FUSES NOWRTB,NOBSS,NORBS,NOWRTSS,NOSSS,NORSS
#FUSES NOWRT,NOPROTECT,NOIESO,NOPR,NOOSCIO
#FUSES NOIOL1WAY,NOCKSFSM,NOWINDIS,NOWDT
#FUSES NOPUT,NOALTI2C1,NOJTAG,NODEBUG
void main()
{
float entrada;
setup_adc_ports(sAN0);//Pin 2
setup_adc(ADC_CLOCK_INTERNAL);
setup_dac(DAC_RIGHT_ON);
while(TRUE)
{
set_adc_channel(0);//cambia el canal
delay_us(10);//tiempo para q el canal se cambie
entrada=read_adc();//lectura del adc
dac_write(DAC_RIGHT,entrada);//escritura del dac
}
}
Si alguien me puede ayudar, estaria muy agradecido. Muchas gracias por visitar este tema y gracias por su tiempo en ponerse a leer.