لغة اردوينو. اردوينو - بيانات التحكم. موسوعة كبيرة كهربائي

يبدو أن تعلم المتحكمات الدقيقة أمر معقد وغير مفهوم؟ قبل ظهور Arudino ، لم يكن الأمر سهلاً حقًا وكان يتطلب مجموعة معينة من المبرمجين والمعدات الأخرى.

هذا نوع من المصمم الإلكتروني. الهدف الأولي للمشروع هو السماح للأشخاص بتعلم كيفية برمجة الأجهزة الإلكترونية بسهولة ، مع تخصيص الحد الأدنى من الوقت للجزء الإلكتروني.

يمكن إجراء تجميع الدوائر الأكثر تعقيدًا وتوصيل الألواح بدون مكواة لحام ، ولكن بمساعدة وصلات العبور مع وصلات ذكر وأنثى قابلة للفصل. وبهذه الطريقة ، يمكن توصيل كل من المرفقات ولوحات التوسيع ، والتي تسمى ببساطة "الدروع" (الدرع) في قاموس arduinoschikov.

ما هي أول لوحة Arduino يتم شراؤها كمبتدئ؟

يعتبر السبورة الأساسية والأكثر شعبية. هذه الرسوم هي بحجم بطاقة الائتمان. كبيرة جدا. معظم الدروع المعروضة للبيع تناسبها تمامًا. توجد مآخذ على اللوحة لتوصيل الأجهزة الخارجية.

في المتاجر المحلية لعام 2017 ، يبلغ سعره حوالي 4-5 دولارات. في الموديلات الحديثة ، قلبها هو Atmega328.

صورة لوحة Arduino وفك تشفير وظائف كل دبوس ، Arduino UNO pinout

المتحكم الدقيق الموجود على هذه اللوحة عبارة عن شريحة طويلة في حزمة DIP28 ، مما يعني أنه يحتوي على 28 دبوسًا.

اللوحة التالية الأكثر شيوعًا أرخص مرتين تقريبًا من اللوحة السابقة - 2-3 دولارات. هذا رسم. تم بناء اللوحات الحالية على نفس Atmega328 ، فهي تشبه وظيفيًا UNO ، والاختلافات في الحجم وحل مطابقة USB ، والمزيد حول ذلك لاحقًا. الفرق الآخر هو أن المقابس على شكل إبر يتم توفيرها لتوصيل الأجهزة باللوحة.

عدد المسامير (الأرجل) في هذه اللوحة هو نفسه ، ولكن يمكنك أن ترى أن وحدة التحكم الدقيقة مصنوعة في حزمة TQFP32 أكثر إحكاما ، ويتم إضافة ADC6 و ADC7 إلى الحزمة ، بينما تضاعف الأرجل "الإضافية" الأخرى ناقل الطاقة . أبعاده مضغوطة تمامًا - بحجم إبهامك تقريبًا.

اللوحة الثالثة الأكثر شيوعًا هي أنها لا تحتوي على منفذ USB للاتصال بجهاز كمبيوتر ، وسأخبرك كيف يتم الاتصال بعد ذلك بقليل.

هذا هو أصغر لوحة تمت مراجعتها ، وإلا فهو يشبه اللوحين السابقين ، ولا يزال قلبه Atmega328. لن نفكر في اللوحات الأخرى ، لأن هذه مقالة للمبتدئين ، ومقارنة اللوحات موضوع لمقال منفصل.

في الجزء العلوي ، مخطط توصيل USB-UART ، تم توصيل دبوس "GRN" بدائرة إعادة الضبط الخاصة بالمتحكم الدقيق ، ويمكن تسميته بشكل مختلف ، وسوف تكتشف سبب الحاجة إلى ذلك لاحقًا.

إذا كان UNO مفيدًا في استخدام ألواح التجارب ، فإن Nano و Pro Mini مناسبان للإصدارات النهائية من مشروعك لأنهما يشغلان مساحة صغيرة.

كيفية توصيل Arduino بالكمبيوتر؟

Arduino Uno و Nano متصلان بالكمبيوتر عبر USB. في الوقت نفسه ، لا يوجد دعم للأجهزة لمنفذ USB ؛ يتم هنا استخدام حل دائرة تحويل المستوى ، والذي يُسمى عادةً USB-to-Serial أو USB-UART (rs-232). في الوقت نفسه ، يتم وميض محمل إقلاع خاص من Arduino في وحدة التحكم الدقيقة ، مما يسمح لك بالمرور عبر هذه الحافلات.

يقوم Arduino Uno بتنفيذ هذا الاتصال على متحكم مع دعم USB - ATmega16U2 (AT16U2). اتضح أن هناك حاجة إلى متحكم إضافي على السبورة لفلاش المتحكم الرئيسي.

في Arduino Nano ، يتم تنفيذ ذلك بواسطة شريحة FT232R ، أو نظيرتها CH340. هذا ليس متحكمًا دقيقًا - إنه محول مستوى ، وهذه الحقيقة تجعل من السهل بناء Arduino Nano من الصفر بيديك.

عادةً ما يتم تثبيت برامج التشغيل تلقائيًا عند توصيل لوحة Arduino. ومع ذلك ، عندما اشتريت نسخة صينية من Arduino Nano ، تم التعرف على الجهاز ، لكنه لم يعمل ، تم لصق ملصق دائري مع تاريخ الإصدار على المحول ، ولا أعرف ما إذا تم ذلك عن قصد ، ولكن عندما قمت بتقشيرها ، رأيت علامة CH340.

قبل ذلك ، لم أواجه ذلك واعتقدت أنه تم تجميع جميع محولات USB-UART على FT232 ، وكان علي تنزيل برامج التشغيل ، ومن السهل جدًا العثور عليها عند الطلب "برامج تشغيل Arduino ch340". بعد التثبيت البسيط - نجح كل شيء!

يمكن أيضًا تشغيل وحدة التحكم الدقيقة من خلال نفس منفذ USB ، أي إذا قمت بتوصيله بمحول الهاتف المحمول ، فسيعمل نظامك.

ماذا أفعل إذا لم يكن هناك USB على لوحي؟

لوحة Arduino Pro Mini أصغر. تم تحقيق ذلك عن طريق إزالة موصل USB للبرامج الثابتة ومحول USB-UART نفسه. لذلك ، يجب شراؤها بشكل منفصل. أبسط محول على CH340 (أرخص) ، CPL2102 و FT232R ، يتم بيعه مقابل 1 دولار.

عند الشراء ، انتبه للجهد المصمم لهذا المحول. يأتي Pro mini بإصدارات 3.3 و 5 V ، وغالبًا ما يكون هناك وصلة مرور على المحولات لتبديل جهد الإمداد.

عند وميض Pro Mini ، قبل البدء مباشرة ، تحتاج إلى الضغط على RESET ، لكن هذا ليس ضروريًا في المحولات التي تحتوي على DTR ، يكون مخطط الاتصال في الشكل أدناه.

يتم ضمهم مع محطات خاصة "الأم - الأم" (أنثى - أنثى).

في الواقع ، يمكن إجراء جميع التوصيلات باستخدام مثل هذه المحطات (Dupont) ، كلاهما على كلا الجانبين مع مآخذ ومقابس ، وعلى جانب واحد يوجد مقبس ، وعلى الجانب الآخر يوجد قابس.

كيف تكتب برامج اردوينو؟

للعمل مع الرسومات (اسم البرنامج الثابت بلغة arduino) ، توجد بيئة متكاملة خاصة لتطوير Arduino IDE ، يمكنك تنزيلها مجانًا من الموقع الرسمي أو من أي مصدر موضوعي ، وعادة ما يكون هناك لا مشاكل مع التثبيت.

هكذا تبدو واجهة البرنامج. يمكنك كتابة برامج بلغة C AVR مبسطة تم تطويرها خصيصًا لـ Arduino ، وهي في الواقع مجموعة من المكتبات تسمى Wiring ، وكذلك في Pure C AVR. استخدام مما يسهل الكود ويسرع عملها.

توجد في الجزء العلوي من النافذة قائمة مألوفة حيث يمكنك فتح ملف وإعدادات وتحديد اللوحة التي تعمل بها (Uno و Nano والعديد والعديد غيرها) وأيضًا فتح المشاريع مع أمثلة التعليمات البرمجية الجاهزة. يوجد أدناه مجموعة من الأزرار للعمل مع البرنامج الثابت ، سترى تخصيص المفاتيح في الشكل أدناه.

يوجد في الجزء السفلي من النافذة منطقة لعرض معلومات حول المشروع وحالة الكود والبرامج الثابتة ووجود أخطاء.

أساسيات البرمجة في Arduino IDE

في بداية الكود ، تحتاج إلى إعلان المتغيرات وربط مكتبات إضافية ، إن وجدت ، ويتم ذلك على النحو التالي:

# include biblioteka.h ؛ // تضمين المكتبة المسماة "Biblioteka.h"

# تعريف المتغير 1234 ؛ // قم بتعريف متغير بقيمة 1234

يسمح الأمر Define للمترجم باختيار نوع المتغير نفسه ، ولكن يمكنك تعيينه يدويًا ، على سبيل المثال ، عدد صحيح int ، أو عدد عشري عشري.

أدى int = 13 ؛ // أنشأ متغيرًا "led" وخصص له القيمة "13"

يمكن للبرنامج تحديد حالة الدبوس كـ 1 أو 0. 1 هي وحدة منطقية ، إذا كان الدبوس 13 هو 1 ، فإن الجهد على ساقه المادية سيكون مساويًا لجهد إمداد المتحكم الدقيق (لـ arduino UNO و Nano - 5 V )

تتم كتابة إشارة رقمية باستخدام الأمر digitalWrite (رقم التعريف الشخصي ، القيمة) ، على سبيل المثال:

الكتابة الرقمية (led ، عالية) ؛ // سجل وحدة في دبوس 13 (أعلناها أعلاه) سجل. الوحدات.

