المجلة · بأردوينو
اردوينو زيرو بورد

أصبحت منصة Arduino شائعة لتطوير المشاريع الإلكترونية. لوحات Arduino سهلة الاستخدام ، وبرمجتها سهلة ، حتى للمبتدئين. لوحة Arduino Zero هي لوحة قوية توفر ميزات متقدمة تجعلها تبرز من اللوحات الأخرى في عائلة Arduino. هذه المقالة هي نظرة عامة…
أصبحت منصة Arduino شائعة لتطوير المشاريع الإلكترونية. لوحات Arduino سهلة الاستخدام ، وبرمجتها سهلة ، حتى للمبتدئين. لوحة Arduino Zero هي لوحة قوية توفر ميزات متقدمة تجعلها تبرز من اللوحات الأخرى في عائلة Arduino. هذه المقالة هي نظرة عامة على لوحة Arduino Zero ومواصفاتها وميزاتها وبيئة البرمجة والتطبيقات.
ما هو Arduino Zero
لوحة Arduino Zero عبارة عن لوحة تعتمد على Atmel SAMD21 ، وهي أول لوحة Arduino 32 بت. تم تقديمه في عام 2015 وهو مصمم لتوفير منصة قوية للمطورين لبناء تطبيقات إنترنت الأشياء. اللوحة متوافقة مع برنامج Arduino (IDE) ، ويمكن برمجتها باستخدام نفس بنية Arduino مثل لوحات Arduino الأخرى. إنها لوحة متعددة الاستخدامات يمكن استخدامها لمجموعة واسعة من التطبيقات ، بما في ذلك الروبوتات والأتمتة والمزيد.

مواصفات Arduino Zero
تتميز لوحة Arduino Zero بالمواصفات التالية:
| متحكم | ATSAMD21G18, 32-Bit ARM® Cortex® M0+ |
| جهد التشغيل | 3.3V |
| دبابيس I / O رقمية | 20 |
| دبابيس PWM | 3, 4, 5, 6, 8, 9, 10, 11, 12, 13 |
| UART | 2 (Native and Programming) |
| دبابيس إدخال تناظرية | 6, 12-bit ADC channels |
| دبابيس الإخراج التناظرية | 1, 10-bit DAC |
| المقاطعات الخارجية | All pins except pin 4 |
| تيار مستمر لكل I / O Pin | 7 mA |
| ذاكرة متنقله | 256 KB |
| SRAM | 32 KB |
| EEPROM | None. See documentation |
| LED_BUILTIN | 13 |
| سرعة الساعة | 48 MHz |
| طول | 68 mm |
| عرض | 53 mm |
| وزن |
12 gr |
ميزات Arduino Zero
تقدم لوحة Arduino Zero العديد من الميزات التي تجعلها متعددة الاستخدامات وقوية للغاية:
- 32-bit ARM Cortex-M0+ core
- It has a 256 KB Flash memory and a 32 KB of SRAM
- 12-bit ADC and 12 PWM outputs
- USB 2.0 Host/Device Port
- 3.3V logic level
- EDBG debugging interface
لغة البرمجة لاردوينو زيرو
لغة البرمجة المستخدمة لبرمجة لوحة Arduino Zero هي C ++. يمكن برمجة لوحة Arduino Zero باستخدام برنامج Arduino (IDE) ، والمتوفر لأنظمة Windows و macOS و Linux. يوفر البرنامج محرر رمز ومترجم وشاشة تسلسلية ، مما يجعل من السهل كتابة وتجميع وتصحيح التعليمات البرمجية.
برمجة Arduino Zero Board
يختلف تحميل الكود إلى Arduino Zero عن لوحات Arduino العادية. نظرًا لأن Arduino Zero يعتمد على SAMD21 الذي يختلف عن متحكم AVR ، حيث أن معظم لوحات Arduino الشهيرة تعتمد على هيكل AVR.
يأتي Arduino Zero مع منفذي UART ، أحدهما أصلي والآخر هو منفذ برمجة. لتحميل الرسومات على اللوحة ، يوصى باستخدام منفذ البرمجة بدلاً من المنفذ الأصلي. ويرجع ذلك إلى قدرتها على محو البيانات الموجودة على الشريحة بمجرد تحميل الكود.

