Autor Tema: Adc en Pic 16F690  (Leído 2214 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado pic_877a

  • PIC16
  • ***
  • Mensajes: 172
Adc en Pic 16F690
« en: 07 de Mayo de 2023, 18:59:48 »
 ola chicos, bueno estoy leyendo a la hoja de datos pic 16f690 y estoy realizando un pequeño código en pic basic pro
necesito activar el adc del citado pic
he configurado el puerto a como entrada

DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_ SAMPLEUS 50

TRISA = 255
ADCON1 =%00010010  conversión analógica digital
lo que si esto es correcto o no
adjunto las imágenes de la tabla del adc pic 16f690.

 :(


Desconectado Jiha

  • PIC10
  • *
  • Mensajes: 23
Re:Adc en Pic 16F690
« Respuesta #1 en: 08 de Mayo de 2023, 11:23:31 »
Adcon1 no hay que modificarlo, lo que hay que inicializar es ansel y anselh para elegir que entradas son digitales porque sino son todas analogicas

Desconectado pic_877a

  • PIC16
  • ***
  • Mensajes: 172
Re:Adc en Pic 16F690
« Respuesta #2 en: 08 de Mayo de 2023, 11:26:52 »
Adcon1 no hay que modificarlo, lo que hay que inicializar es ansel y anselh para elegir que entradas son digitales porque sino son todas analogicas

podrías  por favor colocar un ejemplo para poderme guiar.
gracias  :(

Desconectado Jiha

  • PIC10
  • *
  • Mensajes: 23
Re:Adc en Pic 16F690
« Respuesta #3 en: 08 de Mayo de 2023, 11:41:38 »
ANSEL=%00000001
ANSELH=%00000000
Elige RA0 como entrada analógica y
Todas las demás como digitales

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Adc en Pic 16F690
« Respuesta #4 en: 08 de Mayo de 2023, 11:42:57 »
Adcon1 no hay que modificarlo, lo que hay que inicializar es ansel y anselh para elegir que entradas son digitales porque sino son todas analogicas

Yo pensaría que si puede y debe modificarlo dependiendo de cuál va a ser la fuente de reloj del ADC. (Tiempo de conversión).

El OP debería mostrar un esquemático del hardware que está usando.
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado pic_877a

  • PIC16
  • ***
  • Mensajes: 172
Re:Adc en Pic 16F690
« Respuesta #5 en: 08 de Mayo de 2023, 11:46:37 »
ANSEL=%00000001
ANSELH=%00000000
Elige RA0 como entrada analógica y
Todas las demás como digitales

en el pic 16f690 quiero usar 2 entradas análogas AN1 y AN2 es decir RA1 y RA2  y de las demás como entrada digitales
 :(

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Adc en Pic 16F690
« Respuesta #6 en: 08 de Mayo de 2023, 11:50:29 »
ANSEL=%00000001
ANSELH=%00000000
Elige RA0 como entrada analógica y
Todas las demás como digitales

en el pic 16f690 quiero usar 2 entradas análogas AN1 y AN2 es decir RA1 y RA2  y de las demás como entrada digitales
 :(

ANSEL te sirve para seleccionar que terminales deseas que sean entradas analógicas,

Por lo tanto sería así para AN1 y AN2:

ANSEL=%00000110
ANSELH=%00000000
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Adc en Pic 16F690
« Respuesta #7 en: 08 de Mayo de 2023, 11:52:47 »
Respecto a ADCON1, no sabemos el cristal u oscilador que estás usando y es necesario conocerlo para escoger un tiempo de conversión adecuado.

Por lo tanto deberías compartir el esquemático de tu proyecto.
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado pic_877a

  • PIC16
  • ***
  • Mensajes: 172
Re:Adc en Pic 16F690
« Respuesta #8 en: 08 de Mayo de 2023, 11:56:30 »
Respecto a ADCON1, no sabemos el cristal u oscilador que estás usando y es necesario conocerlo para escoger un tiempo de conversión adecuado.

Por lo tanto deberías compartir el esquemático de tu proyecto.

no visualiza mensaje en lcd 20x4 y además estoy utilizando crystal externo de 4 Mhz con  2 condensadores 22p y gnd

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Adc en Pic 16F690
« Respuesta #9 en: 08 de Mayo de 2023, 12:05:16 »

Si lees las hojas de datos, con tu cristal de 4 MHz:



El tiempo de adquisición  puede ser Fosc/8, Fosc/16 o usar el oscilador interno. Y eso debes configurarlo en el ADCON1
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado Jiha

  • PIC10
  • *
  • Mensajes: 23
Re:Adc en Pic 16F690
« Respuesta #10 en: 08 de Mayo de 2023, 12:11:09 »
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_ SAMPLEUS 50
Con estas definiciones ya se configura adcon1

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Adc en Pic 16F690
« Respuesta #11 en: 08 de Mayo de 2023, 12:12:49 »
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_ SAMPLEUS 50
Con estas definiciones ya se configura adcon1

Eso faltaba, un experto en PICBasic, para recurrir a las trucos que posee el compilador
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado pic_877a

  • PIC16
  • ***
  • Mensajes: 172
Re:Adc en Pic 16F690
« Respuesta #12 en: 08 de Mayo de 2023, 12:21:24 »

Si lees las hojas de datos, con tu cristal de 4 MHz:



El tiempo de adquisición  puede ser Fosc/8, Fosc/16 o usar el oscilador interno. Y eso debes configurarlo en el ADCON1

quedaría así?

ADCON1 =%11100010010001

Desconectado Jiha

  • PIC10
  • *
  • Mensajes: 23
Re:Adc en Pic 16F690
« Respuesta #13 en: 08 de Mayo de 2023, 12:28:00 »
No adcon1 es un registro De 8 bits además con la declaración DEFINE ADC_CLOCK 3 ya se elige de donde se utiliza el clock para el adc y 3 es el
oscilador interno rc si configuras ADCON1 = %00010000 lo divide por 8  'fOSC/8     
« Última modificación: 08 de Mayo de 2023, 12:42:51 por Jiha »

Desconectado pic_877a

  • PIC16
  • ***
  • Mensajes: 172
Re:Adc en Pic 16F690
« Respuesta #14 en: 08 de Mayo de 2023, 12:35:10 »
No adcon1 es un registro De 8 bits además con la declaración DEFINE ADC_CLOCK 3 ya se configura adcon1

estoy usando cristal 4 mhz y 2 condensadores 22p y gnd

de acuerdo con hoja de datos enviada estoy  usando FOSC/8 que corresponde 001 y se debe configurar en ADCON1
y en la pantalla lcd 20x4 no se visuliza nada