كما يمكنك أن تفهم ، فإن طلب المنافذ يذهب وفقًا للترقيم الموجود على اللوحة ، الرقم المقابل. فيما يلي مثال مشابه للرمز السابق:

digitalWrite (13 ، مرتفع) ؛ // ضع رقم التعريف الشخصي 13 على واحد

يتم استدعاء وظيفة تأخير الوقت المطلوبة في كثير من الأحيان باستخدام الأمر

delayMicroseconds () تأخير (1000) ؛ // متحكم سينتظر 1000 مللي ثانية (ثانية واحدة)

يتم تعيين إعدادات المنفذ للإدخال والإخراج في وظيفة void setup () ، باستخدام الأمر:

pinMode (NOMERPORTA ، الإخراج / الإدخال) ؛ // الوسيطات - اسم المتغير أو رقم المنفذ ، المدخلات أو المخرجات للاختيار من بينها

التعرف على برنامج Blink الأول

كنوع من "Hello، world" للميكروكونترولر ، يوجد برنامج وميض LED ، دعنا نلقي نظرة على الكود الخاص به:

في البداية ، باستخدام الأمر pinMode ، أخبرنا المتحكم الدقيق بتعيين المنفذ مع LED للإخراج. لقد لاحظت بالفعل أن الكود لا يعلن عن متغير "LED_BUILTIN" ، والحقيقة هي أنه في Uno و Nano واللوحات الأخرى من المصنع ، يتم توصيل مصباح LED مدمج بالرقم 13 وهو ملحوم على اللوحة. يمكنك استخدامه للإشارة في مشاريعك أو للاختبار البسيط لبرامج flasher الخاصة بك.

بعد ذلك ، قمنا بتعيين الدبوس الذي تم لحام LED به على واحد (5 فولت) ، والسطر التالي يجعل MK ينتظر ثانية واحدة ، ثم يضبط دبوس LED_BUILTIN على الصفر ، وينتظر ثانية ويتكرر البرنامج في دائرة ، لذلك عندما يكون LED_BUILTIN هو 1 - يتم تمكين LED (وأي حمل آخر متصل بالمنفذ) ، عند الضبط على 0 يتم تعطيله.

اقرأ القيمة من المنفذ التناظري واستخدم بيانات القراءة

يحتوي متحكم AVR Atmega328 على محول تناظري رقمي مدمج 10 بت. يسمح لك ADC 10 بت بقراءة قيمة الجهد من 0 إلى 5 فولت ، في خطوات 1/1024 من سعة الإشارة بأكملها (5 فولت).

لتوضيح الأمر ، ضع في اعتبارك الموقف ، دعنا نقول أن قيمة الجهد عند الإدخال التناظري هي 2.5 فولت ، مما يعني أن المتحكم الدقيق سيقرأ القيمة من الطرف "512" إذا كان الجهد 0 - "0" ، وإذا كان 5 فولت - (1023). 1023 - لأن العد يبدأ من 0 ، أي 0 ، 1 ، 2 ، 3 ، إلخ. ما يصل إلى 1023-1024 قيمة في المجموع.

وإليك كيفية ظهورها في الكود ، باستخدام مخطط "analogInput" القياسي كمثال.

int sensorPin = A0 ؛

int ledPin = 13 ؛

حساس intValue = 0 ؛

pinMode (ledPin ، الإخراج) ؛

sensorValue = analogRead (sensorPin) ؛

الكتابة الرقمية (ledPin ، عالية) ؛

تأخير (قيمة المستشعر) ؛

digitalWrite (ledPin ، منخفض) ؛

تأخير (قيمة المستشعر) ؛

نعلن المتغيرات:

    Ledpin - قم بتعيين دبوس بشكل مستقل بمصباح LED مدمج للإخراج وإعطاء اسم فردي ؛

    sensorPin - إدخال تناظري ، مضبوط وفقًا للعلامة الموجودة على اللوحة: A0 ، A1 ، A2 ، إلخ ؛

    sensorValue - متغير لتخزين القيمة الصحيحة للقراءة والعمل معها.

يعمل الكود على النحو التالي: sensorValue يحفظ القيمة التناظرية المقروءة من sensorPin (الأمر analogRead). - هنا ينتهي العمل بالإشارة التناظرية ، ثم يكون كل شيء كما في المثال السابق.

نكتب وحدة إلى ledPin ، يتم تشغيل LED وانتظر وقتًا يساوي قيمة المستشعر ، أي 0 إلى 1023 مللي ثانية. نقوم بإيقاف تشغيل LED وننتظر مرة أخرى لهذه الفترة الزمنية ، وبعد ذلك يتكرر الرمز.

وبالتالي ، من خلال موضع مقياس الجهد ، نضبط التردد الوامض لمصباح LED.

وظيفة الخريطة لأرودينو

لا تدعم جميع وظائف المشغلات (لا أعرف شيئًا) "1023" كوسيطة ، على سبيل المثال ، المؤازرة محدودة بزاوية الدوران ، أي لنصف دورة (180 درجة) (نصف دورة) لمحرك مؤازر ، الحد الأقصى لوسيطة الوظيفة هو "180"

الآن حول بناء الجملة: تعيين (القيمة التي نقوم بترجمتها ، الحد الأدنى لقيمة الإدخال ، الحد الأقصى لقيمة الإدخال ، الحد الأدنى للمخرجات ، الحد الأقصى لقيمة الإخراج).

في الكود يبدو كالتالي:

(الخريطة (analogRead (وعاء) ، 0 ، 1023 ، 0 ، 180)) ؛

نقرأ القيمة من مقياس الجهد (analogRead (وعاء)) من 0 إلى 1023 ، وعند الإخراج نحصل على أرقام من 0 إلى 180

قيم خريطة الحجم:

من الناحية العملية ، نطبق هذا على رمز نفس المؤازرة ، ألق نظرة على الكود من Arduino IDE ، إذا كنت تقرأ الأقسام السابقة بعناية ، فهذا لا يتطلب شرحًا.

ومخطط الأسلاك.

Arduino هو أداة مفيدة للغاية لتعلم كيفية العمل مع ميكروكنترولر. وإذا كنت تستخدم C AVR النقي ، أو كما يطلق عليه أحيانًا "Pure C" - فسوف تقلل بشكل كبير من وزن الكود ، وسوف يتناسب بشكل أكبر مع ذاكرة وحدة التحكم الدقيقة ، ونتيجة لذلك ستحصل على منتج ممتاز من صنع المصنع لوحة التصحيح مع إمكانية الوميض عبر USB.

أنا أحب اردوينو. إنه لأمر مؤسف أن العديد من المبرمجين ذوي الخبرة في وحدة التحكم الدقيقة قاموا بتوبيخها دون سبب أنها مبسطة للغاية. من حيث المبدأ ، يتم تبسيط اللغة فقط ، لكن لا أحد يجبرك على استخدامها ، بالإضافة إلى أنه يمكنك وميض وحدة التحكم الدقيقة من خلال موصل ICSP ، وتحميل الكود الذي تريده هناك ، دون أي محمل إقلاع غير ضروري.

بالنسبة لأولئك الذين يرغبون في اللعب بالإلكترونيات ، كمصمم متقدم ، سيكون مثالياً ، وبالنسبة للمبرمجين ذوي الخبرة ، كلوحة لا تتطلب التجميع ، ستكون مفيدة أيضًا!

لمزيد من المعلومات حول Arduino وميزات استخدامه في الدوائر المختلفة ، راجع الكتاب الإلكتروني - .

أساس لغة البرمجة لوحدة Arduino هي لغة C (بدلاً من C ++). بتعبير أدق ، تسمى هذه اللهجة للغة المعالجة / الأسلاك. يمكن العثور على نظرة عامة جيدة للغة في الملحق. وأريد أن أتحدث أكثر ليس عن اللغة ، ولكن عن البرمجة.

البرنامج عبارة عن مجموعة من الأوامر التي يفهمها المعالج ، أو معالج الكمبيوتر أو معالج وحدة التحكم الدقيقة في وحدة Arduino ، لا يهم. المعالج يقرأ التعليمات وينفذها. أي أوامر يفهمها المعالج هي أرقام ثنائية. هذه أرقام ثنائية فقط ولا شيء غير ذلك. عند إجراء العمليات الحسابية ، التي كان المعالج مخصصًا لها من قبل ، يعمل المعالج بالأرقام. الأعداد الثنائية. واتضح أن الأوامر وما يشيرون إليه ليست سوى أرقام ثنائية. مثله. ولكن كيف يفهم المعالج هذه "كومة" الأرقام الثنائية؟

أولاً ، تتم كتابة كل هذه الأرقام الثنائية على خلايا ذاكرة الوصول العشوائي المتتالية مع العناوين. عند تحميل برنامج وبدء تشغيله ، يحصل المعالج على العنوان الأول للبرنامج ، حيث يجب كتابة التعليمات. تلك التعليمات التي تتطلب عمليات بأرقام من المعالج لها "علامات تعريف" ، على سبيل المثال ، في خليتي الذاكرة التاليتين هناك رقمان يجب إضافتهما. والعداد ، دعنا نسميه عداد التعليمات ، حيث يتم كتابة عنوان التعليمات التالية ، في هذه الحالة يزيد العنوان بحيث يكون للبرنامج التعليمات التالية على هذا العنوان. إذا لم يعمل البرنامج بشكل صحيح أو تعطل ، فقد يرتكب المعالج خطأ ، وبعد ذلك ، بعد قراءة رقم بدلاً من أمر ، لا يقوم المعالج على الإطلاق بما يجب عليه فعله ، و "يتجمد" البرنامج.

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

