البرمجة
ارفع الكود البرمجي الذي يساعدك في صنع إضاءة تتحكم بسطوعها
#define touch 4
int p=0;
void setup()
{
pinMode(3, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT);
}
void loop()
{
int Value = digitalRead(touch);
if (Value == HIGH)
{
p++;
delay(200);
}
if(p==1){
analogWrite(3,255);
analogWrite(5,255);
analogWrite(6,255);
analogWrite(9,255);
if(p==2){
analogWrite(3,100);
analogWrite(5,100);
analogWrite(6,100);
analogWrite(9,100);
}
if(p==3){
analogWrite(3,0);
analogWrite(5,0);
analogWrite(6,0);
analogWrite(9,0);}
p=0;
}
}
شرح الكود البرمجي
نعرف حساس اللمس باسم (touch )الموصل مع المنفذ الرقمي 4
#define touch 4
نعرف متغير بقيمة ابتدائية =0 يمثل عدد المرات التي يتم النقر على الحساس فيها
int p=0;
في دالة (void setup) نعرف المنافذ الرقمية المتصلة مع الليدات (3و5و6و9) على أنها مخارج
void setup()
{
pinMode(3, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT);
}
في دالة (void loop) بدأ بتعريف متغير ()و الذي يمثل قراءة المنفذ رقم 4
void loop()
{
int Value = digitalRead(touch);
جملة شرطية في كل مرة يتم النقر على الحساس تزداد قيمة p بواحد يعني يحسب نقرة واحدة
if (Value == HIGH)
{
p++;
delay(200);
}
استخدمنا منافذ تعديل عرض النبضة الرقمية (PWM) للحصول على نتائج تناظرية ستتحكم في سطوع الإضاءة. تكون النتيجة كما لو كانت الإشارة عبارة عن جهد ثابت بين 0 و5 فولت يتحكم في سطوع الليدات، نمثل ذلك بالقيم من 0 – 255
النقرة الأولى تشغل الليدات على أعلى سطوع (255)
if(p==1){
analogWrite(3,255);
analogWrite(5,255);
analogWrite(6,255);
analogWrite(9,255);}
النقرة الثانية يقل السطوع
if(p==2){
analogWrite(3,100);
analogWrite(5,100);
analogWrite(6,100);
analogWrite(9,100);
}
النقرة الثالثة يتم ايقاف تشغيل الليدات
if(p==3){
analogWrite(3,0);
analogWrite(5,0);
analogWrite(6,0);
analogWrite(9,0);
و نعيد قيمة المتغير p إلى 0
p=0; } }

