You are on page 1of 32

Hola darwin, no vi detalladamente tu programa ya que trabajas con sistema hex a diferencia de mi que trabajo en sistema binario cuando

trabajo directamente con registros de proposito especifico. Uno de tus problemas segun lo que vi puede deberse al tiempo de adquisicion necesario para la conversion. Luego de encender el conversor a/d debes hacer un retardo de unos 20 uS recomendablemente. Aunque tu programa parece hacerlo ya que hay muchas instrucciones luego del encendido del adc, pero aqui te paso la rutina que siempre utilizo con el lm35 para que compares. La he utilizado en 3 ocasiones, llevadas a campo y ha resultado. Ahora te doy detalles de como lo hice. Primero trabajo con justificacion a la izquierda (utilizando el adresh), ya que asi no tengo problemas con los desbordes del adresl. ademas de eso, la referencia esta a 5 voltios por lo que dividi el resultado de la conversion entre 2 con un rrf por la sensibilidad del lm35.
confi movlw movwf bcf conv_temp ADC Encendido movwf movlw movwf decfsz goto bsf btfss goto bcf movf movwf y unidad rrf movwf return adresh_r,w portc adcon0 .35 adc_cont adc_cont,1 $-1 adcon0,2 pir1,adif $-1 pir1,adif adresh,0 adresh_r ; Final de conversion ; Guarda los valores en centena,decena ; Inicio de conversion ; Espera de aprox. 20uSeg bsf status,5 b'10000101' adcon1 status,5 movlw b'11000001' ; Canal RA0, Oscilador interno,

PD: No estoy conectandome muy seguido. Si tienes alguna duda pasame un mensaje privado con la direccion del post y te respondo aqui en el foro. Saludos

hola yo tengo un problema con el ADC del 77A. Al haber configurado todo cual como lo dice el datasheet al leer los valores el los registros

ADRESH y ADRESL usando la justificacion a la izquierda veo que solo puedo los 8 bits mas significativos que carga ADRESH pero no los 2 bis menos significativos del ADRESHL, y si justifico a la derecha puedo ver los 2 bits mas significativos del ADRESH mas los 8 restantes no me los muestra el ADRESHL. Quisiera que me ayudara para poder seguir con mi proyecto ya que este ADC va incluido en el. aca le dejo mi codigo para ver si quizas usted me pueda corrregir.
List p=16f877A Include <P16f877A.inc> radix hex

reg1 reg2 bajos altos H L

equ 21h equ 22h equ 23h equ 24h equ 0x1e equ 0x1e org 0x00 goto org 0x04 call retard bcf PIR1,6 ; ADIF = 0 retfie inicio

inicio

bsf

STATUS,5

; entro al banco 1

bcf STATUS,6 movlw b'00000001' ; RA0 entrada el resto salida clrf TRISB clrf TRISC clrf TRISD movlw b'100' movwf TRISE empieza movlw b'01001110' ;justifico hacia la izquierda movwf ADCON1 bcf STATUS,5 bcf STATUS,6 movlw b'11000001'; activo el reloj interno del pic movwf ADCON0 conversion. bcf PIR1,6 bsf INTCON,6 bsf INTCON,7 bsf STATUS,5 bcf STATUS,6 bsf PIE1,6 ; ADIE = 1 ; ADIF = 0 ; PEIE = 1 ; GIE = 1 ; banco 1 ; RA0 entrada analogica y activar el modulo de ;voy al banco 0 ; salida ; Salida ; salida ; RE0, RE1 salidas, RE2 entrada

call retardo bcf STATUS,5 bcf STATUS,6 clrf PORTB clrf PORTC clrf PORTD clrf PORTE ini_ADC bsf goto $-1 bsf STATUS,5 ADCON0,2

; tiempo para adquisicin ;banco 0

; salida de datos

; comienza la conversin ; termino la conversin? ; No ; Banco 1

btfsc ADCON0,2

movf L,0 movwf bajos

; paso los 2 bits mas significativos a W ; W a reg3

bcf STATUS,5 movf H,0 movwf altos movwf PORTB movf bajos,0 movwf PORTE call retardo goto ini_ADC retardo movlw 09h movwf reg1 otravez decfsz reg1,1 goto otravez return retard repite movlw 08h movwf reg2 decfsz reg2,1 goto repite return END

; Banco 0 ; cargo los 7 bits mas significativos a W ; W areg4

; .. 40 microseg

; .. 40 microseg

Respuesta: Programa de conversin A/D con Pic 16f877

hola amigos, he buscado y no he encontrado una manera de medir temperatura con un termistor y el pic16f88, he visto ejemplos similares en los que usan un lm35, pero usan un LCD, yo quisiera simplemente,

por ejemplo encender un led al pasar cierto nivel de temperatura, si me pudieran ayudar con un codigo en C, o mucho mejor en PBP, les agradeceria mucho!. Citar
13-may-2010 #23 Respuesta: Programa de conversin A/D con Pic 16f877

ulabarri
Fecha de Ingreso: mayo2010 Ubicacin: cali Mensajes: 2

nesecito un sensor de temperatura con un lm 35 y un pic16f877a en el codigo en c si alguien me puede ayudar se lo agradesco es urgente Citar

13-may-2010

#24 Respuesta: Programa de conversin A/D con Pic 16f877

elegaba
Fecha de Ingreso: abril-2009 Mensajes: 6

saludos a todos quisiera saber cual es el voltaje minimo de entrada en el puertoa y en los demas puertos.. sucede que debo digitalizar uan seal proveniente de un antena que trabaja a una frecuencia de 1GHz y no se como conectar esa seal al pic para digitalizarla, me podrian colaborar con eso?....si no esta claro lo que quiero hacer diganmelo Citar

14-may-2010

#25 Respuesta: Programa de conversin A/D con Pic 16f877 ulabarri dijo:

FRYCK

nesecito un sensor de temperatura con un lm 35 y un pic16f877a en el codigo en c si alguien me puede ayudar se lo

agradesco es urgente

hola ulabarri en la red hay muchos y en este mismo foro si utilizas el buscador encontraras tu tarea saludos
Fecha de Ingreso: junio-2007 Ubicacin: Popayan Colombia Mensajes: 123

Citar
03-jun-2010 #26 Respuesta: Programa de conversin A/D con Pic 16f877 ulabarri dijo:

EINNER C

nesecito un sensor de temperatura con un lm 35 y un pic16f877a en el codigo en c si alguien me puede ayudar se lo agradesco es urgente