ومع ذلك ، فإن أي برنامج يتطلب أولاً وقبل كل شيء أن يكون لديك فهم واضح لما يفترض أن يفعله البرنامج وما هو الغرض منه. كلما فهمت هذا بشكل أوضح ، كان من الأسهل إنشاء برنامج. يمكن اعتبار البرامج الصغيرة ككل ، على الرغم من صعوبة تحديد البرامج الصغيرة منها وغير الصغيرة. من الأفضل تقسيم البرامج الأكثر تعقيدًا إلى أجزاء يمكن التعامل معها كبرامج قائمة بذاتها. لذلك من الأفضل إنشاءها ، وأسهل في تصحيحها واختبارها.

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

أقرب شيء لكتابة برنامج باستخدام الأرقام الثنائية هو لغة التجميع. يتميز بتوافق أوامر اللغة مع الأوامر الثنائية التي يفهمها المعالج. لكن برامج الترميز في المجمّع تتطلب مزيدًا من الجهد وهي أقرب إلى الفن منها إلى العمليات الرسمية. تعد اللغات عالية المستوى مثل Basic أو C أكثر تنوعًا وأسهل في الاستخدام. ولفترة طويلة ، تم استخدام لغة الرسوم لكتابة البرامج بشكل عام ، وظهر مؤخرًا "مترجمون" من هذه اللغة إلى لغة المعالجات.

بالإضافة إلى لغات البرمجة ذات الأغراض العامة ، كان هناك دائمًا بعض التخصص في لغات البرمجة ، وكانت هناك لغات متخصصة. بالنسبة إلى الأخير ، أود أيضًا تضمين لغة البرمجة لوحدة Arduino.

كل ما تحتاجه لإخبار الوحدة بفعل شيء نحتاجه منظم في مجموعة مناسبة من الأوامر. لكن أولاً ، ما الذي نحتاجه من Arduino؟

يمكن استخدام الوحدة بسعات مختلفة - إنها قلب (أو رأس) الروبوت ، وهي أساس الجهاز ، وهي أيضًا مُنشئ مناسب لإتقان العمل باستخدام وحدات التحكم الدقيقة ، إلخ.

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

دعونا نرى ما يمكن أن يخبرنا به أبسط برنامج LED Blink.

int ledPin = 13 ؛

pinMode (ledPin ، الإخراج) ؛

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

أولاً ، دعنا نتذكر ما هو LED. في جوهره ، هذا هو الصمام الثنائي العادي ، حيث ، بسبب تصميمه ، عندما يتدفق التيار في الاتجاه الأمامي ، يبدأ التقاطع في التوهج. أي ، لكي يتوهج LED ، يجب أن يتدفق التيار من خلاله ، مما يعني أنه يجب تطبيق الجهد على LED. وحتى لا يتجاوز التيار القيمة المسموح بها ، يجب توصيل المقاوم في سلسلة بمصباح LED ، وهو ما يسمى الحد الحالي (انظر الملحق أ ، الإخراج الرقمي). يقوم المتحكم الدقيق ، الذي يشكل أساس وحدة Arduino ، بتطبيق الجهد على مؤشر LED. يحتوي المتحكم الدقيق ، بالإضافة إلى المعالج الذي ينفذ أوامرنا ، على واحد أو أكثر من منافذ الإدخال / الإخراج. دون النظر إلى جهاز منفذ معين ، دعنا نقول هذا - عندما يعمل دبوس المنفذ كإخراج ، يمكن تمثيله كناتج لدائرة كهربائية رقمية ذات حالتين ، تشغيل وإيقاف (يوجد جهد عند الخرج ، هناك لا يوجد جهد عند الخرج).

ولكن يمكن أن يعمل دبوس المنفذ نفسه أيضًا كمدخل. في هذه الحالة ، يمكن تمثيلها ، على سبيل المثال ، كمدخل لدائرة رقمية دقيقة - يتم تطبيق مستوى منطقي ، مرتفع أو منخفض ، على المدخلات (انظر الملحق أ ، المدخلات الرقمية).

كيف يومض LED:

تفعيل دبوس إخراج المنفذ. تعطيل إخراج المنفذ.

لكن المعالج سريع جدا. لن يكون لدينا الوقت لملاحظة الوميض. لملاحظة هذا الوميض ، نحتاج إلى إضافة وقفات. إنه:

تفعيل دبوس إخراج المنفذ. وقفة لمدة ثانية.

تعطيل إخراج المنفذ.

وقفة لمدة ثانية.

هذا هو برنامجنا. سيقوم المعالج بقراءة الأمر الأول وتشغيل الإخراج ، وسيتم تشغيل LED. ثم سيتوقف المعالج مؤقتًا ويطفئ الإخراج ، وسوف ينطفئ LED. لكنه رمش مرة واحدة فقط.

يسمى تكرار عملية أو مجموعة أوامر دورة في البرمجة. هناك أنواع مختلفة من الدورات. هناك حلقة يتم تنفيذها بعدد معين من المرات. هذه حلقة for. هناك حلقات يتم تشغيلها حتى يتم استيفاء بعض الشروط ، والتي تعد جزءًا من بناء لغة الحلقة. وإذا لم يتم استيفاء الشرط مطلقًا ، فسيتم تنفيذ الحلقة عددًا لا نهائيًا من المرات. إنها دورة لا نهاية لها.

لا أعتقد أن المتحكمات الدقيقة تُستخدم مع البرامج من النوع الموضح أعلاه. وهذا يعني أنه يتم تنفيذ عدة أوامر مرة واحدة ولا تعمل وحدة التحكم بعد الآن. كقاعدة عامة ، يعمل باستمرار بمجرد تطبيق جهد الإمداد عليه. وبالتالي ، يجب أن يعمل الميكروكونترولر في حلقة لا نهائية.

هذا ما تقوله وظيفة الحلقة الفارغة () ، الحلقة هي حلقة ، حلقة مغلقة. لا توجد شروط لإنهاء الحلقة ، وبالتالي لا يوجد شرط لإنهائها.

بالإضافة إلى ذلك ، يجب أن نخبر وحدة Arduino عن أي دبوس من المنفذ وكيف نريد استخدامه ، للإخراج (OUTPUT) أو للإدخال (INPUT). يتم تقديم هذا الغرض من خلال وظيفة void setup () ، وهي إلزامية للغة Arduino ، حتى لو لم يتم استخدامها ، والأمر pinMode () لضبط وضع تشغيل الدبوس.

pinMode (ledPin ، الإخراج) ؛

ومع ذلك ، يستخدم بناء اللغة متغيرات لتحديد رقم الإخراج:

int ledPin = 13 ؛

استخدام المتغيرات مناسب. إذا قررت أنك ستستخدم المخرج 13 بدلاً من الناتج 12 ، فستقوم بإجراء تغيير على سطر واحد فقط. هذا ينطبق بشكل خاص على البرامج الكبيرة. يمكن اختيار اسم المتغير حسب رغبتك ، ولكن كقاعدة عامة ، يجب أن يتكون من أحرف فقط ، وغالبًا ما يكون عدد الأحرف محدودًا. إذا قمت بتعيين اسم المتغير بشكل غير صحيح ، أعتقد أن المترجم سوف يصححك.

تعمل وظيفة الكتابة الرقمية (ledPin، HIGH) على ضبط الدبوس المحدد على حالة عالية ، أي تشغيل الدبوس.

والتأخير (1000) ، كما فهمت بالفعل ، يعني توقفًا مؤقتًا قدره 1000 مللي ثانية ، أو ثانية واحدة.

يبقى أن نفهم ما تعنيه هذه البادئات مثل int ، void. يتم وضع أي قيم وأي متغيرات في الذاكرة ، وكذلك أوامر البرنامج. غالبًا ما تُكتب الأرقام في خلايا ذاكرة مكونة من 8 بتات. هذا بايت. لكن البايتات هي أرقام من 0 إلى 255. لكتابة أعداد كبيرة ، تحتاج إلى وحدتي بايت أو أكثر ، أي خليتي ذاكرة أو أكثر. لتوضيح كيفية العثور على الرقم للمعالج ، هناك أنواع مختلفة من الأرقام لها أسماء مختلفة. لذا فإن الرقم المسمى بايت سيأخذ خلية واحدة ، ويكون عدد صحيح (عدد صحيح ، عدد صحيح) أكبر. بالإضافة إلى ذلك ، تُرجع الوظائف المستخدمة في لغات البرمجة أيضًا أرقامًا. لتحديد نوع الرقم الذي يجب على الدالة إرجاعه ، اسبق الوظيفة بهذا النوع من الأرقام التي يتم إرجاعها. لكن بعض الدوال قد لا تُرجع أرقامًا ، مثل هذه الدوال تسبقها باطلة (انظر الملحق أ ، المتغيرات).

هذا هو مقدار الاهتمام الذي يمكن أن يخبرنا به حتى أبسط البرامج.

كل هذا ، آمل أن تقرأه في الملحق. والآن دعونا نجري تجارب بسيطة ، باستخدام فقط ما نعرفه بالفعل من إمكانيات اللغة. أولاً ، دعنا نستبدل متغير int ، الذي يشغل مساحة كبيرة من الذاكرة ، ببايت - مكان واحد ، خلية ذاكرة واحدة. دعونا نرى ما يمكننا القيام به.

بايت ledPin = 13 ؛

pinMode (ledPin ، الإخراج) ؛

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

بعد تجميع البرنامج وتحميله في الوحدة ، لن نلاحظ أي تغييرات في تشغيل البرنامج. بخير. ثم نقوم بتغيير البرنامج حتى نلاحظ التغييرات في عمله.

للقيام بذلك ، سنقوم باستبدال الرقم في وظيفة التأخير (1000) بمتغير ، وتسميته my_del. يجب أن يكون هذا المتغير عددًا صحيحًا ، أي عدد صحيح.

int my_del = 5000 ؛

لا تنس إنهاء كل أمر بفاصلة منقوطة. قم بإجراء تغييرات على البرنامج ، وقم بتجميعه وتحميله في الوحدة النمطية. ثم غيّر المتغير وأعد التحويل البرمجي والتحميل:

