- المواد المطلوبة
- مخطط الرسم البياني
- تحميل أداة تحميل Maple Boot إلى لوحة تطوير STM32
- تحضير Arduino IDE وتثبيت برامج التشغيل
- برمجة STM32 (Blue Pill) مباشرة من خلال منفذ USB
و مجلس التنمية STM32 الإسكان STM32F103C8 متحكم هو الحصول بفضل شعبية متزايدة لبنية ARM اللحاء M3، فإنه لديه عالية السرعة التشغيلية وخيارات أكثر هامشية. منذ ذلك الحين أيضًا ، يمكن برمجة هذه اللوحة بسهولة باستخدام Arduino IDE ، فقد أصبحت خيارًا مفضلًا للعديد من الهواة والمهندسين للنماذج الأولية السريعة.
في برنامجنا التعليمي السابق تعلمنا أساسيات مجلس تطوير STM32 وقمنا أيضًا ببرمجته ليومض مصباح LED. ولكن كان هناك عيب كبير معها. من أجل برمجة المجلس ، استخدمنا وحدة مبرمج FTDI واضطررنا أيضًا إلى تبديل رابط التمهيد 0 بين وموضع واحد أثناء تحميل واختبار رمز ، وهي بالتأكيد مهمة شاقة. كما تم ترك منفذ USB الصغير في لوحة التطوير غير مستخدم تمامًا. والسبب في ذلك هو أنه عند شراء لوحة تطوير STM32 ، فإنها لا تأتي مع محمل إقلاع جاهز من Arduino ، وبالتالي لن يتم اكتشاف اللوحة بواسطة جهاز الكمبيوتر الخاص بك عند توصيله عبر USB.
نأمل أن يكون هناك محمل إقلاع تجريبي تم تطويره بواسطة LeafLabs للوحات Maple الصغيرة. يمكن وميض محمل التمهيد هذا في STM32 مرة واحدة وبعد ذلك يمكننا استخدام منفذ USB للوحة STM32 مباشرة لتحميل البرامج تمامًا مثل أي لوحات Arduino أخرى. ومع ذلك ، لا يزال مُحمل التمهيد هذا في مرحلة التطوير في وقت توثيق هذا البرنامج التعليمي ولا يُنصح به للتطبيقات الهامة. قبل الإجراءات مع هذا البرنامج التعليمي ، تأكد من قراءة البرنامج التعليمي السابق لفهم أساسيات هذه اللوحة بما في ذلك تفاصيل حول المواصفات والمنافذ.
المواد المطلوبة
- STM32 - (BluePill) مجلس تطوير (STM32F103C8)
- مبرمج FTDI
- اللوح
- توصيل الأسلاك
- كمبيوتر محمول مع إنترنت
مخطط الرسم البياني
لبرمجة لوحة STM32 Blue Pill مباشرة من خلال منفذ USB ، نحتاج أولاً إلى وميض محمل التمهيد Maple في MCU. للقيام بذلك ، نحتاج إلى استخدام لوحة تسلسلية FTDI. هذه اللوحة متصلة بدبوس Rx و Tx في STM32 كما هو موضح أدناه.
يتم توصيل دبوس Vcc للوحة FTDI بدبوس STM32 5V للطاقة باللوحة. الأرض متصلة بأرض STM32. يتم توصيل دبوس Rx و Tx للوحة FTDI بالدبوس A9 و A10 من STM32 على التوالي. حيث يكون A9 هو Tx pin الخاص بـ STM32 MCU و A10 هو دبوس Rx.
تأكد من تعيين دبوس وصلة التمهيد 0 على اللوحة على 1 (وضع البرمجة) أثناء تحميل أداة تحميل التمهيد. بمجرد وميض أداة تحميل التمهيد ، يمكن إعادة هذا الدبوس إلى الوضع الأولي (وضع التشغيل).
تحميل أداة تحميل Maple Boot إلى لوحة تطوير STM32
بمجرد إجراء الاتصال أعلاه ، قم بتوصيل لوحة FTDI بجهاز الكمبيوتر الخاص بك واتبع الخطوات لتشغيل أداة تحميل التمهيد في STM32.
الخطوة 1: يتعين علينا تنزيل ثنائيات ملف برنامج boot loader (ملف bin) من صفحة github. هناك العديد من إصدارات ملف bin ، بالنسبة للوحة Blue Pill ، استخدم رابط github هذا وانقر على زر التنزيل لتنزيل ملف bin.
الخطوة 2: بعد ذلك ، يتعين علينا تنزيل برنامج STM Flash loader وتثبيته لفلاش ملف bin الذي تم تنزيله إلى STM32. انقر على هذا الرابط للدخول إلى موقع ST وانتقل إلى أسفل وانقر على الحصول على البرنامج
الخطوة 3: لتنزيل البرنامج ، يجب عليك إدخال عنوان بريدك الإلكتروني وسيتم إرسال رابط التنزيل إلى بريدك الإلكتروني. ثم اتبع الرابط للعودة إلى موقع الويب وانقر فوق الحصول على البرنامج مرة أخرى وسيبدأ التنزيل. نعم ، هذا محبط بعض الشيء ولكن هذه هي الطريقة التي يجب أن يتم بها ذلك. لا تنس التحقق من مجلد البريد العشوائي بحثًا عن البريد الإلكتروني ، ففي بعض الأحيان يستغرق وصول البريد الإلكتروني بضع دقائق.
الخطوة 4: بمجرد تنزيل البرنامج ، تأكد من توصيل لوحة STM32 بجهاز الكمبيوتر الخاص بك من خلال لوحة FTDI ثم قم بتشغيل البرنامج. سيكتشف البرنامج تلقائيًا منفذ COM إذا لم يستخدم مدير الجهاز وتأكد من تحديد رقم منفذ COM الصحيح. في حالتي هو COM4. اترك باقي الإعداد كما هو موضح أدناه.
الخطوة 5: انقر فوق الزر "التالي" مرتين وسيقوم البرنامج تلقائيًا مرة أخرى باكتشاف تفاصيل اللوحة وعرضها كما هو موضح أدناه. اللوحة التي نستخدمها هي STM32F1 بذاكرة فلاش 128 ك.
الخطوة 6: في الخطوة التالية ، حدد تنزيل إلى الجهاز واستعرض إلى الموقع حيث قمنا بتنزيل ملف bin في الخطوة 1 وحدده. انقر فوق التالي.
الخطوة 7: سيقوم البرنامج بتنزيل بعض الملفات المطلوبة كما هو موضح أدناه وسيبدأ بعد ذلك عملية الوميض.
الخطوة 8: بمجرد اكتمال التفليش بنجاح ، سنحصل على الشاشة أدناه. انقر فوق إغلاق واخرج من التطبيق. لقد قمنا بعمل وميض لوحة STM32 باستخدام محمل التمهيد Arduino بنجاح. الآن يتعين علينا إعداد Arduino IDE وتثبيت برامج التشغيل قبل أن نتمكن من برمجة لوحة STM32.
تحضير Arduino IDE وتثبيت برامج التشغيل
اتبع الخطوات التالية لتنزيل Arduino IDE وتحضيره لاستخدامه مع لوحة تطوير STM 32.
الخطوة 1: - إذا لم تكن قد قمت بتثبيت Arduino IDE بعد ، فقم بتنزيله وتثبيته من هذا الرابط. تأكد من تحديد نظام التشغيل الصحيح الخاص بك.
الخطوة 2: - بعد تثبيت Arduino IDE ، افتح وتنزيل الحزم المطلوبة للوحة STM32. يمكن القيام بذلك عن طريق تحديد ملف -> تفضيلات .
الخطوة 3: - سيؤدي النقر فوق تفضيلات إلى فتح مربع الحوار الموضح أدناه. في مربع النص الإضافي Boards Manager URL ، الصق الرابط أدناه
dan.drown.org/stm32duino/package_STM32duino_index.json
واضغط على موافق.
الخطوة 4: - انتقل الآن إلى الأداة -> اللوحات -> مدير مجلس الإدارة . سيؤدي هذا إلى فتح مربع حوار Boards manager ، والبحث عن "STM32F1" وتثبيت الحزمة التي تظهر.
الخطوة 5: بعد تثبيت الحزمة ، انتقل إلى C: \ Program Files (x86) Arduino \ Hardware \ Arduino_STM32-master \ drivers \ win حيث ستجد install_drivers.bat و install_STM_COM_drivers.bat .
الخطوة 6: انقر فوق كل من ملفات bat وقم بتثبيت برامج التشغيل. سوف تحصل على شاشة DOS كما هو موضح أدناه.
الآن تم إعداد Arduino IDE لبرمجة STM32 (Blue Pill) Development Board وتم أيضًا تثبيت برامج التشغيل.
برمجة STM32 (Blue Pill) مباشرة من خلال منفذ USB
قم بإزالة لوحة FTDI وجميع الاتصالات الموجودة من STM32. ما عليك سوى استخدام منفذ micro-USB على لوحة STM32 لتوصيله بالكمبيوتر كما هو موضح أدناه. تأكد من وضع دبوس وصلة المرور 0 مرة أخرى عند 0 (وضع التشغيل). بعد ذلك لا نحتاج إلى تبديل العبور بعد الآن لتحميل البرامج وتشغيلها.
يجب أن يكون جهاز الكمبيوتر الخاص بك قادرًا على اكتشاف اللوحة الآن. انتظر قليلاً إذا رأيت أي برامج تشغيل إضافية يتم تثبيتها. ثم ادخل إلى مدير الأجهزة وتحقق مما إذا تم اكتشاف لوحة STM32 الخاصة بك ضمن قسم COM والمنفذ كما هو موضح أدناه. المنجم متصل بـ COM8 باسم Maple Mini.
انتقل إلى الأدوات وقم بالتمرير لأسفل للعثور على سلسلة STM32F103C العامة كما هو موضح أدناه. ثم تأكد من أن البديل هو 64K فلاش نوع ، سرعة وحدة المعالجة المركزية 72MHz وتغيير طريقة تحميل ل STM32duino بووتلوأدر . حدد أيضًا منفذ COM الصحيح وفقًا للمنفذ الموجود في مدير الجهاز.
بعد إجراء جميع التغييرات ، تحقق من الزاوية اليمنى السفلية من Arduino IDE ويجب أن تلاحظ الإعداد التالي قيد الإعداد. لوحة STM32 الخاصة بي متصلة بـ COM8 ولكن قد تختلف لوحتك
الآن Arduino IDE جاهز لبرمجة STM 32 Blue Pill Development Boards. لنقم بتحميل برنامج Sample Blink من Arduino IDE إلى لوحة STM32 Blue Pill للتأكد من أن كل شيء يعمل بشكل صحيح. يمكن العثور على مثال البرنامج في
في المثال البرنامج الذي يفتح ، علينا إجراء تغيير بسيط. بشكل افتراضي ، سيتم كتابة البرنامج لـ PB1 ولكن على لوحتنا ، يتم توصيل مؤشر LED الموجود على اللوحة بـ PC13 ، لذا استبدل كل PB1 بـ PC13 ونحن على ما يرام للمتابعة. و البرنامج المثال الكامل الذي يتم تعديل يمكن أيضا أن تكون موجودة في أسفل هذه الصفحة.
يظهر الرمز الموجود داخل وظيفة الحلقة وحدها أدناه ، حيث يمكننا أن نلاحظ أن دبوس PC13 يظل مرتفعًا (قيد التشغيل) لمدة 1000 مللي ثانية ثم يتم إيقاف تشغيله LOW (إيقاف التشغيل) لمدة 1000 مللي ثانية أخرى ويتم ذلك لمرات غير محدودة نظرًا لأنه في وظيفة الحلقة . وهكذا يبدو أن مؤشر LED يومض بفاصل زمني قدره 1000 مللي ثانية.
الكتابة الرقمية (PC13 ، عالية) ؛ // قم بتشغيل LED (HIGH هو مستوى الجهد) تأخير (1000) ؛ // انتظر كتابة رقمية ثانية (PC13 ، LOW) ؛ / / قم بإيقاف تشغيل LED بجعل الجهد المنخفض تأخير (1000) ؛ // الانتظار لثانية واحدة
اضغط على زر التحميل في Arduino IDE وسيتم تجميع وتحميل برنامجك. إذا كان كل شيء يعمل كما هو متوقع ، فيجب أن ترى ما يلي على وحدة تحكم Arduino IDE.
إذا تم تحميل البرنامج بنجاح ، فيجب أن ترى مؤشر LED الأخضر يومض بفاصل زمني مدته ثانية واحدة كما هو موضح في الفيديو أدناه. يمكنك أيضًا العبث بالبرنامج لزيادة التأخير أو تقليله. الآن يمكنك البدء في استخدام لوحة تطوير STM32 (Blue Pill) مثل أي لوحات Arduino أخرى ، أي أنك لم تعد بحاجة إلى تغيير موضع وصلات العبور أو استخدام الأجهزة الخارجية لتحميل البرامج واختبارها.
آمل أن تكون قد فهمت البرنامج التعليمي ووجدت أنه من المفيد البدء في استخدام لوحة STM32. إذا كانت لديك أي مشكلة ، فاتركها في قسم التعليقات ، وأخبرني أيضًا ما هي المشاريع التي يجب أن نجربها مع لوحة STM32 هذه في المستقبل.