PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : کار با adc و نمایش در lcd



fatemehaziz
06-09-2015, 12:36
سلام دوستان من می خوام که از دو ورودی adc0 و adc1 دو ولتاژ ورودی رو بخونم و در هم ضرب کنم و در lcd نمایش بدم . برای قسمت adc هم از کدویزارد استفاده کردم برنامم ارور نمیده اما روی میکرو جواب نمیده اگه میشه کمکم کنید

#include <mega32.h>
#include <stdio.h>
#include <math.h>
#include <delay.h>
#include <stdlib.h>
#include <lcd.h>
#asm
.equ __lcd_port=0x12
#endasm
#define ADC_VREF_TYPE ((0<<REFS1) | (0<<REFS0) | (0<<ADLAR))
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | ADC_VREF_TYPE;
delay_us(10);
ADCSRA|=(1<<ADSC);
while ((ADCSRA & (1<<ADIF))==0);
ADCSRA|=(1<<ADIF);
return ADCW;
}
void main(void)
{
unsigned char p[10];
float x=read_adc(0);
float y=read_adc(1);
float t;
lcd_init(16);
lcd_clear();
t=x*y;
sprintf(p,"%f",t);
lcd_gotoxy(0,0);
lcd_putsf("p");
lcd_gotoxy(3,0);
lcd_puts(p);
delay_ms(300);
while(1);
}