بايت my_del = 5000 ؛

أنا متأكد من أن الفرق سيكون ملحوظًا.

لنقم بتجربة أخرى لتغيير مدة الإيقاف المؤقت. تقليل مدة الإيقاف المؤقت ، دعنا نقول ، خمس مرات. دعنا نتوقف لمدة ثانيتين ، ثم نزيد أيضًا خمس مرات. دعنا نتوقف مرة أخرى لمدة ثانيتين. الحلقة التي يتم تشغيلها لعدد معين من المرات تسمى حلقة for وتتم كتابتها على النحو التالي:

لـ (int i = 0 ؛ i<5; i++)

شيء يتم تنفيذه في حلقة for

لتنفيذ الحلقة ، تحتاج إلى متغير ، لدينا i ، يحتاج المتغير إلى إعطاء قيمة أولية ، قمنا بتعيينها له. ثم يتبع شرط إنهاء الحلقة ، لدينا i أقل من 5. وترميز i ++ هو تدوين زيادة المتغير بمقدار واحد ، وهو أمر نموذجي للغة C. تقيد الأقواس المتعرجة مجموعة الأوامر المراد تنفيذها في حلقة for. قد تحتوي لغات البرمجة الأخرى على محددات أخرى لتحديد كتلة من كود الوظيفة.

داخل الحلقة ، نفعل الشيء نفسه كما في السابق ، مع بعض التغييرات:

لـ (int i = 0 ؛ i<5; i++)

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

my_del = my_del - 100 ؛

تحدثنا عن تغيير سجل الإيقاف المؤقت أعلاه ، ويتم تغيير الإيقاف المؤقت نفسه عن طريق تقليل المتغير بمقدار 100.

بالنسبة للحلقة الثانية ، سنكتب نفس كتلة الكود ، لكننا سنزيد متغير مدة الإيقاف المؤقت بمقدار 100.

لـ (int i = 0 ؛ i<5; i++)

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

لقد لاحظت أن تسجيل انخفاض في الإيقاف المؤقت والزيادة فيه يبدو مختلفًا. هذه أيضًا سمة من سمات لغة C. على الرغم من أنه ، من أجل التوضيح ، كان يجب تكرار هذا الإدخال ، مع تغيير علامة الطرح فقط إلى علامة الجمع. لذلك حصلنا على هذا البرنامج:

int ledPin = 13 ؛

int my_del = 1000 ؛

pinMode (ledPin ، الإخراج) ؛

لـ (int i = 0 ؛ i<5; i++)

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

لـ (int i = 0 ؛ i<5; i++)

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

دعنا ننسخ كود برنامجنا إلى برنامج Arduin ، ونقوم بتجميعه وتحميله إلى الوحدة النمطية. يمكن ملاحظة التغيير في مدة التوقف المؤقت. وستكون ملحوظة بشكل أكبر ، حاول تنفيذ حلقة for 8 مرات على سبيل المثال.

ما قمنا به للتو تم تنفيذه بواسطة مبرمجين محترفين - بوجود برنامج جاهز ، يمكن تعديله بسهولة ليناسب احتياجاتك أو رغباتك. لذلك ، يقومون بتخزين جميع برامجهم. وهو ما أنصحك به.

ما الذي افتقدناه في تجربتنا؟ لم نعلق على عملنا. لإضافة تعليق ، يتم استخدام خط مائل "للأمام" مزدوج ، أو شرطة مائلة واحدة ، ولكن بعلامات نجمية (انظر الملحق أ). أنصحك بعمل هذا بنفسك ، لأن العودة إلى البرنامج بعد فترة ، ستفهمه بسهولة أكبر إذا كان هناك تفسيرات لما تفعله في مكان أو آخر في البرنامج. كما أنصح في المجلد مع كل برنامج بتخزين وصفه باللغة المعتادة ، في أي محرر نصوص.

أبسط برنامج "وميض LED" يمكن أن يخدم عشرات التجارب الأخرى (حتى مع مؤشر LED واحد). يبدو لي أن هذا الجزء من العمل ، وهو ابتكار الأشياء الأخرى التي يمكن القيام بها مثيرًا للاهتمام ، هو الأكثر إثارة للاهتمام. إذا أشرت إلى الملحق حيث يتم وصف لغة البرمجة ، إلى قسم "التحكم في البرنامج" ، فيمكنك استبدال حلقة for بنوع مختلف من الحلقة. وجرب كيف تعمل أنواع أخرى من الدورات.

على الرغم من أن معالج المتحكم الدقيق ، مثله مثل أي معالج آخر ، يمكنه إجراء العمليات الحسابية (لهذا تم اختراعه) ، ويستخدم هذا ، على سبيل المثال ، في الأجهزة ، فإن أكثر العمليات المميزة للميكروكونترولر هي ضبط إخراج المنفذ على ارتفاع أو الحالة المنخفضة ، أي "وميض LED" كرد فعل للأحداث الخارجية.

يتعرف المتحكم الدقيق على الأحداث الخارجية بشكل أساسي من خلال حالة المدخلات. من خلال ضبط دبابيس المنفذ على إدخال رقمي ، يمكننا مراقبته. إذا كانت الحالة الأولية للإدخال عالية ، وتسبب حدث ما في انخفاض المدخلات ، فيمكننا فعل شيء استجابة لذلك الحدث.

أبسط مثال على ذلك هو زر على الإدخال. عند عدم الضغط على الزر ، يكون الإدخال مرتفعًا. إذا ضغطت على الزر ، سينخفض ​​الإدخال ، ويمكننا "إضاءة" مؤشر LED عند الخرج. في المرة التالية التي تضغط فيها على الزر ، يمكن إيقاف تشغيل مؤشر LED.

هذا مرة أخرى مثال على برنامج بسيط. حتى بالنسبة للمبتدئين ، قد يبدو الأمر غير مثير للاهتمام. ومع ذلك ، حتى هذا البرنامج البسيط يمكن أن يكون مفيدًا جدًا. سأقدم مثالًا واحدًا فقط: بعد الضغط على الزر ، لن نضيء مؤشر LED ، بل يومض (بطريقة معينة). ودعنا نأخذ LED مع الأشعة تحت الحمراء. نتيجة لذلك ، نحصل على لوحة تحكم. هنا مثل هذا البرنامج البسيط.

توجد اختلافات في قائمة الأمثلة في إصدارات مختلفة من البرنامج. ولكن يمكنك الرجوع إلى دليل اللغة في التطبيق ، حيث يوجد مثال ومخطط برنامج (في قسم الأمثلة يسمى "التطبيق") للعمل مع الإدخال. سوف أقوم بنسخ البرنامج:

int ledPin = 13 ؛

pinMode (ledPin ، الإخراج) ؛

pinMode (inPin ، INPUT) ؛

إذا (قراءة رقمية (inPin) == عالية)

الكتابة الرقمية (ledPin ، عالية) ؛

digitalWrite (ledPin ، منخفض) ؛

وكما ترى ، حصلنا على برنامج جديد تمامًا من خلال تعديل البرنامج القديم. الآن سيومض مؤشر LED فقط عند الضغط على الزر المتصل بالدبوس 2. يتم توصيل السن 2 بالسلك المشترك (الأرضي ، GND) من خلال المقاوم 10 كيلو أوم. الزر متصل في أحد طرفيه بجهد الإمداد + 5 فولت ، وفي الطرف الآخر بالدبوس 2.

في البرنامج ، نلتقي بتكوين لغة جديد إذا كان من قسم التحكم في البرنامج. يقرأ على هذا النحو: إذا تم استيفاء الشرط (المضمّن بين قوسين) ، فسيتم تنفيذ كتلة البرنامج الموجودة بين قوسين. لاحظ أنه في الحالة (digitalRead (inPin) == HIGH) الإدخال يساوي مرتفع مع علامتين متساويتين! في كثير من الأحيان ، يتم نسيان هذا على عجل ، وتبين أن الحالة غير صحيحة.

يمكن نسخ البرنامج وتحميله في وحدة Arduino. ومع ذلك ، لاختبار تشغيل البرنامج ، تحتاج إلى إجراء بعض التغييرات على تصميم الوحدة. ومع ذلك ، فإن ذلك يعتمد على نوع الوحدة. تحتوي الوحدة الأصلية على مآخذ للتوصيل بألواح التمدد. في هذه الحالة ، يمكنك إدخال أسلاك صلبة مناسبة في مواقع الموصل المطلوبة. تحتوي الوحدة النمطية الخاصة بي على جهات اتصال نصلية للاتصال بلوحات التمدد. يمكنني إما البحث عن موصل مناسب ، أو استخدام مقبس مناسب للرقاقة في حزمة DIP وهو أرخص.

السؤال الثاني هو كيف تجد مخرجات الوحدة المستخدمة في البرنامج؟

ستساعد الصورة التي التقطتها من الموقع على فهم هذا السؤال: http://robocraft.ru/.

أرز. 4.1 موقع وغرض دبابيس وحدة التحكم ووحدة Arduino

تم تصنيف جميع المسامير الموجودة على وحدة CraftDuino الخاصة بي ، لذا فإن العثور على الدبوس الصحيح أمر سهل. يمكنك توصيل زر ومقاوم والتحقق من عمل البرنامج. بالمناسبة ، على موقع RoboCraft المذكور أعلاه ، يتم عرض العملية برمتها في صور (لكن البرنامج لا يستخدم مثل هذه الاستنتاجات تمامًا!). أنصحك أن تنظر.

تحتوي العديد من المتحكمات الدقيقة على أجهزة إضافية في تكوينها. لذا فإن Atmega168 ، التي على أساسها بنيت وحدة Arduino ، لديها UART ، وهي كتلة مدمجة للتواصل مع الأجهزة الأخرى باستخدام تبادل البيانات التسلسلي. على سبيل المثال ، مع جهاز كمبيوتر عبر منفذ COM. أو مع متحكم آخر باستخدام كتلة UART المدمجة. يوجد أيضًا محول تناظري إلى رقمي. ومحرك تعديل عرض النبض.

