Saludos foro!
De antemano gracias, mi duda es como hacer que el ADC funcione, encontre varios ejemplos pero sin ningun resultado, este se queda en ceros y no convierte nada, lo que quiero lograr es ver en el puerto B del ATMEGA8 ver la conversion cortada por que son 10 pero solo eso, asi fue como conecte el circuito, agnd a tierra, avcc a vcc y aref a tierra por medio de un capacitor de 100nF, no se si este mal esto.
Ver el archivo adjunto 63189
He calado estos codigos
Tambien cale lo que viene en los pdf's de hecho ahi me base y tampoco de hecho no se que pueda ser :S si tienen ya una solucion hecha se les agadaceria mucho
HETPRO manual (incluye ejemplos para el avr)
Incluí el proyecto en AVR Studio 5.0
De antemano gracias, mi duda es como hacer que el ADC funcione, encontre varios ejemplos pero sin ningun resultado, este se queda en ceros y no convierte nada, lo que quiero lograr es ver en el puerto B del ATMEGA8 ver la conversion cortada por que son 10 pero solo eso, asi fue como conecte el circuito, agnd a tierra, avcc a vcc y aref a tierra por medio de un capacitor de 100nF, no se si este mal esto.
Ver el archivo adjunto 63189
He calado estos codigos
Código:
/*
* ADC.c
*
* Created: 16/11/2011 12:50:06 p.m.
* Author: Jaime
*/
/*
#include <avr/io.h>
int main(void)
{
unsigned int ADC_counts=0x55;
DDRB=0xFF;
ADCSRA=0x84;
while(1)
{
ADMUX=0x02;
ADCSRA|=0x40;
while(ADCSRA|=0x40);
ADC_counts=ADCW;
PORTB=ADC_counts>>2;
}
}*/
#include <avr/io.h>
#include "retardo.h"
int main(void)
{
DDRB = 0xFF;
DDRD = 0b11111111;
int ADC_Val = 0;
ADCSRA = 0x84;
while(1) {
ADMUX = 0xC2;
ADCSRA|=0x40;
PORTD=0;
PORTB=0x55;
while (ADCSRA&0x40==0x40);
PORTD=1;
ADC_Val = ADCL;
PORTB = ADC_Val;
HETPRO manual (incluye ejemplos para el avr)
Incluí el proyecto en AVR Studio 5.0
Adjuntos
Última edición: