تقديم
أولا وقبل كل شيء تأكد أنك قرأت الدرس الأول من هذه السلسلة. في هذا الدرس سنبدأ في امتحان البطاقة البرمجية Arduino ببرنامج بسيط يتمثل في إعطاء أمر بإشعال وإطفاء صمام ضوئي (LED). اذا اجتزت هذه المرحلة سيفتح لك باب مثير في برمجة العقول الاليكترونية. كل ما سنعمله هنا ليس برمجة حقيقية بأيدينا انما سنستعمل برنامجا جاهزا وبسيطا. وبالتالي عليك فقط فهم المبدأ وطريقة برمجة العقل الاليكتروني انطلاقا من حاسوبك. سنستعمل نظام التشغيل Windows في مثالنا هذا. أما إذا كنت تستعمل نظام Linux أو Mac فسنترك لك الباقي. |
هل أنت مستعد؟
لن تحتاج للكثير في هذا الدرس. ستحتاج فقط إلى كابل USB وبطاقة Arduino كما تكلمنا عنهما في الدرس الأول. وبما أننا سنستعمل صماما ضوئيا (LED) فلا توجد ضوابط لاختيار هذا الصمام، اختر ما شئت، لا يهم، شرط أن يكون مشابها لما في الصورة. | ||
بطاقة Arduino |
كابل USB |
صمام LED |
تنزيل برنامج Arduino
كما هو في عالم البرمجة في علوم الحاسوب، سنحتاج لتنزيل برنامج من أجل برمجة العقل الاليكتروني عليه. هو شبيه بلغة البرمجة المعروفة C.
على أي، اذهب الى صفحة تنزيل برنامج
قم بتثبيته أولا. ثم اذهب الى المجلد وقم بالنقر عليه ودعنا نبدأ. |
ما هو نوع الميكروكنترولور الموجود على البطاقة Arduino؟
كما أن أدمغة الناس تختلف (عبقري، غبي، سفيه، ذكي، حكيم....) فكذلك العقول الاليكترونية. توجد عدة أنواع من العقول الاليكترونية وبالتالي يجب أن تجعل برنامج Arduino الذي قمت بتثبيته على التعرف على نوع الميكروكنترولور الموجود على البطاقة Arduino. تقريبا كل بطاقات Arduino تستعمل ATmega168، لكن قد يكون عندك ATmega8. كيف ستعرف نوع الميكروكنترولور عندك؟؟؟ أسهل من شرب الماء، انظر على البطاقة واقرأ على رقاقة الميكروكنترولور الإسم المكتوب عليها. ماذا وجدت عليها؟ |
إذا كان النص المكتوب عليها هو ATmega8-16P فالذي عندك هو الرقاقة Atmega8. |
|
إذا كان النص المكتوب عليها هو ATmega168-20P فالذي عندك هو الرقاقة Atmega168. إذا كان النص المكتوب عليها هو ATmega328P-20P فالذي عندك هو الرقاقة Atmega328P. |
المهم، أيا كان عندك، فقط اذهب الى برنامج Arduino |
|
|
ما هو اسم مدخل USB الذي استعملته؟
قد يكون حاسوبك مجهزا بعدة مداخل USB. بعدما حددت نوع رقاقة الميكروكنترولور عندك، يجب الان تحديد اسم مدخل USB الذي استعملته لربط البطاقة بالحاسوب. ارجع الى الدرس الاول لتحدد المدخل الذي تم استعماله. قد يكون اسمه أما على نظام Mac فسيكون اسما ما يشبه tty.usbserial-xxxxx. |
لنبدأ بالبرمجة
أحيانا تتعبنا التحضيرات الأولية قبل البدء في العمل الجد. لكن انتهينا من التحضيرات ولنبدأ بأول برنامج الآن: لن تقوم بالبرمجة بنفسك، لكن توجد بعض الأمثلة المصحوبة في برنامج Arduino. اذهب وانقر على File ثم Sketchbook ثم Examples ثم Digital ثم Blink. |
|
|
|
ستظهر لك الشيفرة كالتالي: |
|
تحقق ونفذ: قبل أن تحول (أي تنقل) الشيفرةإلى بطاقة Arduino يجب أن تتحقق من خلوه من الأخطاء أولا بالقيام بتنفيذه. انقر على Sketch ثم Verify/Compile. |
|
بعد بضعة ثوان، من المفترض أن تظهر لك رسالة "Done compiling” مفاذها أنه تم التنفيذ. في حالة كان الشيفرة سليما من الأخطاء سيظهر لك ما هو مبين في الشاشة السوداء أسفله. هذا يعني أنك على استعداد لتحويل الشيفرة الى بطاقة Arduino |
|
تهيئة البطاقة لاستقبال الشيفرة (البطاقة من نوع NG Arduino فقط )
صراحة قد لا تحتاج لقراءة هذه الفقرة من هذا الدرس. لكن ماذا لو أن بطاقتك من النوع NG Arduino؟ في هذه الحالة يجب أن تعلمها بأنك تود أن ترسل إليها الشيفرة انطلاقا من الحاسوب وهو ما يسمى بعملية تهيئة البطاقة البرمجية. للقيام بهذا ما عليك إلا أن تضغط على الزر الأسود (قد يكون بنيا) كما هو مبين في الصورة. |
تحويل
والان جاء الوقت لتحويل الشيفرة الى البطاقة. تأكد من أن البطاقة متصلة بالحاسوب وان المصباح الأخضر مشتعل وأنك قمت بتحديد اسم مدخل USB |
|
بعد بضعة ثوان من المفترض أن تظهر لك النافذة التالية مصحوبة برسالة |
|
إذا حدث وحصلت على رسالة خطأ avrdude: stk500_getsync(): not in sync: resp=0x00 هذا يعني أن بطاقة Arduino لا تستجيب. ما العمل إذن؟ عليك التحقق من التالي: |
|
1.إذا كان عندك NG Arduino هل قمت بالضغط على الزر قبل تحميل الشيفرةاليها؟ |
|
إذا حدث وحصلت على رسالة الخطأ التالية: فهذا يعني أنه لم يتم تحديد مدخل USB بالشكل الصحيح, عد الى الدرس الأول وتحقق من أن USB driver قد ثبت كما ينبغي. |
|
لكن ماذا لو حصلت على الخطأ التالي: Expected signature for ATNEGA هذا غالبا ما يعني أنك لم تحدد اسم رقاقة الميكروكنترولور بالشكل الصحيح. |
|
أما إذا حصلت على الخطأ: can't open device “COM10”: The system cannot find the file specified في الويندوز مثلا، الرقم المرافق لكلمة COM يكون متغيرأ. |
|
هذا يعني أنك تمتلك الكثير من مداخل USB ما شاء الله |
تركيب الصمام الثنائي الضوئي (LED)
لا يهم أي صمام ثنائي ضوئي LED عندك، المهم أن يكون له مدخلين فقط كما هو مبين في الصورة. الصمامات الثنائية LED أحادية الاتجاه، بمعنى أنك يجب أن تثبتها في اتجاه واحد ولا تستطيع أن تقلبها كما هو الحال بالنسبة للمقاومات و المكثفات. ما العمل إذن؟ للصمامات الثنائية LED مدخلين أحدهما أقصر من الآخر. الأطول منهما يجب أن يوضع في الثقب المرموز له بالرقم 13 والأقصر في الثقب المرموز له بالرمز GND (يعني الأرضي) |
التأليف
ترجمة محمد السهلي
المراجع
http://www.ladyada.net/learn/arduino/lesson1.html
التعليقات
بخصوص المربطين TX و RX فهما يختصان بتقنيات الإرسال والإستقبال. وستعرفهما أكثر عند مباشرتك للمشاريع المتقدمة إن شاء الله.
أود شراء Fritzing Creator Kit with Arduino UNO English Edition لكنها غير متوفرة في المغرب لذا أستفسر عن ثمنها .