يتم توضيح استخدام الأخير من خلال برنامج سأقوم بنسخه أيضًا من موقع RoboCraft. لكن البرنامج يمكن أن يؤخذ من التطبيق. وربما يكون ذلك في أمثلة برنامج Arduino.

// LED يتلاشى من BARRAGAN

قيمة int = 0 ؛ // متغير لتخزين القيمة المطلوبة

intledpin = 9 ؛ // LED متصل بالدبوس الرقمي 9

// لا حاجة لاستدعاء وظيفة pinMode

لـ (القيمة = 0 ؛ القيمة<= 255; value+=5) // постепенно зажигаем светодиод

analogWrite (ليدبين ، القيمة) ؛ // قيمة الإخراج (من 0 إلى 255)

تأخير (30) ؛ // انتظر 🙂

من أجل (القيمة = 255 ؛ القيمة> = 0 ؛ القيمة- = 5) // قم بإطفاء مؤشر LED تدريجيًا

analogWrite (ليدبين ، القيمة) ؛

إذا كانت وظيفة digitalRead (inPin) في البرنامج السابق ، وهي قراءة المدخلات الرقمية ، جديدة بالنسبة لنا ، فإن وظيفة analogWrite (ledpin ، value) في هذا البرنامج جديدة بالنسبة لنا ، على الرغم من أن معلمات هذه الوظيفة هي بالفعل متغيرات مألوفة. حول استخدام الإدخال التناظري ، باستخدام ADC (المحول التناظري إلى الرقمي) ، سنتحدث لاحقًا. والآن سنعود إلى الأسئلة العامة للبرمجة.

البرمجة شيء متاح للجميع ، لكن إتقان كل من البرمجة وأي لغة برمجة سيستغرق وقتًا. يوجد اليوم عدد من البرامج التي تساعد على إتقان البرمجة. وواحد منهم مرتبط بشكل مباشر بوحدة Arduino. يطلق عليه Scratch for Arduino أو S4A للاختصار. يمكنك العثور على هذا البرنامج وتنزيله من: http://seaside.citilab.eu/scratch/arduino. لا أعرف بالضبط كيف يتم ترجمة اسم البرنامج ، ولكن "البدء من الصفر" يترجم إلى "البدء من الصفر".

يحتوي موقع مشروع S4A على إصدارات لنظامي التشغيل Windows و Linux ، ولكن بالنسبة لنظام التشغيل الأخير ، فإن البرنامج جاهز للتثبيت في إصدار توزيع دبيان. لا أريد أن أقول إنه لا يمكن استخدامه مع توزيعات Linux الأخرى ، ولكن دعونا أولاً نرى كيفية العمل في البرنامج باستخدام وحدة Arduino على Windows.

بعد تثبيت البرنامج بالطريقة المعتادة ، يمكنك ضبط الواجهة على الروسية باستخدام محوّل اللغة.

أرز. 4.2 برنامج محوّل لغة واجهة البرنامج

يعرض رمز شريط الأدوات الأول ، عند النقر فوقه ، جميع اللغات الممكنة لواجهة البرنامج. يمكن العثور على اللغة الروسية في القسم ...

أرز. 4.3 قائمة اللغات المراد استخدامها في واجهة البرنامج

... تم وضع علامة "المزيد ...".

إذا لم يتم عمل أي شيء ، فسيظل النقش في النافذة اليمنى "لوحة البحث ..." ، ولكن لم يتم العثور على الوحدة. لتوصيل وحدة Arduino ببرنامج S4A ، تحتاج إلى تنزيل شيء آخر من موقع المشروع.

أرز. 4.4 ملف للتحميل إلى وحدة Arduino لـ S4A

هذا الملف ليس سوى برنامج لـ Arduino (Sketch). أي ، ملف نصي يمكن نسخه في محرر Arduino ، وترجمته وتحميله في الوحدة النمطية. بعد الخروج من برنامج Arduino ، يمكنك تشغيل برنامج S4A والآن تم تحديد موقع الوحدة.

أرز. 4.5 توصيل الوحدة بالبرنامج

المدخلات التناظرية للوحدة غير متصلة ، وكذلك المدخلات الرقمية ، وبالتالي فإن القيم المعروضة للوحدة تتغير بشكل عشوائي.

تاريخيًا ، يتكون برنامج Arduino من بيئة برمجية متكاملة (IDE) تتيح لك كتابة وتجميع وتحميل الكود المكتوب على الجهاز. تعتمد بيئة ArduinoIDE ولغة Wiring نفسها بشكل أساسي على المعالجة ، بشكل غير مباشر على C / C ++. في الواقع ، يعد Arduino IDE خليطًا كبيرًا ، ليس من أجل المتعة ، ولكن للراحة.

حتى ظاهريا واردوينوIDE والمعالجة متشابهة


ماذا يتكون البرنامج (سكتش)؟
كل برنامج ، بغض النظر عن مدى تعقيده ، يتكون من مجموعات منفصلة كتلرمز ، والذي يشار إليه بواسطة الأقواس المتعرجة (). يتطلب الحد الأدنى من البرنامج كتلتين فقط: الإعداد والحلقة. وجودهم إلزامي في أي برنامج C ++ لـ Arduino ، وإلا يمكنك الحصول على خطأ في مرحلة الترجمة.
إعداد باطل () () حلقة باطلة () ()
في وظيفة الإعداد () ، تحدث الإعدادات الأولية للمتغيرات والسجلات. بعد اكتمال الإعداد () ، ينتقل التحكم إلى وظيفة الحلقة () ، وهي حلقة لا نهائية مكتوبة في الجسم (بين ()). هذه الأوامر هي التي تؤدي جميع الإجراءات الحسابية لوحدة التحكم.

المعدات "مرحبًا, عالم! - وميض LED.
ما يبدأ التعارف الأول مع Arduino عند تقاطع البرامج والأجهزة هو وميض LED.


تحتاج أولاً إلى إكمال الحد الأدنى من البرنامج. بالنسبة إلى Arduino (على سبيل المثال ، UNO) ، نقوم بتوصيل LED بالدبوس 12 و GND (يتم اختيار لون LED نفسه من التفضيلات الشخصية).

إعداد باطل () (pinMode (12، OUTPUT) ؛) حلقة باطلة () (كتابة رقمية (12 ، عالية) ؛ تأخير (100) ؛ كتابة رقمية (12 ، منخفض) ؛ تأخير (900) ؛)
قم باستخدام Ctrl + C -> Ctrl + V ، ترجمة ، تحميل ، حكم. نرى عرض ضوئي لا يدوم أكثر من ثانية. لنكتشف سبب حدوث ذلك.

في الكتل الفارغة سابقًا ، أضفنا القليل منها التعبيرات . تم وضعها بين الأقواس المتعرجة لوظائف الإعداد والحلقة.
كل تعبير هو تعليمات للمعالج. يتم تنفيذ التعبيرات داخل كتلة واحدة واحدة تلو الأخرى ، بترتيب صارم دون أي توقفات ومفاتيح تبديل. بمعنى ، إذا كنا نتحدث عن كتلة معينة من التعليمات البرمجية ، فيمكن قراءتها من أعلى إلى أسفل لفهم ما يتم القيام به.

ماذا يحدث بين{ } ?
كما تعلم ، يمكن أن تعمل دبابيس Arduino كمدخلات وإخراج. عندما نريد التحكم في شيء ما ، نحتاج إلى نقل دبوس التحكم إلى حالة الإخراج. يتم ذلك عن طريق تعبير في الوظيفةيثبت :
pinMode (12 ، الإخراج) ؛ في هذه الحالة ، يكون التعبير استدعاء وظيفة . في pinMode ، يتم تعيين الدبوس المحدد بالرقم على الوضع المحدد (INPUT أو OUTPUT). يشار إلى أي دبوس وأي وضع في السؤال بين قوسين ، مفصولة بفاصلات. في حالتنا ، نريد أن يعمل الدبوس الثاني عشر كمخرج. الإخراج يعني الإخراج ، المدخلات تعني الإدخال. يتم استدعاء القيم المؤهلة مثل 12 و OUTPUT الحجج الوظيفية . يعتمد عدد الحجج التي تعتمدها الوظيفة على جوهر الوظيفة وإرادة منشئها. يمكن أن تكون الوظائف بدون وسيطات على الإطلاق ، كما هو الحال مع الإعداد والحلقة.

بعد ذلك ، انتقل إلى كتلة الحلقة بالترتيب:
-call المدمج في وظيفة digitalWrite. إنه مصمم لتوفير صفر منطقي (منخفض ، 0 فولت) أو واحد منطقي (عالي ، 5 فولت) إلى طرف معين. يتم تمرير وسيطين إلى وظيفة الكتابة الرقمية: رقم التعريف الشخصي والقيمة المنطقية.
- استدعاء وظيفة التأخير. هذه ، مرة أخرى ، وظيفة مضمنة تجعل المعالج "سكون" لفترة معينة من الوقت. لا يتطلب الأمر سوى حجة واحدة: الوقت بالمللي ثانية للنوم. في حالتنا ، هذا 100 مللي ثانية. بمجرد انتهاء صلاحية 100 مللي ثانية ، يستيقظ المعالج وينتقل فورًا إلى التعبير التالي.
- استدعاء الوظيفة المدمجة digitalWrite. هذه المرة فقط الوسيطة الثانية منخفضة. أي أننا نضع صفرًا منطقيًا على الدبوس الثاني عشر -> نطبق 0 فولت -> نطفئ مؤشر LED.
- استدعاء وظيفة التأخير. هذه المرة "ننام" لفترة أطول قليلاً - 900 مللي ثانية.

