
يتفوق ESP32 على الأردوينو التقليدي في التحكم بتضمين عرض النبضة (PWM) بفضل وحدة تحكم مخصصة توفر مرونة أكبر بكثير من دالة analogWrite() المعتادة.
بنية PWM على ESP32
يوفر ESP32 وحدة تحكم LED مخصصة بـ16 قناة مستقلة (مرقمة من 0 إلى 15)، بحيث يمكن ضبط كل قناة بتردد ودقة مختلفين عن باقي القنوات دون أي تعارض بينها.
خطوات الإعداد الثلاث
يتطلب ضبط أي قناة ثلاث خطوات: اختيار رقم القناة من بين الـ16 المتاحة، وتحديد تردد الإشارة (5000 هرتز في المثال الشائع لتطبيقات الإضاءة)، وتحديد دقة التحليل بعدد بتات بين 1 و16 بت (المثال يستخدم 8 بت، ما يعطي قيم دورة تشغيل بين 0 و255 كما في الأردوينو التقليدي).
دوال التحكم
خلافًا للأردوينو التقليدي الذي يعتمد أمرًا واحدًا بسيطًا، يستخدم ESP32 مجموعة دوال مخصصة: ledcSetup() لضبط إعدادات القناة (الرقم والتردد والدقة)، وledcAttachPin() لربط منفذ GPIO معين بالقناة المُعدَّة، ثم ledcWrite() للتحكم الفعلي بدورة التشغيل عبر تمرير رقم القناة والقيمة المطلوبة.
لماذا هذا أفضل من analogWrite() التقليدية؟
توفر دالة analogWrite() في الأردوينو التقليدي تحكمًا بسيطًا لكنه محدود: تردد واحد فقط عادة وعدد أقل من مخارج PWM المتزامنة. يمنح نهج ESP32 إمكانية ضبط عدة ترددات مستقلة في آن واحد، ودقة تحليل أعلى (حتى 16 بت مقابل 8 بت)، وعددًا أكبر من قنوات PWM المتزامنة دون أي تعارض بين المنافذ - ما يجعله الخيار الأنسب للتطبيقات التي تحتاج تحكمًا دقيقًا بالسطوع أو سيناريوهات PWM متعددة المخارج معقدة.
يمكنك إيجاد لوحات ESP32 ضمن متجر Juthour Tech.
اترك تعليقا