مبدل ADC برد ولتاژ آنالوگ خروجی سنسور را مطابق فرمول زیر به یک عدد باینری تبدیل می کند :
Value = sample * 1024 / reference voltage (+5v)
مقدار = مقدار نمونه * ۱۰۲۴ / ولتاژ مرجع (+۵V)
در نتیجه طبق این رابطه برای ولتاژ مرجع +۵V مقدار خروجی دیجیتال برابر با ولتاژ ورودی ضرب در عدد ۲۰۵ خواهد بود.
این فرمول در اکثر ADC های میکروکنترلرها هستش و برای اطلاعات بیشتر به دیتاشیت میکروکنترلرهای AVR یا یک کتابی که ساختار ADC را توضیح میده مراجعه کنید. در اینجا ولتاژ مرجع ۵ ولت هستش و تعداد بیت نمونه برداری ۱۰ بیت و برای همین از اعداد ۵ ولت و ۱۰۲۴ استفاده شده در فرمول. مثلا به جای sample اگر ۵ بذارید ( ولت ورودی بدید به ADC ) در خروجی عدد ۱۰۲۴ را خواهید داشت… ولتاژ رفرنس را میتونید تغییر بدید و به ولتاژ دیگری وصل کنید…مثلا برای دقت های بالا به ولتاژ دقیق پایین تر وصلش میکنن…
کد آردوینو :
float temp; int tempPin = 1; void setup() { Serial.begin(9600); } void loop() { temp = analogRead(tempPin); // read analog volt from sensor and save to variable temp temp = temp * 0.48828125; // convert the analog volt to its temperature equivalent Serial.print("TEMPERATURE = "); Serial.print(temp); // display temperature value Serial.print("*C"); Serial.println(); delay(1000); // update sensor reading each one second }

اولین باشید که نظر می دهید