بمجرد تنفيذ الوظيفة الأخيرة ، تنتهي كتلة الحلقة ويحدث كل شيء مرارًا وتكرارًا. في الواقع ، الظروف المعروضة في المثال متغيرة تمامًا ، ويمكنك اللعب بقيم التأخير ، وتوصيل العديد من مصابيح LED وجعلها تبدو كإشارة مرور أو وميض شرطة (كل هذا يتوقف على خيال وإرادة المنشئ ).

بدلاً من الاستنتاج ، القليل عن النظافة.
في الواقع ، كل المسافات وفواصل الأسطر وأحرف الجدولة لا تهم المترجم كثيرًا. عند وجود مساحة ، قد يكون هناك فاصل سطر والعكس صحيح. في الواقع ، 10 مسافات متتالية ، وخطان فاصلان و 5 مسافات أخرى ، كلها تعادل مسافة واحدة.


بمساعدة المساحة الفارغة ، يمكنك جعل البرنامج مفهومًا ومرئيًا ، أو على العكس من ذلك ، تشويهه بشكل لا يمكن التعرف عليه. على سبيل المثال ، يمكن تعديل البرنامج المقدم كمثال على النحو التالي:

إعداد باطل () (pinMode (12، OUTPUT) ؛) حلقة باطلة () (كتابة رقمية (12 ، عالية) ؛ تأخير (100) ؛ كتابة رقمية (12 ، منخفض) ؛ تأخير (900) ؛)

لمنع أي شخص من النزيف من عيونه أثناء القراءة ، يمكنك اتباع بعض القواعد البسيطة:


1. دائمًا ، في بداية كتلة جديدة بين( و ) زيادة المسافة البادئة. عادة ما يتم استخدام مساحتين أو 4 مسافات. اختر إحدى القيم والتزم بها طوال الوقت.

حلقة فارغة () (كتابة رقمية (12 ، عالية) ؛ تأخير (100) ؛ كتابة رقمية (12 ، منخفضة) ؛ تأخير (900) ؛)
2. كما في اللغة العادية: ضع مسافة بعد الفواصل.

digitalWrite (12 ، عالية) ؛
3. ضع حرف بداية الكتلة (على سطر جديد عند مستوى المسافة البادئة الحالي ، أو في نهاية السطر السابق. وحرف نهاية الكتلة) على سطر منفصل عند مستوى المسافة البادئة الحالي:

إعداد باطل () (pinMode (12، OUTPUT)؛) إعداد باطل () (pinMode (12، OUTPUT)؛)
4. استخدم الأسطر الفارغة لفصل الكتل الدلالية:

حلقة فارغة () (كتابة رقمية (12 ، عالية) ؛ تأخير (100) ؛ كتابة رقمية (12 ، منخفضة) ؛ تأخير (900) ؛ كتابة رقمية (12 ، عالية) ؛ تأخير (100) ؛ كتابة رقمية (12 ، منخفضة) ؛ تأخير ( 900) ؛)
5. من أجل أن تكون من بنات أفكارك ممتعة في القراءة ، هناك ما يسمى بالتعليقات. هذه هي التركيبات في كود البرنامج التي يتجاهلها المترجم تمامًا ولا تهم سوى الشخص الذي يقرأها. يمكن أن تكون التعليقات متعددة الأسطر أو أحادية السطر:

/ * هذا تعليق متعدد الأسطر * / // هذا سطر واحد

هذا القسم مخصص لكتب من عالم Arduino. للمبتدئين والمحترفين.

يتم تقديم جميع الكتب والمواد لأغراض إعلامية فقط ، وبعد قراءتها نطلب منك شراء نسخة رقمية أو ورقية.

برامج قراءة الكتب:

  • كتب PDF: Adobe Acrobat Reader أو PDF Reader.
  • كتب بتنسيق DJVU: أو قارئ Djvu.

موسوعة اردوينو العملية

يلخص الكتاب البيانات المتعلقة بالمكونات الرئيسية للهياكل القائمة على منصة Arduino ، وهي أكبر نسخة من ArduinoUNO حتى الآن أو العديد من النسخ المماثلة لها. الكتاب عبارة عن مجموعة من 33 فصلا تجريبيا. في كل تجربة ، يتم النظر في تشغيل لوحة Arduino بمكون أو وحدة إلكترونية محددة ، من أبسطها إلى أكثرها تعقيدًا ، وهي أجهزة متخصصة مستقلة. يقدم كل فصل قائمة بالتفاصيل اللازمة للتنفيذ العملي للتجربة. لكل تجربة ، يتم تقديم مخطط مرئي لتوصيل الأجزاء بتنسيق بيئة التطوير المتكاملة لـ Fritzing. إنه يعطي فكرة واضحة ودقيقة عن الشكل الذي يجب أن تبدو عليه الدائرة المجمعة. فيما يلي تفاصيل نظرية حول المكون أو الوحدة النمطية المستخدمة. يحتوي كل فصل على رمز تخطيطي (برنامج) بلغة Arduino المدمجة مع التعليقات.

إلكترونيات. أول طائرة كوادكوبتر. النظرية والتطبيق

يتم وصف الجوانب العملية للتصنيع الذاتي وتشغيل quadrocopters بالتفصيل. يتم النظر في جميع المراحل: من اختيار المواد الهيكلية واختيار المكونات مع تقليل التكاليف المالية إلى تعديل البرامج وإصلاحها بعد وقوع حادث. يتم الاهتمام بالأخطاء التي يرتكبها صانعو الطائرات المبتدئين في كثير من الأحيان. في شكل يمكن الوصول إليه ، يتم تقديم الأسس النظرية لتحليق الأنظمة متعددة الدوارات والمفاهيم الأساسية للعمل مع Arduino IDE. يتم تقديم وصف موجز للجهاز ومبدأ تشغيل أنظمة GPS و Glonass ، بالإضافة إلى التبديل الحديث لمصادر الطاقة على متن الطائرة وبطاريات الليثيوم بوليمر. تم وصف مبدأ التشغيل وعملية إعداد أنظمة OSD والقياس عن بعد وقناة Bluetooth اللاسلكية ووحدات الملاحة Ublox GPS الشهيرة بالتفصيل. يتم إخباره عن الجهاز ومبادئ تشغيل المستشعرات المدمجة ووحدة التحكم في الطيران. يتم تقديم التوصيات بشأن اختيار معدات FPV للمبتدئين ، ولمحة عامة عن برامج أجهزة الكمبيوتر والهواتف الذكية المستخدمة عند إعداد معدات كوادروكوبتر.

المشاريع باستخدام Arduino Controller (الإصدار الثاني)

يناقش الكتاب لوحات Arduino الرئيسية ولوحات التوسيع (الدروع) التي تضيف وظائف إلى اللوحة الرئيسية. تم وصف لغة البرمجة Arduino IDE والبيئة بالتفصيل. يتم تحليل المشاريع التي تستخدم عائلة Arduino من وحدات التحكم بعناية. هذه مشاريع في مجال الروبوتات ، إنشاء محطات الطقس ، "المنزل الذكي" ، البيع ، التلفزيون ، الإنترنت ، الاتصالات اللاسلكية (البلوتوث ، التحكم اللاسلكي).

يضيف الإصدار الثاني مشاريع التحكم الصوتي في Arduino ، والعمل مع شرائط RGB القابلة للتحكم ، والتحكم في iRobot Create على Arduino. يتم النظر في المشاريع التي تستخدم لوحة Arduino Leonardo. يتم تقديم البرامج التعليمية خطوة بخطوة للمطورين المبتدئين.

تعلم Arduino: أدوات وتقنيات السحرة التقنية

الكتاب مخصص لتصميم الأجهزة الإلكترونية على أساس منصة Arduino للمتحكم الدقيق. يوفر معلومات أساسية حول أجهزة وبرامج Arduino. تم ذكر مبادئ البرمجة في بيئة Arduino IDE المتكاملة. يوضح لك كيفية تحليل المخططات الكهربائية وقراءة أوراق البيانات واختيار الأجزاء المناسبة لمشاريعك الخاصة. يتم تقديم أمثلة على استخدام ووصف أجهزة الاستشعار المختلفة والمحركات الكهربائية ومحركات المؤازرة والمؤشرات وواجهات البيانات السلكية واللاسلكية. يسرد كل فصل المكونات المستخدمة ويقدم مخططات الأسلاك ويصف قوائم البرامج بالتفصيل. هناك روابط إلى موقع دعم المعلومات للكتاب. تركز المادة على استخدام مكونات بسيطة وغير مكلفة للتجارب في المنزل.

بداية سريعة. الشروع في العمل مع اردوينو

كتاب البدء السريع ARDUINO. الشروع في العمل يحتوي ARDUINO على جميع المعلومات للتعرف على لوحة Arduino ، بالإضافة إلى 14 تجربة عملية باستخدام مكونات ووحدات إلكترونية مختلفة.

بداية سريعة مع مجموعة اردوينو. المعرفة المكتسبة ، في المستقبل ، ستجعل من الممكن إنشاء مشاريعك الخاصة وتنفيذها بسهولة.

Arduino والمستشعرات والشبكات للاتصال بالأجهزة (الطبعة الثانية)

يتم النظر في 33 مشروعًا على أساس لوحة Arduino Microcontroller ، والتي توضح كيفية جعل الأجهزة الإلكترونية تتواصل مع بعضها البعض وتستجيب للأوامر. يوضح كيفية تغيير إعدادات مكيف الهواء في منزلك عن طريق "الاتصال به" من هاتفك الذكي ؛ كيفية إنشاء وحدات التحكم في الألعاب الخاصة بك والتي تتفاعل عبر الشبكة ؛ كيفية استخدام أجهزة الراديو التقليدية ZigBee والبلوتوث والأشعة تحت الحمراء لتلقي المعلومات لاسلكيًا من أجهزة الاستشعار المختلفة وما إلى ذلك. تعتبر لغات برمجة Arduino والمعالجة و PHP.

