Nikunj Tanna
Advanced Member level 4
- Joined
- Dec 8, 2009
- Messages
- 115
- Helped
- 23
- Reputation
- 46
- Reaction score
- 15
- Trophy points
- 1,298
- Location
- Ahmedabad, Gujarat, India
- Activity points
- 1,985
Hi all,
I am developing application where I need to have digital output of analog value in 16 bit resolution. So I choose ADS 7825. I read the datasheet and made circuit according to that and made a code in codevision avr as i am using ATMEGA 128 to interface with ADS 7825. But I am not getting output as I wanted. I am displaying the two byte data on uart. Code is given below. Please take a look and give some idea where I am going wrong. Circuit is also attached.
One more thing...
It is for 0-10V and i need conversion of 0-5V so should I've to do anything extra???
void main()
{
while (1)
{
puts("ADS 7825 TESTING");
A1 = 0;
A0 = 0;
CONTC = 0;
byte = 0;
rc = 0;
delay_us(4);
rc = 1;
while(busy == 0);
data = PORTB;
byte = 1;
data2 = PORTB;
putchar(data);
delay_ms(500);
putchar(data2);
};
}
NIKS
I am developing application where I need to have digital output of analog value in 16 bit resolution. So I choose ADS 7825. I read the datasheet and made circuit according to that and made a code in codevision avr as i am using ATMEGA 128 to interface with ADS 7825. But I am not getting output as I wanted. I am displaying the two byte data on uart. Code is given below. Please take a look and give some idea where I am going wrong. Circuit is also attached.
One more thing...
It is for 0-10V and i need conversion of 0-5V so should I've to do anything extra???
void main()
{
while (1)
{
puts("ADS 7825 TESTING");
A1 = 0;
A0 = 0;
CONTC = 0;
byte = 0;
rc = 0;
delay_us(4);
rc = 1;
while(busy == 0);
data = PORTB;
byte = 1;
data2 = PORTB;
putchar(data);
delay_ms(500);
putchar(data2);
};
}
NIKS