TODOPIC
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?
03 de Septiembre de 2010, 05:28:29

Ingresar con nombre de usuario, contraseña y duración de la sesión
Buscar:     Búsqueda Avanzada
257111 Mensajes en 28437 Temas por 27916 Usuarios
Último usuario: zororyuzaki
* Inicio Ayuda Buscar Calendario Ingresar Registrarse
Buscar en TodoPIC
+  TODOPIC
|-+  Microcontroladores PIC
| |-+  Lenguaje C para microcontroladores PIC (Moderadores: Modulay, pikman, pocher, vszener, Suky)
| | |-+  Ejemplito 16F876A: Conversion Digital-Analogico con el PCF8591 vía I2C
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Marcar como favorito Imprimir
Autor Tema: Ejemplito 16F876A: Conversion Digital-Analogico con el PCF8591 vía I2C  (Leído 1204 veces)
RedPic
Administrador
DsPIC33
*******
Desconectado Desconectado

Sexo: Masculino
Tibet Tibet

Mensajes: 4876



WWW
« : 27 de Diciembre de 2005, 01:41:00 »

Este ejemplito hace uso del integrado PCF8591 que es capaz de realizar conversiones Analógico a Digital y Digital a Analógico.

Datasheet del PCF8591

En nuestro caso vamos a generar una salida analógica variando desde 0V a 5v (Vcc) en 256 pasos sucesivos.

Además este integrado responde al protocolo I2C que es el que vamos a utilizar para comunicarnos con él y mandarle realizar la conversión DA que nos interesa.

Codigo:

#include <16f876a.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT
#use delay(clock=4000000)
#use standard_io(b)


int  analogico=0x00;

#use i2c(master,sda=PIN_C4, scl=PIN_C3) // Configuración del I2C como Master y los pines del MSSP en mi 16F876A.

void main() {

   i2c_start();                      // Inicio la comunicación I2C
   i2c_write(0b10010000); // Envío Dirección I2C del PCF8591
   i2c_write(0b01000000); // Envío Configuración del PCF8591 para Conv. DA

   do {

      i2c_write(++analogico); // Envío Valor digital 0x00->0V, 0xFF->Vcc

   } while (TRUE);

}


Este programa nos generará una preciosa onda de sierra en el pin 15 (AOUT) del PCF8591 (De hecho ahora, mientras escribo este post, la estoy viendo en la pantalla del osciloscopio Fumador)

En línea

Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania
samshiel_pic
Colaborador
PIC18
*****
Desconectado Desconectado

Sexo: Masculino
España España

Mensajes: 431



« Respuesta #1 : 06 de Enero de 2007, 09:01:39 »

Hola que tal? voy ha hacer un pregunta algo tonta pero el caso es que no lo he realizado nunca: se podria hacer lo mismo que ha esplicado mi amigo Diego pero sin utilizar el PCF8591??? solo con el pic. Es que estoy realizando un proyecto en el que mediante un divisor de tension voy dando una serie de tensiones de referencia a un operacional. Y he estado pensando que si pudiera hacerlo de esta manera podria elegir mediante soft que vref darle al operacional segun las circunstancias.
En línea

Ni duermo ni como en el foro, ni machaco teclados, ni soy un ser supremo, ni etc, etc...  (lol jejeje lol)pero aqui estoy para lo que pueda ayudar.  

ESPAÑA - ANDALUCIA - SEVILLA

Saludos CANDI.
samshiel_pic@todopic.zzn.com
QIQE
PIC16
***
Desconectado Desconectado

Sexo: Masculino
Mensajes: 150


« Respuesta #2 : 08 de Enero de 2007, 07:15:40 »

hola samshiel_pic si que lo puedes hacer pero depende del pic puedes emplear la salida PWM modulacion de anchura de pulso y una resistencia y un condensador en serie si mides la tensión del condensador va a variar en relación a lo que varies el ancho del pulso creo recordar que era lineal o muy cerca de la lineaidad, recuerda poner un buffer en el condensadorya nos contaras que tal
En línea

Muchas gracias por vuestro tiempo.

Un saludos desde valencia!!!
practix33
PIC10
*
Desconectado Desconectado

Colombia Colombia

Mensajes: 2


« Respuesta #3 : 25 de Septiembre de 2009, 10:39:20 »

hola red pic tal vez sea un pregunta tonta pero estoy comenzando con esto del pic usb y quiero utilizar el 18f4550 para tomar una señal analogica previamente filtrada, digitalizarla para luego enviarla al pc por el puerto usb la pregunta es si las lineas de codigo que agregaste son validas para este pic  tal solo cambiando la libreria
En línea
MLO__
Colaborador
DsPIC30
*****
Desconectado Desconectado

Sexo: Masculino
Colombia Colombia

Mensajes: 3324

MLO


« Respuesta #4 : 26 de Septiembre de 2009, 01:32:04 »

Hola.

La pregunta lo que esta es un poquillo desfasada.

Hay otros hilos para lo que quieres hacer:
http://www.todopic.com.ar/foros/index.php?topic=20451
http://www.todopic.com.ar/foros/index.php?topic=26226.5

Saludos
« Última modificación: 26 de Septiembre de 2009, 01:38:59 por MLO__ » En línea

El papel lo aguanta todo
TODOPIC
   

 En línea
Páginas: [1] Imprimir 
« anterior próximo »
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC XHTML 1.0 válido! CSS válido!
Página creada en 0.071 segundos con 22 consultas.