mira en la pagina 1, he subido un ejemplo similar, espero le


Fecha de Ingreso: mayo-2009 Ubicacin: Villavicencio, Colombia Mensajes: 102

sirva.... abramos nuestra mente al conocimiento...

Citar
13-jul-2010 #27 Respuesta: Programa de conversin A/D con Pic 16f877

AguLosToldos
Fecha de Ingreso: julio-2009 Ubicacin: Argentina Mensajes: 3

hola necesito si me pueden ayudar para obtener un programa en c que me realice 2 pwm con el pic 16f877 muchas gracias por su ayuda

Citar
05-ago-2010 #28 Respuesta: Programa de conversin A/D con Pic 16f877

andyjair
Fecha de Ingreso:

Hola que tal a todos espero que alguien me pueda ayudar con lo que estoy haciendo...para comenzar utilizo un lenguaje

julio-2010 Ubicacin: lima Mensajes: 5

BASIC del PIC SIMULAOR IDE... Mi problema es el siguiente::: Tengo un pwm de 25Khz, lo estoy variando con el puertos RA0 Lo que estoy haciendo es tomar una seal de referencia de 0 a 5volts con un potenciometro.. lo meto al convertidor A/D.. pero obtengo un valor de 10 bits.. como le hago para introducir ese valor en el pwm..... Lo que hago es copiar del registro ADRESL en CCPR1L y los otros 2 bit que estan en ADRESH los copio al CCP1CON pero al variar el potenciometro me despliega tres veces el pwm Dicho de otra manera: comienzo a girar el potenciometro y comienza el pulso desde cero hasta un valor maximo.. al seguir variando el potenciometro, el pulso comienza nuevamente desde cero y va hasta su valor maximo.. asi lo hace hasta 4 veces hasta que el potenciometro llega hasta el final... yo quiero que lo haga solo una vez.... T_T aki esta el programa: -------------------------------------------------------------Dim conversion As Word

ADCON0 = %10000000 'RA0 entrada analogica,clock A/D Fosc/8 ADCON1 = %10001110 'RA0 analogico ,RA1:RA7 E/S digitales '6 bits d mas peso ADRESH a '0' PR2 = 39 CCP1CON = %00001100 'CCP1 a modulo PWM

pwm: WaitUs 50 Adcin 0, conversion CCPR1L = ADRESL '8 bits LSB del Ciclo de Trabajo CCP1CON.5 = ADRESH.0 '2 bits menos significativos CCP1CON.4 = ADRESH.1 'del Ciclo de Trabajo TRISC.2 = 0 T2CON = 0x04 'prescaler 1:1 y ativacion del TMR2 WaitUs 50 Goto pwm End Citar
01-sep-2010 #29 Respuesta: Programa de conversin A/D con Pic 16f877

potri1974
Fecha de Ingreso: septiembre-2010 Ubicacin: Madrid Mensajes: 2

Hola, me interesa mucho tu cdigo. Necesito algo parecido. Estoy intentando hacer un termmetro con un LM35 pero aprovechando los 10 bits de resolucin. Me interesa tener el resultado en formato tal que tenga Unidad, Decena y Centena para sacarlo por a 3 displays de 7 segmentos. Creo tu cdigo va por ah. Te agradecera que me pudieras ayudar. Citar

02-sep-2010

#30 Respuesta: Programa de conversin A/D con Pic 16f877

osac99
Fecha de Ingreso: diciembre-2009 Ubicacin: ecuador

Que usas para programar el PIC???

Mensajes: 10

Citar
03-sep-2010 #31 Respuesta: Programa de conversin A/D con Pic 16f877

potri1974
Fecha de Ingreso: septiembre-2010 Ubicacin: Madrid Mensajes: 2

Directamente programo en ensamblador.

Citar
03-sep-2010 #32 Respuesta: Programa de conversin A/D con Pic 16f877

osac99
Fecha de Ingreso: diciembre-2009 Ubicacin: ecuador Mensajes: 10

hola alli te pongo el codigo para pasar de un numero de 8 bits a decimal. el numero decimal se almacena en tres registros: HSD, MSD y LSD. el goto validar sale con el valor del decimal en los tres registros antes mencionados. clrf HSD clrf MSD movf DATO,w ;valor a transformar movwf LSD rest movlw d'10' subwf LSD,W btfss STATUS,C goto validar movwf LSD incf MSD movlw d'10' subwf MSD,0 btfss STATUS,Z goto rest clrf MSD

incf HSD goto rest Citar


22-sep-2010 #33 Respuesta: Programa de conversin A/D con Pic 16f877

pezcao
Fecha de Ingreso: enero-2010 Ubicacin: Irapuato Mensajes: 1

Hola que tal , quisiera saber si alguno de ustedes sabe como hacer que un led se prenda a los 70c, usando el LM35 y el pic 16F877, porque ya tengo una idea pero aun no se programar muy bien en MPLAB , podrian ayudarme?? Lo que pasa es que no se como recibir los datos en el PIC , de verdad necesito ayuda, gracias
ltima edicin por pezcao; 22-sep-2010 a las 13:23

Citar
17-feb-2011 #34

fernandopos
Fecha de Ingreso: marzo-2010 Ubicacin: posadas Mensajes: 2

EINNER come ta va, estoy incursionando en los micros pic y encontre tu post podes ayudarme a ver como influyen las variables N1 , N2 y entrar, en el proyecto que utiliza el 16f877 para controlar la temperatura? Otra preg. como controlas cual es la variable que se debe cambiar? si bien entiendo que con los valores de hard_inc y hardw_decr pero como diferencias VAR1, VAR2, VAR3, VAR4. Saludos. Citar

17-feb-2011

#35

EINNER C

hola fernandopos

gracias por ves el proyecto y me parece bn que te interese esto de los pic en cuanto a tu duda, quiero pedir disculpas por no habr quitado las variables N1, N2, entrar, ya que no las uso, las tenia alli por que estaba implementado control desde el pc, que se realizara lo mismo que con los pulsadores pero de una forma grafica mas amigable,,,,,, en cuanto a lo de las otras variables, puedes ver que la configuracion se realiza en una secuencia, luego de entrar al menu de configuracion empiezas con var1 que indica la temperatura inferior minima, sigue var2 (temp superior maxima), var3 temp muy muy baja y var4 temp muy muy alta, y como aprecias en el main se trabaja en base a estas para prender o apagar dispositivos que controlaran latemperatura cualquier duda o sugerencia es bienvenida,, nota: termine lo de la comunicacion con el pc, espero pronto subirlo, no he tenido mucho tiempo de volver a retomar estos temas,,,,,,, Citar
17-feb-2011 #36 Comunicacion

