التحويل إلى نسبة مئوية
جزء من قسم المدخلات في رحلة Arduino على Coddy. الدرس 10 من 22.
القراءات من 0 إلى 1023 لا تعني الكثير للشخص. النسبة المئوية من 0 إلى 100 أسهل. تحوّل map() رقمًا من نطاق إلى آخر:
int percent = map(reading, 0, 1023, 0, 100);تأخذ خمسة أرقام: القيمة، والحدين الأدنى والأعلى لنطاقها، والحدين الأدنى والأعلى للنطاق الجديد. يصبح 0 هو 0، ويصبح 1023 هو 100، والقيمة الواقعة عند ربع المسافة تصل إلى ربع المسافة: يصبح 256 هو 25.
تعمل map() مع الأعداد الصحيحة وتحذف أي جزء كسري، وهذا مناسب للنسبة المئوية.
التحدي
سهلالمقبض موصول بـ A0. اطبع مقدار تدويره كنسبة مئوية:
- اقرأ A0
- حوّل القراءة إلى قيمة من 0 إلى 100 باستخدام
map() - اطبع النسبة المئوية، ثم انتظر 100 ms
اضغط على Run، وأدر المقبض، ثم اضغط على Check.
جرّب بنفسك
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// حوّل القراءة إلى نسبة مئوية باستخدام map()، ثم اطبعها وانتظر 100 ms
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المدخلات
2المدخلات التناظرية
قراءة مقبض التحكمتحويل قراءة المقبض إلى فولتالتحويل إلى نسبة مئويةحصر القيم ضمن النطاقعتبة المقبضمصباح ليلي تلقائيدبوس مفتاح مستشعر الضوءتدرّب بنفسك: Playground لـ Arduino