Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

16/05/2012 #1

Avatar de chin0o

Duda Tiempo de adqusicion de datos Pic 16f87Xa A/D
Saludos Cordiales compañeros pues me ha nacido una duda sobre el A/D, en especifico es sobre el famoso "Tiempo de adquisición(TACQ)"
Según a lo que entendí en la hoja de datos, es que por la siguiente ecuación (ver en archivo adjunto ACQUISITION REQUIREMENTS lo he marcado con amarillo ) el minimo de tiempo que se puede tener como TACQ es de 19.72us, ahora no se si "yo el usuario" debo de programar este tiempo o ya viene por default, es decir que...

¿Después de que prenda el modulo A/D van a pasar 19.72us?, o yo tengo que sacar ese valor y colocarlo en el registro correspondiente.

Segunda cuestion, estoy confundido
pues no se que "Reloj de conversión" debo usar, estoy utilizando un cristal de 8Mhz
En la hoja de datos encuentro que el tiempo de conversión por bit se define como "TAD"
me dice que debo de tener por lo menos 12 TAD por cada 10 bits de conversion
ahora el reloj de conversion (TAD) debe ser como minimo de 1.6us
entonces puedo elejir entre 7 (TAD)

2TOSC
4TOSC
8TOSC
16TOSC
32TOSC
64TOSC
RC_OSC

según el cristal que estoy utilizando(8Mhz), mi TOSC= 0.125us
entonces de los 7 (TAD) que tengo el que me funciona es el de 16TOSC

>>>>>>>>>>>>>>>> 16 * (0.125us) = 2us <<<<<<<<<<<<<<<<<<

ya que es por encima de los 1.6us que pone como mínimo


Ahora como conclusión...
1.-TAD debe ser mayor que 1.6us
2.-TAD= x * (TOSC)
3.-La conversión del modulo A/D requiere como mínimo 12 TAD(según la hoja de datos)
entonces si estoy en lo correcto debo multiplicar 12 * (TAD)
>>>>>>>>>>>>>>>>> 12*(2us)=24us <<<<<<<<<<<<<<<<

¿Estoy en lo correcto?...
¿Y para que requiero saber ese mínimo de conversión (12*TAD=24us)?

De antemano muchas gracias
Att; Miguel Ángel Miranda
16/05/2012 #2


Hola chinOo


En las hojas de datos del PIC mencionado te hablan de un documento: Mid-Range MCU Family Reference Manual (DS33023).
Ese documento lo puedes conseguir directamente de MicroShip o atraves de Google.com.
Espero te sirva esta info.

saludos
a sus ordenes
17/05/2012 #3

Avatar de chin0o

Muchas Gracias Mrcarlos

Pues ya lo leí al parecer el ACQUISITION TIME (TACQ)
depende de varios factores como es la carga del capacitor(Chold) la impedancia de fuente(source impedance RS) y el interruptor de muestreo (Rss) "vease en acquisition time "
ahora suponiendo que se tienen estos valores...
CHOLD = 120 pF
Rs = 10 kW
Conversion Error £ 1/2 LSb
VDD = 5V ® Rss = 7 kW
Temperature = 50°C
VHOLD = 0V @ time = 0
Es que tenemos el resultado del minimo tiempo que se le debe de dar al tiempo de adquisición que son los famosos 19.75us esto viene de la sig ecuación

TACQ = 2us + 16.47 us + [(50°C - 25°C)(0.05 us/°C)]
18.47 us + 1.25 us
>>>>19.72 us<<<<<
Segun entendi resulta que este tiempo se lo debes de dar no con un registro si no que se lo tienes que dar ya sea con Delays,timers, o simple ejecucion de codigo que demore ese tiempo.

Ok aparte de esto para saber cuanto va a tardar tu conversion tienes que Time convertion=12TAD
y pues parece que estaba en lo correcto Clock source(TAD)=X*TOSC tu puedes elejir el que te convenga dependiendo del oscilador claro, ahora les facilito las cosas poniéndoles la tabla lo que esta en gris son los que están fuera de rango "ver Table 23-1"

Entonces como conclusion...
>>>>>>>>>>>>A/D Sample Time = Acquisition Time + A/D Conversion Time<<<<<<<<<<<<<
En castellano....
Tiempo de muestreo = Tiempo de adquisicion (19.75us "como minimo") + Tiempo de conversion (12 TAD)
"vease en Convertion sequence"
aqui les pongo la operacion del A/D
Operation
The ADRESH:ADRESL registers contains the 10-bit result of the A/D conversion. When the A/D
conversion is complete, the result is loaded into this A/D result register pair, the GO/DONE bit
(ADCON0<2>) is cleared, and A/D interrupt flag bit, ADIF, is set. The block diagrams of the A/D
module are shown in Figure 23-1.
After the A/D module has been configured as desired, the selected channel must be acquired
before the conversion is started. The analog input channels must have their corresponding TRIS
bits selected as inputs. To determine sample time, see Subsection 23.4 “A/D Acquisition
Requirements.” After this acquisition time has elapsed the A/D conversion can be started. The
following steps should be followed for doing an A/D conversion:

1. Configure the A/D module:
• Configure analog pins / voltage reference/ and digital I/O (ADCON1)
• Select A/D input channel (ADCON0)
• Select A/D conversion clock (ADCON0)
• Turn on A/D module (ADCON0)
2. Configure A/D interrupt (if desired):
• Clear the ADIF bit
• Set the ADIE bit
• Set the GIE bit
3. Wait the required acquisition time.
4. Start conversion:
• Set the GO/DONE bit (ADCON0)
5. Wait for A/D conversion to complete, by either:
• Polling for the GO/DONE bit to be cleared or ADIF bit to be set
OR
• Waiting for the A/D interrupt
6. Read A/D Result register pair (ADRESH:ADRESL), clear the ADIF bit, if required.
7. For next conversion, go to step 1 or step 2 as required.
Figure 23-2 shows the conversion sequence, and the terms that are used. Acquisition time is the
time that the A/D module’s holding capacitor is connected to the external voltage level. Then
there is the conversion time of 12 TAD, which is started when the GO bit is set. The sum of these
two times is the sampling time.
There is a minimum acquisition time to ensure that the holding
capacitor is charged to a level that will give the desired accuracy for the A/D conversion.
Imágenes Adjuntas
Tipo de Archivo: png table 23-1.PNG (70,2 KB (Kilobytes), 1 visitas)
Tipo de Archivo: png convertion sequence.PNG (27,0 KB (Kilobytes), 1 visitas)
Tipo de Archivo: png analog input model.PNG (37,5 KB (Kilobytes), 1 visitas)
Tipo de Archivo: png acquisition time.PNG (19,7 KB (Kilobytes), 1 visitas)
25/05/2012 #4


Buen aporte amigo!!

vitoOlazZ RulezZ!!!!!
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.