Fecha de Ingreso: mayo-2009 Ubicacin: Villavicencio, Colombia Mensajes: 102

fernandopos
Fecha de Ingreso: marzo-2010 Ubicacin: posadas Mensajes: 2

Gracias por contestar. Efectivamente Einner luego de estudiar al detalle el codigo imagine eso que comentas. Me interesa la comunicacion con el pc que comentas, cuando tengas si puedes postear para ir anexando conocimientos. Me interesa mucho este tema de los microcontroladores. Saludos cordiales. Citar

06-mar-2011

#37

0rland0
Fecha de Ingreso: julio-2008 Ubicacin: Vzla Mensajes: 59

Hola, como estan? Alguien sabra como hacer la conversion digital/analogico con ese pic? Recuerdo que cuando vi la materia de microcontroladores el profesor dijo que aunque el pic no tenga ese modulo, se le puede "manipular" para que lo haga Citar

06-mar-2011

#38 0rland0 dijo:

noerestu
Fecha de Ingreso: febrero-2011 Ubicacin: Venezuela Mensajes: 3

Hola, como estan? Alguien sabra como hacer la conversion digital/analogico con ese pic? Recuerdo que cuando vi la materia de microcontroladores el profesor dijo que aunque el pic no tenga ese modulo, se le puede "manipular" para que lo haga

Oye.. yo estoy en eso ahorita mismo... la unica manera de hacer una conevercion DIGIAL/ANALOGICA que consegui es con un chip externo, ya sea de comunicacion serial SPI como el TLC5615, o el DAC0800 o DAC0808 de comunicacion paralela.. Citar
06-mar-2011 #39 noerestu dijo:

0rland0
Fecha de Ingreso: julio-2008 Ubicacin: Vzla Mensajes: 59

Oye.. yo estoy en eso ahorita mismo... la unica manera de hacer una conevercion DIGIAL/ANALOGICA que consegui es con un chip externo, ya sea de comunicacion serial SPI como el TLC5615, o el DAC0800 o DAC0808 de comunicacion paralela..

Encontre esto, http://www.todopic.com.ar/foros/index.php?topic=21395.0 y de alli te mandan a http://electronicdesign.com/article/...icmicro3.aspx

Citar
30-mar-2011 #40 EINNER C dijo:

santiago26
Fecha de Ingreso: marzo-2011 Ubicacin: santiago del estero, capital Mensajes: 2

hola fernandopos gracias por ves el proyecto y me parece bn que te interese esto de los pic en cuanto a tu duda, quiero pedir disculpas por no habr quitado las variables N1, N2, entrar, ya que no las uso, las tenia alli por que estaba implementado control desde el pc, que se realizara lo mismo que con los pulsadores pero de una forma grafica mas amigable,,,,,, en cuanto a lo de las otras variables, puedes ver que la configuracion se realiza en una secuencia, luego de entrar al menu de configuracion empiezas con var1 que indica la temperaturainferior minima, sigue var2 (temp superior maxima), var3 temp muy muy baja y var4 temp muy muy alta, y como aprecias en el main se trabaja en base a estas para prender o apagar dispositivos que controlaran la temperatura cualquier duda o sugerencia es bienvenida,, nota: termine lo de la comunicacion con el pc, espero pronto subirlo, no he tenido mucho tiempo de volver a retomar estos temas,,,,,,,

Hola, disculpa tengo una duda.. cuando doy play para simular en el proteus me salta que hay un error en el codigo. me podrias dar una mano por favor? gracias.

Tarjeta de Adquisicin de Datos Sistema de 8 Canales Analgicos


Con el objeto de realizar sistemas autnomos inteligentes, generalmente es necesario contar con sistemas que tomen datos provenientes de determinados sensores, los analicen en base a un programa creado para tal fin y acten en consecuencia. Los PLCs suelen realizar este tipo de tareas pero el operador no tiene posibilidad de procesar los datos obtenidos a voluntad. En este artculo vamos a implementar un sistema de adquisicin de datos que contendr hasta un total de 8 canales analgicos mediante el empleo de los microcontroladores PIC16F876 y PIC16F877. Bsicamente lo que proponemos en el presente material es el diseo de una tarjeta de adquisicin de datos a la cual se le pueda hacer llegar la informacin de hasta 8 sensores analgicos para que el microcontrolador organice la toma de las seales de los sensores y las digitalice, para que posteriormente enve la informacin digitalizada a ser procesada ya sea a una computadora o, directamente, a un display LCD. Desarrollo Para que una tarjeta pueda procesar datos analgicos para presentarlos a una computadora, necesariamente debe contar con un conversor analgico digital (ADC). Aunque en el presente material no vamos explicar con lujo de detalle la tcnica con la que opera el ADC del microcontrolador, s vamos a ver qu es lo que hace el ADC como para que, cuando lleguemos al planteamiento del proyecto, sepamos a qu nos estamos enfrentando.

FIGURA 1

Un ADC (Convertidor Analgico - Digital por sus siglas en ingls) se encarga de convertir un valor analgico de voltaje a su correspondiente combinacin binaria. Para realizar esta operacin se requiere un sensor, que es el encargado de leer el estado de una variable fsica de naturaleza analgica y de representar el valor de dicha variable en su apropiado valor de voltaje. En la actualidad existen muchas variables analgicas que podemos leer de manera directa a travs del sensor adecuado. En otras ocasiones, al no existir un sensor diseado de manera explcita para determinada variable, se ocupa un sensor para medir una variable fsica diferente, pero que se relaciona con la que nos interesa por medio de una relacin matemtica, lo cual nos da la posibilidad de que para cualquier proceso industrial (ah existe un nmero ilimitado de variables), exista un sensor involucrado. El sensor lee la variable fsica y nos entrega una seal elctrica que est dentro de un rango de valores de voltaje, siendo ste el que tenemos que hacer llegar al ADC del microcontrolador. Teniendo en cuenta que el ADC mide variaciones de voltaje, el sensor tiene que adecuarse con respecto del rango mnimo y mximo que puede leer la entrada del ADC. Para que el ADC pueda realizar una conversin del valor analgico, se le tiene que agregar un voltaje de referencia, porque ste es el que indica precisamente cul es el rango de operacin de la entrada del ADC. Todos los ADC de los microcontroladores PIC aceptan, como mximo, un rango de operacin que llega hasta 5 Volts, por lo que podemos establecer rangos de operacin de cualquier valor de voltaje, siempre y cuando no rebasemos los 5 volt. El rango de operacin expresado en volts sea de la magnitud que sea, se divide en tantas partes como nmero de bits posea el ADC, de acuerdo al ejemplo mostrado en la figura 2. El clculo del valor de resolucin del ADC se hace de acuerdo a la siguiente expresin matemtica: Resolucin = En donde: Resolucin: Rango de voltaje en el cual se presenta un cambio de valor en la combinacin binaria. Vrango.- Rango de operacin del ADC expresado en voltaje. N.- Nmero de bits que posee el ADC. El ejemplo de la figura 2 contempla un ADC de 4 bits (el nmero de bits de un ADC real cuando menos es de 8). Por lo

