لقد اكتسب تطوير الأنظمة أو المشاريع المدمجة باستخدام وحدات التحكم الدقيقة شعبية هائلة في الآونة الأخيرة. إن اختيار البيئة المناسبة يمكن أن يحدث فرقًا بين سير العمل الفعال أو التجربة المحبطة. وهنا يأتي دوره بيئة تطوير متكاملة للنظام الأساسي، وهي منصة أحدثت ثورة في كيفية إدارة المطورين لتكوينات الأجهزة والبرامج المختلفة في نظام بيئي واحد.
إذا سئمت من وجود برامج تطوير متعددة لأنواع مختلفة من اللوحات، أو إذا كنت بحاجة إلى بيئة تسمح لك بالعمل بسرعة وتخصيص، فقد يكون PlatformIO هو الحل الذي تبحث عنه. أدناه، نخبرك بكل ما تحتاج لمعرفته حول هذه الأداة القوية.
ما هو IDE الخاص بـ PlatformIO؟
بيئة تطوير متكاملة للنظام الأساسي هي بيئة تطوير متكاملة مصممة لتسهيل العمل في المشاريع ذات الأنظمة المدمجة وإنترنت الأشياء (إنترنت الأشياء). خصوصية هذه المنصة هي أنها تسمح لك بالعمل ميكروكنترولر متعددة ومنصات التطوير، كلها من مكان واحد، مما يبسط الإدارة إلى حد كبير.
ومن أبرز ميزاته إمكانية العمل مع أكثر من 20 إطارًا (اردوينو، mbed، ESP-IDF، STM32Cube، الخ)، مقبض أكثر من 700 مجلس تطوير ودعم آلاف المكتبات. كل هذا يجعله واحدًا من أفضل الخيارات لأي شخص يعمل في مشاريع إنترنت الأشياء أو مع وحدات التحكم الدقيقة من مختلف الشركات المصنعة.
المزايا على IDEs الأخرى
على عكس بيئات التطوير المتكاملة الأخرى مثل Arduino الكلاسيكي، يتميز PlatformIO بتقديم ميزات تسهل العمل مع المشاريع الأكثر تقدمًا:
- إكمال الكودمما يوفر عليك الكثير من الوقت عند البرمجة.
- إدارة أفضل للمشاريع المعقدة من خلال نظام المجلدات المنظمة للكود المصدر والمكتبات وملفات التكوين.
- التصحيح المتكامل، والذي يسمح لك بتصحيح أخطاء البرنامج في الوقت الفعلي، طالما أن اللوحة المستخدمة تدعمه.
علاوة على ذلك، فإن تثبيت PlatformIO IDE بسيط جدًا ويمكن دمجه مع بيئات مثل كود Visual Studio أو Atom، مما يزيد من تنوعها.
تثبيت PlatformIO: خطوة بخطوة
يعد تثبيت PlatformIO عملية بسيطة إلى حد ما، ولن تستغرق أكثر من بضع دقائق. كل ما تحتاجه هو تثبيت محرر التعليمات البرمجية Visual Studio Code أو Atom أولاً. بمجرد حصولك عليه، اتبع الخطوات التالية:
- افتح محرر التعليمات البرمجية الخاص بك (Visual Studio Code أو Atom).
- انتقل إلى قسم المكونات الإضافية أو الإضافات وابحث عن "PlatformIO IDE".
- قم بتثبيته وانتظر حتى تنتهي العملية.
عند تثبيته، يتم استدعاء علامة تبويب جديدة الصفحة الرئيسية للمكتب الإعلامي حيث يمكنك إدارة وإنشاء وتجميع مشاريعك.
إنشاء مشروع جديد
بمجرد تثبيت PlatformIO، يصبح إنشاء مشروع جديد أمرًا بسيطًا للغاية. من الصفحة الرئيسية للمكتب الإعلامي، حدد الخيار مشروع جديد. سوف تحتاج فقط إلى ملء ثلاثة حقول:
- اسم المشروع: اختر أي اسم يصف مشروعك.
- مجلس: حدد لوحة التطوير التي ستستخدمها. يمكنك البحث من بين أكثر من 700 منتج متاح، مثل Arduino Nano أو ESP32 أو STM32.
- الإطار: الإطار الذي ستستخدمه. إذا كنت معتادًا على Arduino، يمكنك اختيار ذلك، ولكن تتوفر أيضًا خيارات أخرى مثل mbed أو ESP-IDF.
بمجرد تكوين المشروع، سيقوم PlatformIO بتنزيل الأدوات الضرورية تلقائيًا، مثل المكتبات والتكوينات المحددة للوحة المحددة.
هيكل المشروع في PlatformIO
عند إنشاء مشروع جديد، يقوم PlatformIO بإنشاء بنية ملفات ومجلدات منظمة تجعل الإدارة سهلة. بعض العناصر الأساسية هي:
.pio/
: المجلد الذي يتم فيه حفظ ملفات التجميع المتوسطة والملفات المؤقتة.include/
: يتم تخزين ملفات الرأس هنا (.h).lib/
: مجلد مخصص للمكتبات الخاصة بالمشروع.src/
: يتم حفظ كود المصدر (الملفات) هنا .CPP).platformio.ini
: ملف التكوين الرئيسي، الذي يشير إلى المكتبات التي سيتم استخدامها، وتكوين المنفذ التسلسلي، من بين تفاصيل أخرى.
تجميع وتنفيذ المشروع
إحدى المزايا الرائعة لـ PlatformIO هي السهولة التي يمكنك بها تجميع برامجك وتحميلها على لوحة التطوير. على عكس بيئات التطوير المتكاملة (IDEs) الأخرى، يقوم PlatformIO تلقائيًا بتكوين كل ما تحتاجه. عند إنشاء مشروع، يقوم PlatformIO تلقائيًا بإنشاء المجلدات الضرورية وتنزيل أي تبعيات إضافية.
لتجميع المشروع وتحميله، ما عليك سوى النقر فوق الرموز المقابلة الموجودة في الشريط السفلي لبرنامج Visual Studio Code أو Atom. تشبه هذه الرموز إلى حد كبير تلك الموجودة في Arduino IDE، مع اختلاف أنه في PlatformIO يمكنك الوصول إلى وظائف أكثر تقدمًا مثل تصحيح الأخطاء.
إدارة المكتبة
في PlatformIO، تتم إدارة المكتبة بكفاءة باستخدام مدير المكتبة المدمج. وهذا يسهل إلى حد كبير تركيب مكتبات جديدة دون التأثير على المشاريع الأخرى، وهو الأمر الذي يمكن أن يؤدي إليه في Arduino IDE إلى عدم التوافق بين الإصدارات المختلفة من المكتبات.
بالإضافة إلى ذلك، يمكن أن يكون لديك إصدارات مختلفة من نفس المكتبة لمشاريع منفصلة. يتم حفظ المكتبات في المجلد libdeps داخل كل مشروع، وإدارتها مستقلة بين المشاريع.
تصحيح الأخطاء في الوقت الحقيقي
الميزة الرئيسية الأخرى لـ PlatformIO هي القدرة على ذلك التصحيح في الوقت الحقيقي برامجك. إذا كانت لوحة التطوير الخاصة بك تدعم ذلك، فستتمكن من تعيين نقاط التوقف وتحليل حالة المشروع مباشرة في الكود، مما يسمح لك بتحسين الأخطاء وإصلاحها بكفاءة عالية.
العمل مع لوحات مختلفة
أحد الأسباب الرئيسية وراء نجاح PlatformIO هو قدرته على العمل مع عدد لا يصدق من لوحات التطوير: أكثر من 700 مدعومة رسميًا. وهذا يشمل كل شيء من الشعبية لوحات اردوينو، إلى أكثرها تقدمًا مثل تلك المعتمدة على ARM أو ESP32.
يسمح لك هذا التنوع بتوحيد جميع احتياجات التطوير الخاصة بك في نفس البيئة، مما يلغي الحاجة إلى تغيير البرنامج في كل مرة تقوم فيها بتغيير نوع وحدة التحكم الدقيقة.