Autor Tema: Problema con el ADC y PIC18F4550  (Leído 2194 veces)

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

Desconectado sepul

  • PIC10
  • *
  • Mensajes: 25
Problema con el ADC y PIC18F4550
« en: 08 de Enero de 2007, 15:31:37 »
Hola, resulta que estos días me estoy metiendo con el ADC y me está fastidiando un poco, ya que me convierte mal la señal de entrada.
Estoy realizando un proyecto con un pic en CCS y visual basic, así que de momento solo quiero que me convierta a digital la entrada que le llega al PIC por A0 mediente la orden desde visual basic y que se visualice en una textbox en el ordenador.
aquí os pongo el codigo principal que tiene que ver con el ADC:

Código: [Seleccionar]
#include <18F4550.h>
#device ADC=10
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL3,CPUDIV1,VREGEN
#use delay(clock=48000000)


void main(void) {
long leeadc;
int value;
setup_adc(ADC_CLOCK_DIV_64);
setup_adc_ports(AN0);
setup_adc(VSS_VDD);
set_adc_channel(0);
delay_us(10);

value=read_adc();

usb_put_packet(1, value, 1, USB_DTS_TOGGLE);
}


En la AN0 conecto la señal de Vdd (que la tomo del USB) con un potenciometro para variar la tensión, pero siemrpe me da 0 en el visual, y la tensión varía bien.

En el visual basic lo que le llega del micro lo toma como variable tipo Byte, no se si puede estar el fallo en la forma de declarar lñas variables, que estoy un poco liado en eso...

A ver si saberis de donde puede venir

Un Saludo!!

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Problema con el ADC y PIC18F4550
« Respuesta #1 en: 09 de Enero de 2007, 16:57:02 »
Hola sepul. aún no he trabajado con el módulo USB, pero ¿no hace falta incluir alguna librería? como por ejemplo la pic18_usb.h

otra sugerencia es que primero hagas pruebas con el ADC, pero sin transmitir datos, puedes enviar el resultado a los puertos, como sale en este post, y una vez que estes seguro que funciona correctamente, entonces pruebas la parte de transmitir datos. Esa es una costumbre que tengo yo, pruebo por separado y después uno todo el código.

Salu2
Pedro

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado sepul

  • PIC10
  • *
  • Mensajes: 25
Re: Problema con el ADC y PIC18F4550
« Respuesta #2 en: 09 de Enero de 2007, 20:00:16 »
Hola!ya está solucionado, el ADC trabajando y transmitiendo, menos mal, aun me dio un poco de lio.
Lo que me comentabas tu de las librerias ya estaba puesto, esto solo era la parte del codigo que tenía que ver con el ADC.
Cambié algo el código, pero creo que básicamente, estaba en poner setup_adc_ports(AN0|VSS_VDD) todo junto y no por separado.

Saludos y gracias, PalitroqueZ!!!

Deimos

  • Visitante
Re: Problema con el ADC y PIC18F4550
« Respuesta #3 en: 10 de Enero de 2007, 09:41:07 »
Hola sepul, no creo que el problema fuese por poner junto o separado lo del AN0|VDD, ya que el divisor del ADC lo tienes por separado y eso parece que no te ha dado problemas.

Si buscas dentro de este foro, encontrarás fuentes en CSS para realizar ADC. Te pueden servir para comparar tu fuente con otros que seguro que funcionan y ver donde divergen.

Atentamente