FIGURA 2

FIGURA 3

tanto, el nmero de combinaciones binarias est dado por la relacin: Combinaciones binarias = 2N y da como resultado un total de 16, las cuales van de 0000(2) hasta 1111(2). La resolucin del ADC nos indica cunto tiene que variar el voltaje que entrega el sensor para que exista un cambio en la combinacin binaria correspondiente, por lo que a un determinado valor analgico le corresponder una combinacin binaria que es precisamente la conversin y lo que entregar como resultado el ADC. Por otra parte, la cantidad de valores analgicos que el ADC puede digitalizar, est en funcin del nmero de muestras que puede adquirir. Para ello se establece, de manera automtica, un perodo estable de tiempo durante el cual el ADC obtendr las muestras, tal como se ilustra en la figura 3. El nmero de muestras mnimas que se tienen que tomar se encuentran de acuerdo con el valor de la frecuencia de operacin de la seal a digitalizar, y en funcin del Teorema del Muestreo establecido por Nyquist, la frecuencia de muestreo (nmero de muestras por segundo) se establece de acuerdo con la siguiente expresin matemtica: B = 2F Donde: B.- Frecuencia de muestreo (nmero de muestras por segundo). F.- Frecuencia de operacin de la seal a digitalizar. El teorema del muestreo se ocupa, principalmente, del caso en que la seal a digitalizar posea una frecuencia alta de operacin. Por lo tanto, se tiene que tomar un buen nmero de muestras y digitalizarlas, como para que en un proceso posterior se tenga que reproducir la seal original, como es el caso de un reproductor de CD's o un osciloscopio digital. Por ejemplo, si la seal analgica trabaja a una frecuencia de 1kHz, se le tiene que aplicar una frecuencia de muestreo de 2kHz, o sea, se deben tomar 2000 muestras por segundo, y cada una de estas muestras se tiene que digitalizar, para lo que es necesario poseer, adems del ADC, una memoria de por lo menos 2000 localidades para poder guardar la informacin de las 2000 combinaciones binarias que arroje la digitalizacin de la seal analgica. Todo este proceso se tiene que realizar para garantizar que si se hace el proceso inverso, se pueda recuperar la seal analgica original. Para el caso de una aplicacin del tipo industrial, donde se tenga que digitalizar el valor de una seal analgica, como

FIGURA 4 PROMOCIONES

FIGURA 5

puede ser, por ejemplo, la temperatura; el nmero de muestras por segundo B no tiene que ser muy grande, ya que la temperatura no cambia tan rpido de valor, tenindose cambios en una caldera que consideraremos como un caso demasiado critico, del orden de aproximadamente 10 segundos para tener cambios en rangos de cada 100C. En la medicin de temperatura podemos establecer perodos de muestreo de cada segundo y por lo tanto el espacio de la memoria en donde debemos almacenar los valores digitalizados no tiene que ser tan grande. Por lo tanto, depender de la naturaleza de la variable fsica el establecer la cantidad de muestras a tomar y la cantidad de memoria que necesitemos, as como el proceso para guardar la informacin en el microcontrolador, en una memoria externa, o enviarla de manera paralela o serial a una PC, por ejemplo. Retomando el nombre del proyecto, que es Tarjeta de Adquisicin de Datos, Sistema de 8 Canales Analgicos, bsicamente lo que vamos a proponer en el presente material es el diseo de una tarjeta de adquisicin de datos, a la cual se le pueda hacer llegar la informacin de hasta 8 sensores analgicos, y que el microcontrolador que se utilice se encargue de organizar la toma de las seales de los sensores y las digitalice, para que posteriormente enve la informacin digitalizada a una PC y/o a un mdulo con un display LCD. Para el proyecto utilizamos microcontroladores PIC. Lo que es importante resaltar es el hecho de que, tanto el microcontrolador PIC16F876 como el PIC16F877, slo cuentan con un nico mdulo interno para realizar las conversiones de valores anlgicos a digital (mdulo ADC). Por esta razn, al contar con la posibilidad de tener hasta 8 sensores, significa que el mdulo ADC del microcontrolador tiene que estar compartindose entre los diferentes sensores que tenga conectados. Entonces depender de la programacin que le agreguemos al PIC, la manera en que ste trabajar. Otra cuestin importante es que cualquiera de los PIC's, de acuerdo al manual, efectivamente nos indica que posee hasta 8 canales para digitalizar seales analgicas, y se encuentran fsicamente ubicadas en las terminales del puerto A, hallndose identificadas con las nomenclaturas RA0/AN0, RA1/AN1, RA2/AN2, RA3/AN3, y RA5/AN4 para el PIC16F876, mientras que para el PIC16F877, adems de los canales del puerto A, tambin se tienen que agregar los canales con entradas ADC de su puerto E, los cuales se identifican como RE0/AN5, RE1/AN6 y RE2/AN7, tal como se muestra en la figura 4. Se pueden hacer diferentes combinaciones de acuerdo a la cantidad mxima de sensores que pueden

PROMOCIONES

FIGURA 6