- منفذ البرمجة: في Arduino Zero ، يستخدم هذا المنفذ EDBG ويمكنه برمجة اللوحة باستخدام USB-to-SWD. لبرمجة Arduino Zero باستخدام هذا المنفذ ، حدده من قسم منفذ IDE وقم بتوصيل هذا المنفذ بجهاز الكمبيوتر باستخدام كابل USB. كمرجع ، هذا المنفذ أقرب إلى مقبس التيار المباشر كما هو موضح في الصورة أعلاه.
- المنفذ الأصلي: المنفذ الأصلي متصل مباشرة بالميكروكونترولر SAMD21 على اللوحة. لاستخدام المنفذ الأصلي ، حدده من قسم منفذ IDE وبعد ذلك استخدم كبل USB لبناء اتصال Arduino Zero بالكمبيوتر باستخدام هذا المنفذ. يقع هذا المنفذ على الجانب الأيسر من زر إعادة الضبط كما هو موضح في الصورة أعلاه.
مثل اللوحات الأخرى التي تعتمد على avrdude لتحميل الكود إلى متحكم دقيق. يعتمد Arduino Zero على bossac ويستخدم منفذ البرمجة Arduino Zero openOCD.
فوائد ARM الأساسية
يعتمد Arduino Zero على نواة ARM 32 بت بينما تستخدم المتحكمات الدقيقة الأخرى بنية AVR 8 بت. نواة ARM أكثر تقدمًا في العمل من هيكل AVR. فيما يلي بعض النقاط البارزة الرئيسية:
- يحتوي قلب ARM على ساعة وحدة المعالجة المركزية بسرعة 48 ميجاهرتز.
- يحتوي Arduino zero ARM core على وحدة تحكم DMA ذات 12 قناة تساعد وحدة المعالجة المركزية في المهام التي تتطلب ذاكرة كثيفة.
- يمكن لـ Arduino Zero التعامل مع بيانات 4 بايت بسهولة بالغة باستخدام نواة ARM 32 بت على مدار ساعة وحدة المعالجة المركزية الواحدة.
- يحتوي على RTC 32 بت مع دعم على مدار الساعة / التقويم.
- يأتي مع مولد CRC 32 بت.
- يحتوي قلب ARM على واجهة ثنائية القناة (I2S).
- يحتوي على وحدة تحكم تعمل باللمس المحيطية (PTC).
Atmel جزءا لا يتجزأ من المصحح
تتضمن لوحة Arduino Zero شريحة Atmel Embedded Debugger (EDBG) التي توفر مجموعة من وظائف التصحيح والبرمجة.
يمكن استخدام شريحة EDBG الموجودة على لوحة Arduino Zero لبرمجة وتصحيح اللوحة عبر منفذ البرمجة ، وهو أقرب منفذ لمقبس طاقة التيار المستمر. يستخدم منفذ البرمجة شريحة EDBG كمحول USB-to-SWD (Serial Wire Debug) ، مما يسمح لك ببرمجة وتصحيح متحكم SAMD21 باستخدام بروتوكول SWD.
بالإضافة إلى ميزات البرمجة وتصحيح الأخطاء ، توفر شريحة EDBG الموجودة على لوحة Arduino Zero أيضًا واجهة منفذ COM افتراضية ، مما يسمح لك بالتواصل مع اللوحة عبر منفذ USB الأصلي ، وهو أقرب منفذ إلى زر إعادة الضبط. يمكن استخدام هذه الواجهة لبروتوكولات مختلفة في Arduino Zero مثل UART و SPI و I2C.
طاقة
يحتوي Arduino Zero على مصدرين مختلفين للطاقة تمامًا مثل Arduino Uno:
- موصل USB
- مصدر طاقة خارجي
اللوحة ذكية بما يكفي لتحديد مصدر الطاقة تلقائيًا ، مما يسهل عليك التبديل بين أوضاع الطاقة.
مصادر الطاقة الخارجية لاردوينو زيرو
يمكن أن تأتي مصادر الطاقة الخارجية لـ Arduino Zero من محول أو بطارية AC-to-DC. لتوصيل مصدر طاقة خارجي ، يمكن استخدام قابس موجب المركز مقاس 2.1 مم مع مقبس أسطواني Arduino Zero DC. يمكننا أيضًا توصيل مصادر الطاقة الخارجية مباشرةً بدبوس VIN كما نفعل في Arduino Uno. يمنحك هذا المرونة لاختيار مصدر الطاقة الأنسب لمشروعك.
نطاق الجهد لاردوينو صفر
جهد Arduino Zero الذي يمكن أن يستغرقه كما هو مذكور في ورقة البيانات الخاصة به يتراوح بين 6 إلى 20 فولت ، ولكن يوصى بعدم استخدام أكثر من 12 فولت حيث يمكن أن يتسبب في ارتفاع درجة حرارة منظم الجهد نتيجة لفقدان الجهد الزائد أثناء التحويل إلى 3.3 فولت .
Operating outside of this range could result in damage to the board or underperformance of your project. It is important to note that the voltage of the external power source will affect the board’s performance, so it’s essential to choose the right power source for your project.
دبابيس الطاقة اردوينو صفر
يحتوي Arduino Zero على مجموعة متنوعة من مصادر الطاقة. يمكن تشغيله باستخدام المصادر المختلفة التالية:
دبوس VIN: تشغيل المجلس
عند استخدام مصدر طاقة خارجي لتشغيل لوحة Arduino Zero ، يكون دبوس VIN في متناول يديك. هذا الدبوس مسؤول عن استقبال مدخلات الجهد إلى اللوحة. بالإضافة إلى ذلك ، إذا كنت تزود الجهد من خلال مقبس الطاقة ، فيمكنك الوصول إليه عبر هذا الدبوس أيضًا.
5V دبوس: إخراج الجهد المنظم
تحتوي لوحة Arduino Zero على منظم مدمج ينتج 5 فولت منظم من خلال دبوس 5 فولت. يمكن توصيل Arduino Zero مباشرة بـ 7 فولت إلى 12 فولت باستخدام مقبس DC أو دبوس VIN. ثم يتم تمرير هذا الجهد من خلال منظم يحوله إلى 5 فولت. يمكن استخدام 5 فولت كمصدر طاقة لأجهزة استشعار التشغيل 5 فولت. ومع ذلك ، احرص على عدم توفير الجهد عبر دبابيس 5V أو 3.3V حيث يمكن أن تتجاوز المنظم وتتسبب في تلف اللوحة.
3.3 فولت دبوس: منظم
يولد المنظم الموجود على اللوحة إمدادًا للوحة بجهد 3.3 فولت. يتم إعطاء هذا الجهد 3.3 فولت للأجهزة الطرفية الموجودة على متن الطائرة بما في ذلك متحكم SAMD21. يمكن أيضًا إخراج هذا 3.3 فولت من دبوس 3.3 فولت الموجود على اللوحة والحد الأقصى لمقدار التيار الذي يمكننا استخلاصه من دبوس Arduino Zero 3.3V هو 800 مللي أمبير.
GND Pin: تأريض اللوح
تحتوي لوحة Zero على العديد من المسامير الأرضية (GND) التي تساعد على إنشاء اتصال أرضي. يمكنك استخدامها لتأريض المكونات التي تقوم بتوصيلها باللوحة.
دبوس IOREF: مرجع الجهد
يوفر دبوس IOREF مرجع الجهد لتشغيل وحدة التحكم الدقيقة. يساعد هذا الدبوس لوحة Arduino Zero على اختيار أفضل مصدر طاقة لعملها. كما أنه يمكّن مترجم الجهد الذي يساعد لوحة Arduino على العمل مع 3.3 فولت.
ذاكرة
توزيع ذاكرة Arduino Zero (SAMD21) كالتالي:
| Memory | Value |
| Flash Memory | 256 KB |
| SRAM | 32 KB |
| EEPROM | 16 KB |
المدخلات والمخرجات
يحتوي Arduino Zero على إجمالي 20 منفذ إدخال / إخراج للأغراض العامة. فيما يلي بعض مواصفات دبابيس GPIO هذه:
- يمكن التحكم في دبابيس Arduino Zero باستخدام وظائف برمجة Arduino مثل pinMode () و digitalWrite () و digitalRead ().
- دبابيس Arduino Zero PWM هي 3 ، 4 ، 5 ، 6 ، 8 ، 9 ، 10 ، 11 ، 12 ، 13. للوصول إلى هذه المسامير ، يتم استخدام وظيفة analogWrite ().
- كل هذه المسامير تعمل عند 3.3 فولت.
- كل من هذه المسامير لها سعة قصوى لتيار غرق تصل إلى 7 مللي أمبير. تحتوي هذه المسامير أيضًا على مقاوم سحب داخلي يبلغ 20-50 كيلو أوم. يتم فصل هذه المقاومات افتراضيًا في Arduino Zero.
فيما يلي بعض دبابيس Arduino Zero الإضافية ذات الوظيفة المتخصصة:
- Analog Inputs: A0 to A5 (6 channels). Each of these pins have 12 bits of resolution. By default, reference is set from ground to 3.3V, however the upper limit for ADC can be adjusted using the analogReference() function.
- Digital Input Output Pins: 0 to 13.
- PWM Output Pins: 0 to 13.
- SPI Interface: SPI MOSI (pin 11), SPI MISO (pin 12), SPI SCK (pin 13).
- I2C Interface: SDA (pin 20) and SCL (pin 21).
- UART Interface: RX (pin 0) and TX (pin 1).
- Native USB Interface: Native USB port (programming port).
- DAC Output: DAC0 and DAC1.
- SWD Debugging Interface: SWDIO and SWCLK.
- RESET Pin: RESET pin.
- External Interrupts: It is available on all Arduino Zero pin except pin 4.
- TWI: SDA/SCL pin. It has support for TWI communication. To establish TWI, an Arduino Wire library is used.
- AREF: Reference voltage pin for analog values. Can be controlled using the analogReference() function.
- Reset: This is reset for a line or board. It can reset the microcontroller by bringing its line to LOW.
لاحظ أن بعض المسامير أعلاه لها وظيفة مزدوجة أيضًا. على سبيل المثال ، يمكن استخدام الدبابيس 0 و 1 كإدخال / إخراج رقمي أو كواجهة UART. وبالمثل ، يمكن استخدام المسامير 11 و 12 و 13 كواجهة SPI أو كإدخال / إخراج رقمي.
خاتمة
لوحة Arduino Zero هي لوحة قوية ومتعددة الاستخدامات ومثالية للمبتدئين والمستخدمين المتقدمين. بفضل ميزاتها المتقدمة وتوافقها مع برنامج Arduino (IDE) ومجموعة واسعة من التطبيقات ، تعد لوحة Arduino Zero خيارًا رائعًا لأي شخص يتطلع إلى إنشاء مشاريع إلكترونية. باتباع الخطوات الموضحة في هذا الدليل ، يمكنك بسهولة البدء باستخدام لوحة Arduino Zero والبدء في بناء مشاريعك الخاصة.
Blog.commentsTitle
Blog.commentsEmpty