بعد قراءة الكتاب - "Arduino ، أجهزة الاستشعار وشبكات اتصال الجهاز" ، ستتعلم كيفية إنشاء شبكات من الأجهزة الذكية التي تتبادل البيانات وتستجيب للأوامر. الكتاب مثالي للأشخاص الذين يرغبون في وضع أفكارهم الإبداعية موضع التنفيذ. لا تحتاج إلى معرفة ومهارات تقنية خاصة في مجال الإلكترونيات ، فكل ما تحتاجه لبدء تنفيذ المشاريع هو كتاب وأفكار ومجموعة غير مكلفة مع وحدة تحكم Arduino وبعض وحدات الشبكة وأجهزة الاستشعار.

أساسيات اردوينو

Arduino هو متحكم دقيق مفتوح المصدر مبني على لوحة دائرة كهربائية واحدة قادرة على تلقي المدخلات الحسية من بيئتها والتحكم في الأشياء المادية التفاعلية. إنها أيضًا بيئة تطوير تتيح لك كتابة برنامج على السبورة ، وهي مبرمجة بلغة برمجة Arduino. أصبح Arduino أكثر منصات التحكم الدقيقة شيوعًا ، وبالتالي يتم تطوير مئات المشاريع باستخدامه ، من المستويات الأساسية إلى المستويات المتقدمة.

سيقدم لك هذا الكتاب أولاً أهم نماذج اللوحة لعائلة Arduino. ستتعلم بعد ذلك كيفية إعداد بيئة برنامج Arduino. بعد ذلك ، ستعمل مع المدخلات والمخرجات الرقمية والتناظرية ، وإدارة الوقت بدقة ، وإنشاء اتصالات تسلسلية مع الأجهزة الأخرى في مشاريعك ، وحتى التحكم في المقاطعات لجعل مشروعك أكثر استجابة. أخيرًا ، سيتم تقديم مثال كامل من العالم الحقيقي من خلال استخدام جميع المفاهيم التي تم تعلمها حتى الآن في الكتاب. سيمكنك هذا من تطوير مشاريع المتحكم الخاص بك.

كتاب طبخ تطوير اردوينو

إذا كنت ترغب في إنشاء مشاريع برمجة وإلكترونيات تتفاعل مع البيئة ، فسيقدم لك هذا الكتاب عشرات الوصفات لإرشادك خلال جميع التطبيقات الرئيسية لمنصة Arduino. إنه مخصص لعشاق البرمجة أو الإلكترونيات الذين يرغبون في الجمع بين أفضل ما في العالمين لبناء مشاريع تفاعلية.

لوحة الكمبيوتر Arduino أحادية الشريحة صغيرة الحجم ولكنها واسعة النطاق ، ويمكن استخدامها في المشاريع الإلكترونية من الروبوتات إلى التشغيل الآلي للمنزل. أكثر الأنظمة الأساسية المدمجة شيوعًا في العالم ، يتراوح مستخدمو Arduino من أطفال المدارس إلى خبراء الصناعة ، وكلهم يدمجونها في تصميماتهم.

يشتمل كتاب Arduino Development Cookbook على وصفات واضحة ومفصلة خطوة بخطوة تمنحك مجموعة أدوات من التقنيات لإنشاء أي مشروع من مشاريع Arduino ، من البسيط إلى المتقدم. يمنحك كل فصل المزيد من اللبنات الأساسية لتطوير Arduino ، بدءًا من التعرف على أزرار البرمجة وحتى تشغيل المحركات وإدارة المستشعرات والتحكم في شاشات العرض. طوال الوقت ، ستجد النصائح والحيل لمساعدتك في استكشاف مشكلات التطوير لديك ودفع مشروع Arduino إلى المستوى التالي!

اسكتشات اردوينو: أدوات وتقنيات لبرمجة السحر

برمجة Arduino باستخدام هذا الدليل العملي ، يعد Arduino Sketches دليلًا عمليًا لبرمجة وحدة التحكم الدقيقة الشائعة بشكل متزايد والتي تجلب الأدوات إلى الحياة. يوفر هذا الكتاب ، الذي يمكن الوصول إليه لعشاق التكنولوجيا على أي مستوى ، إرشادات الخبراء حول برمجة Arduino والتدريب العملي لاختبار مهاراتك. ستجد تغطية للوحات Arduino المتنوعة ، وشروحات مفصلة لكل مكتبة قياسية ، وإرشادات حول إنشاء مكتبات من البداية بالإضافة إلى أمثلة عملية توضح الاستخدام اليومي للمهارات التي تتعلمها.

اعمل على مشاريع البرمجة المتقدمة بشكل متزايد ، واكتسب المزيد من التحكم بينما تتعرف على المكتبات الخاصة بالأجهزة وكيفية إنشاء المكتبات الخاصة بك. استفد بشكل كامل من Arduino API ، وتعلم النصائح والحيل التي ستوسع مجموعة مهاراتك. تأتي لوحة تطوير Arduino مزودة بمعالج ومآخذ مدمجة تتيح لك توصيل الأجهزة الطرفية بسرعة بدون أدوات أو جنود. إنها سهلة الإنشاء والبرمجة ولا تتطلب أجهزة متخصصة. بالنسبة للهواة ، إنه حلم تحقق خاصة وأن شعبية هذا المشروع مفتوح المصدر تلهم حتى شركات التكنولوجيا الكبرى لتطوير منتجات متوافقة.

مشاريع Arduino و LEGO

نعلم جميعًا مدى روعة LEGO ، ويزداد عدد الأشخاص الذين يكتشفون عدد الأشياء المدهشة التي يمكنك القيام بها باستخدام Arduino. في مشاريع Arduino و LEGO ، يوضح لك Jon Lazar كيفية الجمع بين اثنين من أروع الأشياء على هذا الكوكب لصنع أدوات ممتعة مثل قارئ Magic Lantern RF ، وصندوق LEGO الموسيقي المزود بأجهزة استشعار ، وحتى مجموعة قطار LEGO التي يتحكم فيها Arduino.

* تعلم أن SNOT رائع حقًا (وهذا يعني أن الأزرار ليست في المقدمة)
* شاهد التفسيرات والصور التفصيلية لكيفية انسجام كل شيء معًا
* تعرف على كيفية تناسب Arduino مع كل مشروع ، بما في ذلك التعليمات البرمجية والشروحات

سواء كنت ترغب في إثارة إعجاب أصدقائك ، أو إزعاج القطة ، أو مجرد الاسترخاء والاستمتاع بذهول إبداعاتك ، فإن مشاريع Arduino و LEGO تعرض لك فقط ما تحتاجه وكيفية تجميعه معًا.

ورشة اردوينو

Arduino عبارة عن منصة متحكم دقيقة رخيصة ومرنة ومفتوحة المصدر مصممة لتسهيل استخدام الهواة للإلكترونيات في مشاريع محلية الصنع. مع مجموعة غير محدودة تقريبًا من الوظائف الإضافية للإدخال والإخراج ، وأجهزة الاستشعار ، والمؤشرات ، والشاشات ، والمحركات ، وأكثر من ذلك ، يوفر لك Arduino طرقًا لا حصر لها لإنشاء أجهزة تتفاعل مع العالم من حولك.

في Arduino Workshop ، ستتعرف على كيفية عمل هذه الوظائف الإضافية وكيفية دمجها في مشاريعك الخاصة. ستبدأ بإلقاء نظرة عامة على نظام Arduino ولكنك ستنتقل بسرعة إلى تغطية المكونات والمفاهيم الإلكترونية المختلفة. تعزز المشاريع العملية في جميع أنحاء الكتاب ما تعلمته وتوضح لك كيفية تطبيق هذه المعرفة. مع نمو فهمك ، تزداد المشاريع تعقيدًا وتطورًا.

برمجة C للاردوينو

يعد بناء أجهزتك الإلكترونية الخاصة أمرًا ممتعًا ويساعدك هذا الكتاب على الدخول إلى عالم الأجهزة المستقلة والمتصلة. بعد مقدمة حول لوحة Arduino ، سينتهي بك الأمر بتعلم بعض المهارات لتفاجئ نفسك.

تسمح لنا الحوسبة الفيزيائية ببناء أنظمة مادية تفاعلية باستخدام البرامج والأجهزة من أجل الإحساس بالعالم الحقيقي والاستجابة له. ستوضح لك C Programming for Arduino كيفية تسخير الإمكانات القوية مثل الاستشعار وردود الفعل والبرمجة وحتى توصيل الأسلاك وتطوير الأنظمة المستقلة الخاصة بك.

تحتوي برمجة C لـ Arduino على كل ما تحتاجه لبدء توصيل الأسلاك وترميز مشروعك الإلكتروني مباشرةً. ستتعلم لغة C وكيفية ترميز عدة أنواع من البرامج الثابتة لـ Arduino ، ثم تنتقل إلى تصميم أنظمة نموذجية صغيرة لفهم كيفية التعامل مع الأزرار ومصابيح LED وشاشات الكريستال السائل ووحدات الشبكة وغير ذلك الكثير.

اردوينو للمبتدئين

يدور هذا الكتاب حول منصة Arduino ، التي أصبحت أكثر شيوعًا يومًا بعد يوم ، وبدأ جيش كامل من المجربين والهواة والمتسللين في المنزل في استخدامه لإحياء مشاريع جميلة ومجنونة تمامًا. بمساعدة Arduino ، يمكن لأي طالب في العلوم الإنسانية التعرف على أساسيات الإلكترونيات والبرمجة والبدء بسرعة في تطوير نماذجهم الخاصة دون إنفاق موارد مادية وفكرية كبيرة عليها. تجمع Arduino بين اللعب والتعلم ، مما يتيح لك إنشاء شيء جدير بالاهتمام ومثير للاهتمام تحت تأثير الاندفاع المفاجئ والخيال والفضول. تعمل هذه المنصة على تمكين الشخص المبدع في مجال الإلكترونيات ، حتى لو لم يكن يعلم عنها شيئًا! جرب واستمتع!