conectarse al microcontrolador, ya que tambin tiene que tomarse en cuenta el voltaje de referencia que se requiere para un proceso de conversin por medio del mdulo ADC. El voltaje de referencia para el ADC puede tomarse de manera interna del microcontrolador, o si es necesario, el voltaje de referencia se fijar de manera externa, y para ello se requiere de 1 2 terminales del microcontrolador para tal efecto. Las terminales que se llegan a ocupar para fijar una referencia externa son tambin del puerto A, por lo que quedaran 2 canales con entrada para el ADC. En la tabla 1 se muestran las combinaciones de operacin tanto del puerto A para el PIC16F876, como del puerto A y puerto E para el PIC16F877, con respecto a la cantidad de canales ADC que podemos disponer del PIC. De la tabla 1 se observa que se encuentran identificadas cada una de las terminales del puerto A y E que tienen entrada al ADC. En la tabla se muestra cmo pueden configurarse estas terminales, indicndose con una letra A si posee entrada al ADC, o con una letra D si la terminal se puede configurar como una entrada o salida digital, y por ltimo se muestra tambin qu terminales aceptan los voltajes de referencia externo, tanto positivo como negativo, identificados como Verf+ y Vref-, respectivamente. En la misma tabla 1 se presenta a manera de resumen y de acuerdo a las posibilidades de configuracin, la cantidad de terminales con entrada al ADC, cantidad de terminales con voltaje de referencia externa y la cantidad de terminales configuradas como entradas o salidas digitales. Como ejemplo para leer la tabla 1, vamos a tomar la combinacin que se encuentra en la primer fila, en donde se tienen 5 entradas con ADC para el PIC16F876, y 8 entradas en total para el PIC16F877; la referencia la toman de manera interna, por lo que el Voltaje de referencia positivo (Vref+) lo toma de la alimentacin positiva del microcontrolador. Dicho de otra manera, la terminal VDD tambin hace la funcin de terminal para Vref+. Lo mismo sucede con el voltaje de referencia negativo: al tomar la referencia de manera interna, la terminal de alimentacin VSS (se relaciona tambin con GND) del microcontrolador adems hace la tarea de la terminal Vref-.

FIGURA 7

FIGURA 8

El PIC 16F876/7 Los circuitos integrados PIC16F876 y PIC16F877 son

dispositivos programables capaces de realizar diferentes actividades que requieran del procesamiento de datos digitales y del control y comunicacin digital de diferentes dispositivos. Todos los microcontroladores poseen una memoria interna que almacena dos tipos de datos; por un lado las instrucciones, que corresponden al programa que se ejecuta, y por el otro la informacin de los registros, es decir, los datos que el usuario maneja, as como registros especiales para el control de las diferentes funciones del microcontrolador. Tambin poseen una ALU (Unidad Aritmtica y Lgica o Lgico Aritmtica), una memoria del programa, memoria de datos o registros, y pines I/O (patas de entrada y/o salida). La ALU es la encargada de procesar los datos dependiendo de las instrucciones que se ejecuten (MOVLW, ADD, OR, AND), mientras que los pines son los que se encargan de comunicar al microcontrolador con el medio externo; la funcin de los pines puede ser de transmisin de datos, alimentacin de corriente para el funcionamiento de ste o patas de interrupcin o de control especfico. Estos microcontroladores forman parte de una subfamilia integrada por cuatro modelos a saber: PIC 16F873/4/6 y 7. Estos microcontroladores disponen de una memoria de programa FLASH de 4 a 8 KBytes de 14 bits. De los microcontroladores indicados, el 16F873 y el 16FS76 son de 28 pines, mientras que 16F874 y el 16F877 tienen 40 patas, lo que les permite disponer de hasta 33 lneas o patas (pines) de E/S. En su arquitectura adems incorporan: Varios temporizadores (Timer) Comunicacin serial USART Bus I2C En la tabla 2 se muestran las caractersticas comparativas ms relevantes de esta familia de microcontroladores. Por otra parte, las principales propiedades del PIC 16F877 son las siguientes: Soporta modo de comunicacin serial, posee dos pines para ello. Amplia memoria para datos y programa. Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH; este tipo de memoria se puede borrar electrnicamente (esto corresponde a la "F" en el modelo). Set de instrucciones reducido (tipo RISC), pero con las instrucciones necesarias para facilitar su manejo. En la tabla 3 enumeramos las caractersticas ms relevantes del PIC16F877. En la figura 5 se puede observar el diagrama

FIGURA 9

FIGURA 10

en bloques de este PIC. Descripcin de los Puertos del PIC16F877 Puerto A: Puerto de e/s (I/O) de 6 pines denominado PORTA. Es un puerto I/O bidireccional: RAO: puede ser salida analgica 0. RA1: puede ser salida analgica 1. RA2: puede ser salida analgica 2 o referencia negativa de voltaje. RA3: puede ser salida analgica 3 o referencia positiva de voltaje. RA4: puede ser entrada de reloj el timer0. RA5: puede ser salida analgica 4 o el esclavo seleccionado por el puerto serial sncrono. RA0: RA0, AN0 RA1: RA1, AN1 RA2: RA2, AN2 y Vref RA3: RA3, AN3 y Vref+ RA4: RA4 (Salida en colector abierto) y T0CK (Entrada de reloj del modulo timer0). RA5: RA5, AN4 y SS (seleccin esclavo para el puerto serie sncrono). Puerto B: Puerto e/s 8 pines con Resistencias pull-up programables. PORTB es un puerto I/O bidireccional. Puede ser programado todo como entradas: RB0 puede ser pin de interrupcin externo. RB3: puede ser la entada de programacin de bajo voltaje. RB1, RB2: RB1, RB2 RB0: RB0 e Interrupcin externa RB3: RB3 y programacion y debugger in circuit. RB4, RB5: RB4, RB5 RB6, RB7: RB6, RB7 e Interrupcion por cambio de flanco. Puerto C: Puerto e/s de 8 pines. PORTC es un puerto I/O bidireccional: RCO puede ser la salida del oscilador timer1 o la entrada de reloj del timer1. RC1 puede ser la entrada del oscilador timer1 o salida PMW 2. RC2 puede ser una entrada de captura y comparacin o salida

PWN. RC3 puede ser la entrada o salida serial de reloj sncrono para modos SPI e I2C. RC4 puede ser la entrada de datos SPI y modo I2C. RC5 puede ser la salida de datos SPI. RC6 puede ser el transmisor asncrono USART o el reloj sncrono. RC7 puede ser el receptor asncrono USART o datos sncronos. RC0: RC0, T1OSO (Timer1 salida oscilador) y T1CKI (Entrada de reloj del mdulo timer1). RC1: RC1, T1OSI (entrada del oscilador de timer1) y CCP2 PWM/COMP/CAPT. RC2: RC2, CCP1 RC3: RC3, SCK, SCL RC4: RC4, SDI, SDA RC5: RC5, SD0 RC6-7: RC6-7, USART Puerto D: Puerto e/s de 8 pines, es un puerto bidireccional paralelo. Bus de datos en PPS (puerto paralelo esclavo). Puerto E: Puerto de e/s de 3 pines. PORTE es un puerto I/O bidireccional. REO: puede ser control de lectura para el puerto esclavo paralelo o entrada analgica 5. RE1: puede ser escritura de control para el puerto paralelo esclavo o entrada analgica 6. RE2: puede ser el selector de control para el puerto paralelo esclavo o la entrada analgica 7. RE0: RE0 y AN5 y Read de PPS RE1: RE1 y AN6 y Write de PPS RE2: RE2 y AN7 y CS de PPS

