Skip to content

النشاط

مسجل الأصوات

متوسط | MakeCode, Python | شاشة العرض, مِصوات (الميكروفون) | العوامل الحسابية, المتغيرات, المدخلات/المخرجات, معالجة البيانات
اعتبارات تتعلق بإمكانية الوصول
الأصوات العالية

الخطوة ١: صنّع

ما هو؟

اصنع مسجّلًا لمستوى الصوت لمراقبة مدى ارتفاع الأصوات أو انخفاضها في من حولك

مقدمة

دليل البرمجة

ماذا ستتعلم؟

  • استخدام مستشعر الميكروفون المدمج في جهاز مايكروبت لقياس مستوى شدة الصوت.
  • استخدام المتغيرات والعوامل لتتبّع القيم القصوى أثناء جمع البيانات من العالم الحقيقي.

كيف يعمل ؟

  • يقيس المصوات مستويات الصوت بقيم عددية تتراوح بين (0-255)، تمامًا مثل مستشعر الضوء.
  • تقارن حلقة التكرار باستمرار مستوى الصوت الحالي بمتغير يُسمّى «الحد_الأقصى(maxSound)» ، الذي يخزّن أعلى مستوى صوت تم تسجيله. إذا كان مستوى الصوت الحالي أعلى من أعلى مستوى سُجّل سابقًا، تُحدَّث قيمة «الحد_الأقصى» لتصبح مساوية للقيمة الجديدة.
  • داخل حلقة التكرار، تتحقق العبارة الشرطية «إذا (if)» مما إذا كنت قد ضغطت على الزر «A». إذا ضغطت عليه، فسيُعرض مستوى الصوت كقيمة رقمية على شاشة العرض. يمكنك استخدام هذه الميزة لمراقبة مدى ارتفاع مستوى الصوت في أماكن مختلفة بمرور الوقت
  • أعد ضبط القيمة القصوى بالضغط على زر إعادة الضبط الموجود في الجهة الخلفية من الجهاز.

المطلوب

  • نسخة مايكروبت الأحدث أو محاكي «ميك كود»
  • محرر أكواد لـ «بايثون» أو «ميك كود»
  • حزمة بطاريات (اختياري)

الخطوة ٢: بَرمج

1from microbit import *
2maxSound = 0
3lights = Image("11111:"
4              "11111:"
5              "11111:"
6              "11111:"
7              "11111")
8# ignore first sound level reading
9soundLevel = microphone.sound_level()
10sleep(200)
11
12while True:
13    if button_a.is_pressed():
14        display.scroll(maxSound)
15    else:
16        soundLevel = microphone.sound_level()
17        display.show(lights * soundLevel)
18        if soundLevel > maxSound:
19            maxSound = soundLevel
20            

الخطوة ٣: حسّن

  • عدّل المشروع بحيث يسجّل أيضًا أدنى مستوى للصوت أو الأكثر هدوءًا.
  • استخدم الاتصال اللاسلكي لإرسال مستوى الصوت إلى جهاز مايكروبت الآخر، حتى تتمكن من رصد الصوت عن بُعد