برمجة لوحة Arduino / Freeduino

تم النظر في برمجة لوحات Arduino / Freduino متحكم. تم وصف هيكل وعمل المتحكمات الدقيقة وبيئة برمجة Arduino والأدوات والمكونات اللازمة للتجارب. يتم النظر في أساسيات برمجة لوحات Arduino بالتفصيل: هيكل البرنامج ، والأوامر ، والمشغلين والوظائف ، وإدخال / إخراج البيانات التناظرية والرقمية. ويرافق عرض المواد أكثر من 80 مثالًا لتطوير أجهزة مختلفة: مفتاح درجة حرارة ، وساعة مدرسية ، ومقياس فولت رقمي ، ومنبه مع مستشعر إزاحة ، ومفتاح إنارة شارع ، وما إلى ذلك. لكل مشروع ، أ قائمة المكونات الضرورية ، يتم توفير مخطط الأسلاك وقوائم البرامج. يحتوي خادم FTP الخاص بالناشر على أكواد المصدر للحصول على أمثلة من الكتاب ، والأوصاف الفنية ، والبيانات المرجعية ، وبيئة التطوير ، والأدوات المساعدة ، وبرامج التشغيل.

مشاريع Arduino و Kinect

إذا كنت قد قمت ببعض أعمال الترقيع في Arduino وتساءلت عن كيفية دمج Kinect - أو العكس - فهذا الكتاب مناسب لك. سيوضح لك مؤلفو مشاريع Arduino و Kinect كيفية إنشاء 10 مشاريع إبداعية مذهلة ، من البسيط إلى المعقد. ستتعرف أيضًا على كيفية دمج المعالجة في تصميم مشروعك - وهي لغة تشبه إلى حد بعيد لغة Arduino.

تم تصميم المشاريع العشرة بعناية للبناء على مهاراتك في كل خطوة. بدءًا من Arduino و Kinect المكافئ لـ "Hello، World" ، سيأخذك المؤلفون عبر مجموعة متنوعة من المشاريع التي تعرض نطاقًا كبيرًا من الاحتمالات التي تنفتح عندما يتم الجمع بين Kinect و Arduino.

مراقبة الغلاف الجوي باستخدام Arduino

يبني صناع الأجهزة في جميع أنحاء العالم أجهزة منخفضة التكلفة لمراقبة البيئة ، ومن خلال هذا الدليل العملي ، يمكنك ذلك أيضًا. من خلال البرامج التعليمية الموجزة والرسوم التوضيحية والإرشادات الواضحة خطوة بخطوة ، ستتعلم كيفية إنشاء أدوات لفحص جودة غلافنا الجوي باستخدام Arduino والعديد من أجهزة الاستشعار غير المكلفة.

اكتشف الغازات الضارة وجزيئات الغبار مثل الدخان والضباب الدخاني والضباب الجوي العلوي - وهي مواد وظروف غالبًا ما تكون غير مرئية لحواسك. ستكتشف أيضًا كيفية استخدام الطريقة العلمية لمساعدتك على تعلم المزيد من اختبارات الغلاف الجوي.

* احصل على السرعة في Arduino باستخدام برايمر إلكتروني سريع
* بناء مستشعر غاز التروبوسفير للكشف عن أول أكسيد الكربون وغاز البترول المسال والبيوتان والميثان والبنزين والعديد من الغازات الأخرى
* إنشاء مقياس ضوئي LED لقياس مقدار موجات الضوء الأزرق والأخضر والأحمر للشمس التي تخترق الغلاف الجوي
* قم ببناء كاشف حساسية LED - واكتشف أطوال موجات الضوء التي يستقبلها كل مصباح LED في مقياس الضوء الخاص بك
* تعلم كيف يتيح لك قياس الأطوال الموجية للضوء تحديد كمية بخار الماء والأوزون والمواد الأخرى في الغلاف الجوي

دليل إتقان اردوينو

المنشور هو ترجمة روسية لإحدى الوثائق المتعلقة بالعمل مع مجموعة ARDX (Starter Kit for Arduino) ، المصممة للتجارب مع Arduino. توضح الوثائق 12 مشروعًا بسيطًا تركز على التعارف الأولي بوحدة Arduino.

الغرض الرئيسي من هذه المجموعة هو الحصول على وقت ممتع ومفيد. وإلى جانب ذلك - لإتقان مجموعة متنوعة من المكونات الإلكترونية من خلال تجميع أجهزة صغيرة وبسيطة ومثيرة للاهتمام. تحصل على جهاز يعمل وأداة تسمح لك بفهم مبدأ التشغيل.

موسوعة كبيرة كهربائي

الكتاب الأكثر اكتمالا حتى الآن ، والذي ستجد فيه الكثير من المعلومات المفيدة ، بدءًا من الأساسيات. يكشف الكتاب عن جميع المشاكل الرئيسية التي قد تواجهك عند العمل بالكهرباء والأجهزة الكهربائية. وصف أنواع الكابلات والأسلاك وتركيب وإصلاح الأسلاك الكهربائية وأكثر من ذلك بكثير.

يكشف كتاب "الموسوعة الكبرى للكهربائي" عن جميع المشاكل الرئيسية التي قد تواجهها عند العمل بالكهرباء والمعدات الكهربائية. وصف أنواع الكابلات والأسلاك وتركيب وإصلاح الأسلاك الكهربائية وأكثر من ذلك بكثير. سيكون هذا الكتاب مرجعًا مفيدًا لكل من أخصائي الكهرباء والحرفي المنزلي.

سيكون هذا الكتاب مرجعًا مفيدًا لكل من أخصائي الكهرباء والحرفي المنزلي.

مفكرة اردوينو

يجب أن يُنظر إلى هذا الكمبيوتر الدفتري على أنه دليل مفيد وسهل الاستخدام لهيكل الأوامر وبناء جملة لغة برمجة Arduino. لتبسيط الأمر ، تم إجراء بعض الاستثناءات لتحسين الدليل عند استخدامه كمصدر إضافي للمعلومات للمبتدئين - إلى جانب مواقع الويب والكتب والندوات والفصول الدراسية الأخرى. يهدف هذا الحل إلى التأكيد على استخدام Arduino للمهام المستقلة ، وعلى سبيل المثال ، يلغي الاستخدام الأكثر تعقيدًا للمصفوفات أو استخدام اتصال تسلسلي.

بدءًا من وصف بنية برنامج Arduino C ، يصف هذا الكمبيوتر الدفتري بنية العناصر الأكثر شيوعًا في اللغة ويوضح استخدامها في الأمثلة ومقتطفات التعليمات البرمجية. يحتوي دفتر الملاحظات على أمثلة لوظائف جوهر مكتبة Arduino ، ويقدم الملحق أمثلة على الدوائر والبرامج الأولية.

واجهات تناظرية من ميكروكنترولر

هذا المنشور هو دليل عملي لاستخدام الواجهات المختلفة لتوصيل الأجهزة الطرفية التناظرية بأجهزة الكمبيوتر والمعالجات الدقيقة والميكروكونترولر.

تم الكشف عن تفاصيل استخدام واجهات مثل I2C و SPI / Microware و SMBus و RS-232/485/422 وحلقة التيار 4-20 مللي أمبير وما إلى ذلك. تم تقديم نظرة عامة على عدد كبير من أجهزة الاستشعار الحديثة: درجة الحرارة ، البصري ، CCD ، المغناطيسية ، مقاييس الإجهاد ، إلخ. موصوفة وحدات التحكم ، ADCs و DACs بالتفصيل ، عناصرها - UVH ، ION ، برامج الترميز ، الترميز.

يتم النظر في المحركات - المحركات وأجهزة التحكم في درجة الحرارة - وقضايا التحكم فيها كجزء من أنظمة التحكم الآلي بأنواعها المختلفة (الترحيل ، النسبي و PID). الكتاب مزود برسوم توضيحية تمثل بوضوح ميزات الأجهزة والبرامج لاستخدام عناصر التكنولوجيا التناظرية والرقمية. سيكون موضع اهتمام ليس فقط هواة الراديو المبتدئين ، ولكن أيضًا للمتخصصين من ذوي الخبرة في العمل مع المعدات التناظرية والرقمية ، وكذلك طلاب الكليات والجامعات التقنية.

إرشادات لاستخدام أوامر AT لأجهزة مودم GSM / GPRS

يوفر هذا الدليل وصفًا تفصيليًا للمجموعة الكاملة من أوامر AT للعمل مع أجهزة مودم Wavecom. يتم إعطاء أوامر AT خاصة للعمل مع بروتوكولات مكدس IP المطبقة في البرامج في أجهزة مودم Wavecom.

يستهدف الكتاب المطورين الذين ينشئون برامج وتطبيقات برامج ثابتة تعتمد على منتجات Wavecom. يوصى أيضًا بهذا الدليل للمهندسين المسؤولين عن تشغيل الأنظمة لأغراض مختلفة ، باستخدام شبكات GSM كقناة لنقل البيانات. كتاب مرجعي ممتاز للطلاب الذين يستخدمون موضوع نقل البيانات في شبكات GSM في ورقة مصطلحاتهم أو أطروحتهم.

أخبرنا عنا

رسالة

إذا كانت لديك خبرة في العمل مع Arduino ولديك بالفعل وقت للإبداع ، فإننا ندعو الجميع ليصبحوا مؤلفي مقالات منشورة على بوابتنا. يمكن أن تكون دروسًا وقصصًا حول تجاربك مع Arduino. وصف أجهزة الاستشعار والوحدات النمطية المختلفة. نصائح وإرشادات للمبتدئين. اكتب مقالاتك وانشرها في.