Dispositivos Perifricos: Timer0: Temporizador-contador de 8 bits con preescaler de 8 bits. Timer1: Temporizador-contador de 16 bits con preescaler que puede incrementarse en modo sleep de forma externa por un

cristal/clock. Timer2: Temporizador-contador de 8 bits con preescaler y postescaler. Dos mdulos de Captura, Comparacin, PWM (Modulacin de Anchura de Impulsos). Conversor A/D de 1 0 bits. Puerto Serie Sncrono Master (MSSP) con SPI e I2C (Master/Slave). USART/SCI (Universal Syncheronus Asynchronous Receiver Transmitter) con 9 bit. Puerta Paralela Esclava (PSP) slo en encapsulados con 40 pines. La tabla 4 muestra la funcin de cada pata del este circuito integrado y cul es su denominacin.

El Circuito de la Tarjeta de Adquisicin de Datos A continuacin describiremos el diagrama esquemtico para el circuito de sistema de adquisicin de hasta 8 canales analgicos. En el diagrama que se muestra en la figura 6 se observa que estn presentes 2 espacios para los microcontroladores PIC16F876 y PIC16F877, pero slo se colocar uno de ellos y no los 2 juntos, y dependiendo del microcontrolador que se instale ser la cantidad de sensores mximos que le podremos instalar a la circuitera. Por ejemplo, si colocamos un PIC16F876 podremos colocar hasta 5 sensores como mximo, mientras que si instalamos un PIC16F877 podremos colocar hasta 8 sensores como lmite. Los sensores se pueden instalar en las terminales identificadas como AN, las cuales estn identificadas desde AN0 hasta AN7. Cada una de estas terminales est constituido por un bloque de 3 terminales, a los cuales se les hace llegar el voltaje de alimentacin VDD (positivo del microcontrolador), y GND que es el Vss del microcontrolador, tal como se ilustra en la figura 6. Las lneas de alimentacin VDD y Vss se pueden emplear para el caso en que los sensores que se conectaran requieran de voltaje de alimentacin, y entonces se aprovechar la energa que se encuentra presente en el circuito. El fragmento del circuito que se encuentra en la figura 7 es un circuito de adecuacin que se utiliza para acoplar la seal analgica que entrega un sensor. El circuito se encuentra constituido por un amplificador operacional que se encuentra en la configuracin de amplificador no inversor, en el cual se puede ajustar la ganancia de la seal de un sensor si es que

sta se encuentra por debajo del rango de operacin mximo de 5 VCD. Este ajuste se realiza por medio del resistor variable VR1, que se encuentra en conjunto con el resistor R13. Si el sensor proporciona el valor de voltaje dentro del rango de operacin del ADC del microcontrolador, esto es mximo de 5V, entonces el operacional tendr que trabajar en el modo de seguidor de voltaje, sin realizar ninguna amplificacin. Para ello se colocar un jumper que cortocircuite el resistor R13, y de esta manera no importa el valor resistivo que se encuentre fijo en VR1. El valor de voltaje que ingrese al operacional ser igual al que salga del mismo operacional, pero con la ventaja de que al sensor no se le forzar extrayndole una corriente muy grande, ya que el operacional en la configuracin de seguidor de voltaje, posee una impedancia de entrada muy elevada. Este circuito se repite 8 veces, para alcanzar los 8 canales mximos con ADC que se pueden utilizar en la circuitera. A este circuito tambin se le han agregado bornes de conexin para que se tenga la posibilidad de emplear todas las herramientas de los microcontroladores PIC que pueden utilizarse con el sistema de adquisicin de datos que estamos proponiendo. Por lo tanto, podemos ocupar los dems puertos del microcontrolador que se instale.

Programa de Empleo del ADC El programa que vamos a desarrollar sobre la tarjeta entrenadora, se trata del primero de una serie, en la cual aportaremos diferentes proyectos que tengan como base el empleo del convertidor ADC del microcontrolador. En esta oportunidad simplemente se conectar un slo sensor analgico en la terminal de entrada AN0, la cual posee una entrada con convertidor analgico a digital, por lo tanto, el sensor lo haremos llegar a la terminal A0 del puerto A. La informacin que entregue el sensor se digitalizar en el microcontrolador, y este dato digital se har llegar a los puerto B y C. En el puerto B se desplegar la informacin de la parte baja del dato digitalizado, mientras que en el puerto C se mostrar la parte alta del dato digitalizado. Cuando un microcontrolador PIC digitaliza un dato, la informacin la deja en 10 bits, siendo ste el motivo por el cual se tienen que emplear 2 bytes (8 de uno y 2 del otro). En la tabla 5 mostramos el programa para el empleo de un ADC del PIC. Del programa expresado, vamos a explicar cmo se configura el ADC, y para comenzar diremos que las terminales del puerto A, que es en donde se encuentran los

ADC, se tienen que configurar como terminales de entrada, materializando dicha accin por medio del registro trisa. En bit 7 del registro adcon1 de manera inicial se expresa la forma en que se configura el empleo de los 10 bits, del dato digitalizado, indicndole al microcontrolador la manera en que tiene que justificarse el acomodo del dato, esto es, justificacin a la derecha o justificacin a la izquierda. De una manera ms sencilla, en la tabla 6 se indica la manera en que se pueden justificar los bits del dato digitalizado. En el mismo registro adcon1, los bits del 4 al 6 no se ocupan, pero los bits del 0 al 3 que se denominan PCFG0, PCFG1, PCFG2 y PCFG3, se emplean para indicarle al microcontrolador qu entrada con ADC va a ser activado para que realice la labor de digitalizar una seal analgica, tal como se ilustra en la tabla 7. En dicha tabla se tiene que: A = Entrada Analgica D= E/S Digital NOTA 1.- Estos canales no estn disponibles para el PIC16F876. De la tabla 7, se observa que se encuentran identificadas cada una de las terminales del puerto A y E que tienen entrada al ADC, en la tabla se muestra cmo pueden configurarse estas terminales, indicndose con una letra A si posee entrada al ADC, o con una letra D si la terminal se puede configurar como una entrada o salida digital, y por ltimo se muestra tambin qu terminales aceptan los voltajes de referencia externo, tanto positivo como negativo, identificados como Verf+ y Vref- respectivamente. Como paso siguiente tendremos que emplear el registro adcon0, en el cual se configura lo siguiente: Los bits 7 y 6 sirven para indicar cual ser el tiempo de conversin de acuerdo a las combinaciones que pueden generarse. Los bits del 3 al 5 sirven para de acuerdo a la combinacin binaria correspondiente, seleccionar el canal ADC que se ir activando, recordando que aunque un microcontrolador puede tener ms de 1 ADC, no puede ocuparlos todos a la vez, por lo tanto, los ADC se tienen que ir activando de acuerdo a como se requiera. El bit 2 sirve para indicarle al microcontrolador que puede llevar a cabo una conversin con el ADC. El bit 1 no se encuentra implementado. El bit 0 simplemente tiene la funcin de encender el mdulo ADC de un microcontrolador PIC. En la figura 8 se muestra de manera grfica el empleo de cada uno de los bits mencionados

