سلام به دوستان
تو کتاب مرجع کامل میکروکنترلر های avr در مورد بیت ADIF در رجیستر ADCSRA نوشته
با اتمام تبدیل ADC و تغییر محتویات رجیستر داده ADC این بیت ( ADIF ) یک خواهد شد
اما تو کدویژن ظاهرا عکس این مسئله وجود داره
این کدی هستش که خود کدویژن تولید میکنه
تو کدی که کدویژن تولید کرده در قسمت سبزرنگ منتظر هست تا بیت ADIF صفر بشه
1_یعنی پایان تبدیل این بیت صفر میشه اما تو کتابه گفته پایان تبدیل 1 میشه چرا ؟ بالاخره کدومش درسته ؟
حرف کتابه درسته یا چیزی که کدویژن انجام میده ؟؟؟؟؟؟
2_بعدش میاد همین بیت رو یک میکنه چرا؟
کسی میتونه راهنمایی کنه
تو کتاب مرجع کامل میکروکنترلر های avr در مورد بیت ADIF در رجیستر ADCSRA نوشته
با اتمام تبدیل ADC و تغییر محتویات رجیستر داده ADC این بیت ( ADIF ) یک خواهد شد
اما تو کدویژن ظاهرا عکس این مسئله وجود داره
این کدی هستش که خود کدویژن تولید میکنه
کد:
[FONT=Yekan]unsigned int read_adc(unsigned char adc_input)[/FONT]{ ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete [B][SIZE=3][COLOR=#008000]while ((ADCSRA & 0x10)==0);[/COLOR][/SIZE][/B] ADCSRA|=0x10; return ADCW; [FONT=Yekan]}[/FONT]
1_یعنی پایان تبدیل این بیت صفر میشه اما تو کتابه گفته پایان تبدیل 1 میشه چرا ؟ بالاخره کدومش درسته ؟
حرف کتابه درسته یا چیزی که کدویژن انجام میده ؟؟؟؟؟؟
2_بعدش میاد همین بیت رو یک میکنه چرا؟
کسی میتونه راهنمایی کنه
دیدگاه