Vous êtes sur la page 1sur 5

USO DEL ADC CON PIC16F877 Y DISPLAY DE 7 SEGMENTOS

Siguiendo con las prcticas en Pic Basic Pro y utilizando el MicroCode Studio para nuestros Microcontroladores PIC, en esta ocasin utilizaremos el ADC del PIC16F887 para encender un display de 7 segmentos. Se tiene un display de7 segmentos de ctodo comn conectado al puerto B del

microcontrolador (RB0-RB6), un potencimetro conectado al canal analgico (RA0), adems una resistencia conectado al Master Clear (MCLR) para que funcione el PIC, se utiliza el oscilador interno del PIC a 4 MHz. Recordar que los pines de alimentacin del PIC son: 5 para GND y 14 para Vcc=5 Volts. El circuito utilizado se muestra a continuacin:

Ahora se debe de configurar ciertos registros para poder utilizar el ADC para ser exactos necesitamos configurar: ADCON0: Controla la operacin del modulo A/D

ADCON1: Configuracin de las funciones de los pines de los puertos del A/D (analgicos o digitales, uso o no de voltaje de referencia externo) Para saber exactamente como configurar el PIC utilizado necesitamos el Datasheet en este caso es el del PIC16F877A y par esto tenemos lo siguiente: Explicaremos la configuracin del ADCON0=%11000001. Bit 7-6: El clock del ADC es RC derivado del oscilador interno. Bit 5-3: Solo utilizaremos el canal analgico 0 (AN0). Bit 2: Bit de estado de conversin cero significa que la conversin no est en progreso. Bit 1: No se utiliza. Bit 0: Habilita el ADC, 1 significa inicio de operacin del mdulo. Explicaremos la configuracin del ADCON1=%10001110. Bit 7: 1 es justificacin a la derecha. Bit 6: El clock del ADC es RC derivado del oscilador interno. Bit 5-4: No se usan. Bit 3-0: V de referencia es VSS, V de referencia + es VDD y RA0 como analgico. Antes de usar esta funcin, es necesario asignar como entrada analgica el pin correspondiente con la funcin TRIS. TRISA.0=1; Ahora bien como lo que queremos es ver en el display los nmeros del 0 al 9 cuando se vari la posicin de un potencimetro tenemos la siguiente tabla que nos mostrara la forma de activar los pies de salida para ver los nmeros adecuados. Tambin se muestra los nmeros en decimal, hexadecimal y binario esto nos ser til al momento de realizar la programacin, que son las tres formas de mandar datos al puerto B de nuestro PIC.

Prosigamos realizando el cdigo para ello varios DEFINEs pueden tambin ser utilizados, si se desea saber ms de ellos puedes hacerlo en la barra de herramientas Help>>Help Topics>>PICBASIC PRO Basics>>Define. Los valores utilizados se muestran a continuacin: DEFINE ADC_BITS 10; Uso del ADC de 10 bits. DEFINE ADC_CLOCK 3; Uso del clock RC=3. DEFINE ADC_SAMPLEUS 50; Fija el tiempo de muestreo en microsegundos. La funcin del compilador que lee el dato del pin de ADC es ADCIN y su sintaxis es: ADCIN canal, variable donde se guarda el dato. Para nuestro ejemplo tenemos ADCIN 0, RES; Donde RES es una variable tipo Word donde se almacena el valor ledo por el ADC. Ahora tenemos la instruccin VAL=RES/113; Con esto sabemos cada cuando se mostrara un numero en el display y el nmero 113 se obtiene de dividir 1023 entre 9 ya que son 9 nmeros los que se desean mostrar. A continuacin el cdigo completo:

Se tiene el SELECT CASE VAL; lo que se hace con esto es introducir la variable VAL a casos que en este ejemplo son 10 ya que el caso cero se muestra en el display de 7 segmentos un cero, con forme va aumentado la variable van cambiando los nmeros. Material: 1 PIC16F887 1 Display de 7 segmentos ctodo comn 7 Resistores de 330 1 Resistor de 1K 1 Potencimetro de10K

Contacto: Nombre: Pedro Snchez Mail: mrchunckue@gmail.com Blog: http://electronicayrobotica.wordpress.com/

Vous aimerez peut-être aussi