lneas arriba. Por ltimo, en el registro intcon y pie1 se activa la interrupcin que ser empleada por el ADC. Del registro intcon, el bit identificado como gie se emplea para habilitar todas las interrupciones del PIC, mientras que el bit peie, se utiliza de manera especfica para activar la interrupcin por perifricos, siendo el ADC un perifrico. En el registro pie1, el bit adie activa la interrupcin que pueda generar el ADC, una vez que ha realizado un proceso de digitalizacin. En la figura 9 se muestra el circuito impreso de la tarjeta entrenadora, la cual dispone de terminales de conexin hacia cada una de las terminales de los puertos del microcontrolador. Tambin se ilustra la manera de cmo se deben colocar los dispositivos sobre el impreso. Para ensamblar las bases de 28 y 40 terminales que corresponden a los microcontroladores en el impreso, se tiene que colocar en primera instancia la base de 28 terminales. Posteriormente a la base de 40 terminales se le tiene que practicar un corte en la parte superior tal como se ilustra en la figura 10, de tal manera que las 2 bases queden ensambladas en el mismo espacio, para que tengamos la certeza de que slo sea colocado un solo microcontrolador. Pues bien, hemos completado el diseo de nuestra placa y ya con un ejemplo de programacin, los invitamos a que estn pendientes de las entregas sucesivas, ya que disearemos aplicaciones con mayor grado de dificultad. De la Redaccin de la Revista Saber Electrnica

Re: velocidad muestreo A/D pic 18f4550

Respuesta #3 : 10 de Octubre de 2009, 06:03:09


Lo que menciona palitroque es cierto. Pero no tan simple es decir, esos 2.45us (como maximo, puede ser menos) solo es el tiempo de adquisicion, pero el pic tambien utiliza un tiempo de conversion que va de 700ns hasta 1.33us por bit, ya que son 10 bits tendras al rededor de 7us hasta 13us por cada conversion, y sumando el Tacqt serian alrededor de 16us por conversion como minimo.

Como ya saben MiKroC trae una funcion de conversion A/D, esta funcin utiliza el reloj de conversion del RC interno, esto es muy lento ya que se tarda alrededor de 80us por cada muestra, asi que es mejor realizar una pequea funcin tu

mismo mas adelante muestro un ejemplo. Cdigo:

unsigned Leer_adc(){ ADCON0.ADON=1; ADCON0.GO_DONE=1; termina la conversion //Debido a que no se como enviar dos byte directamente a un entero lo realizo en asambler asm{movff movff ADRESL,_adc //muevo el valor del ADRESL a la parte baja del entero adc ADRESH,_adc+1} //muevo el valor del registro //regreso el dato del adc ADRESH a la parte alta del entero adc return adc; } void main(){ TRISA=255; ADCON1= 0b001110; analogica ADCON2=0b10001010; ADCON0=0; while(1){ V=Leer_adc();} funcion de conversion } }
El codigo fue hecho para una frecuencia de 32MHz lo cual se logra poniendo un cristal de 4MHz y activando los flags de configuracin

//Encendemos el ADC //Empezamos la Conversion

while(ADCON0.GO_DONE);//Cuando GO_DONE se desactiva

//PuertoA como entrada //Configura solo AN0 como //Fad=Fosc/32=32MHz/32=1MHz, //Seleccionamos canal0 para

Tacq=2Tad y justificacin derecha conversion con Vdd y Vss como referencias //Aqui se hace el llamado a la

PLLDIV_1L para que la frecuencia de entrada al PLL sea de Fosc/1=4MHz/1=4MHz CPU_OSC2_PLL3_1L para que la frecuencia de entrada al CPU sea de Fpll/3=96MHz/3=32MHz FOSC_XTPLL_XT_1H o tambien FOSC_HSPLL_HS_1H para poder utilizar el PLL y multiplicar la frecuencia de trabajo.

yo utilizo 96MHz/3=32MHz porque Tad=32*Tosc=32/Fosc=32/32MHz=1us

Tambien puedes utilizar estas opciones: Si uso 96MHz/2=48MHz Tad=64*Tosc=64/Fosc=64/48MHz=1.3333us

Utilizo 96MHz/4=24MHz porque Tad=32*Tosc=32/Fosc=32/24MHz=1.3333us

Utilizo 96MHz/6=16MHz porque Tad=16*Tosc=16/Fosc=16/16MHz=1us Pero el tiempo de cada ciclo aumenta lo que disminuye el tiempo total de conversion

Recuerda que 96MHz es la Fpll.

Si uso un cristal de 20MHz Tad=16*Tosc=16/Fosc=16/20MHz=800ns pero no tengo Cristal de ese tipo. Pero tambien aumento el tiempo de ciclo en unos cuantos ns. podria ser la mejor opcion.

Si uso el oscilador interono a 8MHz Tad=8*Tosc=8/Fosc=8/8MHz=1us. Pero aumento el Tcyc disminuyendo el tiempo de conversion total.

Recuerda que debes mantenerte entre el margen de Tad que arriba menciono para poder realizar la conversion, sino ocurriran errores y podrias daar el PIC.

Debido a que Necesitas muestrear como minimo a 1Khz 12 seales analogicas = 12KHz y lo multiplicas por 2 para obtener la frecuencia de Nyquist tendrias 24kHz supongo que podrias hacerlo porque tu frecuencia de muestreo es 1/16us=62.5KHz

Aun no pruebo el codigo pero creo que funcionara, avisame si lo hace y suerte

ltima modificacin: 10 de Octubre de 2009, 06:12:54 por bigluis

En lnea

No es necesario que hagamos Grandes cosas, sino que lo que hagamos sea importante. SI la NECESIDAD es la MADRE del CONOCIMIENTO, SEGURAMENTE la PEREZA su TA. Cuando el ARTE requiere de PRECISION le llamamos CIENCIA
OSUKARU

PIC10

Re: velocidad muestreo A/D pic 18f4550

Respuesta #4 : 17 de Octubre de 2009, 06:08:02


hola que tal respecto a lo que dices bigluis segun lo anterior

Desconectado Mexico Mensajes: 6


dices que si utilizo el cristal de 20Mhz mi Tad=800nS verdd???, pero para configurar el reloj de conversion (como debo seleccionarlo), y en el caso del timepode adquisicion debere seleccionar cual el 16Tad??? menor a 4Tad no podre seleccionar porque segun lei la hoaja de datos y me dice que se necesitan al menos 3Tad entre conversiones ... epsero me ayudes porfavor y disculpa mi ignorancia ya que apenas me he metido en el rollo de los pic18f4550 ya que solo utilizaba el pic16F628 Y EL PIC16F877A por lo que segun veo la configuracion de los modulos de a/d son diferentes en cada tipo de pic (877y 4550), espero y me ayudes a solucionar mi duda anexo el codigo que llevo realizado en ensamblador para que me logren corregir en caso de errores o sugerencias de como compactar o simplificar el codigo asta pronto ....saludos

En lnea
bigluis

PIC18

Re: velocidad muestreo A/D pic 18f4550

Respuesta #5 : 18 de Octubre de 2009, 02:33:13


Primero aclaro:

Desconectado Sexo: Nicaragua Mensajes: 332


Tosc Periodo del circuito de oscilacion (en nuestro caso el cristal). Tacqt significa Periodo de Adquisicion, es el tiempo necesario para que el circuito sample/hold guarde la muestra antes de ser convertida, es decir el tiempo que el capacitor de mustreo se cargue con el voltaje a convertir. Esto se hace para evitar errores en la

conversion.

Tad significa Periodo de conversion analogo digital, es el tiempo en que el ADC realiza la conversion de cada bit.

No a la Lectura Si al conocimiento.

Como mencione antes si tienes un cristal de 20MHz lo mejor seria usar Tad=16 Tosc y usando un Tacqt=2Tad de la siguiente manera:

ADCON2=10001101

Disculpa OSOKARU pero en ningun lado hall eso de que estas limitado a Tacqt=4Tad. Tengo entendido que tu puedes programar el Tacqt desde 2 hasta 20 Tad, y que esto lo haces dependiendo de la velocidad de cambio de la seal. Es decir, si la seal es de cambio lento (periodica) es mejor utilizar un Tacqt menor y si la seal es de cambio rapido y aleatorio (aperiodica) es mejor utilizar un Tacqt mayor para evitar errores.

Para trabajar el oscilador con esta frecuencia debes hacer lo siguiente:

FOSC_HS_1H para no utilizar el PLL y que solo se divida la Fosc si es necesario. CPU_OSC1_PLL2_1L para que la frecuencia de entrada al CPU sea de Fosc/1=20MHz/1=20MHz

En MikroC lo haces durante la creacion de un nuevo proyecto graficamente, en MPLAB o CCS no se como hacerlo, espero que alguien lo postee si sabe.

Como mencione antes aun no he hecho pruebas fisicas del circuito, yo tambien soy principiante en esto por lo tanto

lo mejor es que realices las pruebas, recuerda tener mucho cuidado y espero que te sirva lo que he posteado.

ltima modificacin: 18 de Octubre de 2009, 02:52:42 por bigluis

En lnea

No es necesario que hagamos Grandes cosas, sino que lo que hagamos sea importante. SI la NECESIDAD es la MADRE del CONOCIMIENTO, SEGURAMENTE la PEREZA su TA. Cuando el ARTE requiere de PRECISION le llamamos CIENCIA
Suky

Moderadores DsPIC33 Conectado Sexo: Argentina Mensajes: 5299

Re: velocidad muestreo A/D pic 18f4550

Respuesta #6 : 18 de Octubre de 2009, 10:47:21


Por aqu hay una explicacin del mdulo A/D con algunos ejemplos.

Este hilo hay que trasladarlo

Saludos!

Vamos Barca!!! xD

Amplificador para fotodiodo, convertidor corriente a tensin


Amplificador para fotodiodo

Un amplificador de alta eficiencia para un fotodiodo es muchas vecesindispensable. Si se toma en cuenta que la corrienteque entrega el fotodiodo es muy pequea, poder amplificar la seal que este recibe es de gran utilidad. Aunque se pueden utilizar un gran nmero de amplificadores operacionales diferentes para realizaresta amplificacin, se utiliza en este caso un LM308, debido a que tiene una excelente ganancia, es ms inmune al ruido que otrosoperacionales y su respuesta de frecuencia es mejor. Hay que tomar en cuenta que la ganancia de un amplificador operacional disminuye al aumentar la frecuencia. Este circuito est diseado para recibir pulsos de luz. Si se desea que este amplificador se utilice como detector de luz hay que retirar el capacitor C1 y elfotodiodo debe de conectarse directamente a la entrada no inversora (smbolo delamplificador operacional (patita 2).

menos

"-")

Este circuito es muy sensible y funciona muy bien como receptor de seales de luz.

El amplificador esta configurado como un amplificadorinversor. Esto significa que la forma de onda de la salida es opuesta a la de la entrada (est desfasada 180). La ganancia del amplificador se puede controlar con ayuda del potencimetro R2 Otra manera de observar este circuito es como convertidor de corriente(corriente del fotodiodo) a tensin(salida del amplificador operacional). El voltaje de salida es el producto de fotodiodo por laresistencia R1 la corriente del

El capacitor C2 se utiliza en el LM308 para mejorar su respuesta de frecuencia. Este circuito puede funcionar tambin con el amplificador operacional 741C(ms barato), pero la ganancia y la respuesta de frecuencia es menor. En este caso el capacitor C2 no es necesario El voltaje de alimentacin puede estar entre los 6 y 15 Voltios

Lista de componentes de circuito


- Semiconductores: 1 LM308T o 741C, 1 fotodiodo comn - Resistores: 1 de 1 Mohmio (Megaohm), 1 potencimetro de 1 Megaohm - Capacitores: 1 de 0.01 uF (microfaradios) (C1), 1 de 100 pF (picofaradios) (C2) Notas:

You might also like