
اكتسب الكثير منها "حبة زرقاء" لمحاولة. ولكن بسبب تعقيد البرمجة ، كان هذا الشيء في مكان ما على الرف ، حتى أوقات أفضل.
سوف نعتبر أن "أفضل الأوقات" قد وصلت.
ما هو ضروري للتجارب:
خردوات
يمكن شراء جميع الأجزاء / المكونات المستخدمة على aliexpress.com
- بالطبع ، أولاً وقبل كل شيء ، وحدة التحكم نفسها. "Blue Tablet"
- محول USB-UART
- كابل USB الصغير
- مجموعة من الأسلاك لربط المكونات مع بعضها البعض
يوصى باستخدام مبرمج
ST-Link V2 بشكل أسرع ، مقارنةً بـ UART ، وتحميل "البرامج الثابتة" وتصحيح البرامج
البرمجيات
ما هي الوحدة؟
الوحدة النمطية هي مزيج من الأجهزة والبرامج. جزء الجهاز هو "الجهاز اللوحي" STM32F103C8T6 ، وجزء البرنامج هو "قالب البرنامج الثابت" الذي تم إنشاؤه باستخدام برنامج
MIOC ، وهذا البرنامج
مفتوح المصدر .
منافذ متحكم
متحكم لديه دبابيس أو الساقين. بعضها من قوة متحكم ، وبعضها له غرض خاص (على سبيل المثال ، إعادة تعيين) ، جزء منها واجهة الإدخال / الإخراج للأغراض العامة (المهندس GPIO).
يتم تجميع المنافذ (A ، B ، C ...). تحتوي كل مجموعة على ما يصل إلى 16 منفذًا ، مرقمة من 0 إلى 15. ونتيجة لذلك ، يبدو ترقيم المنفذ مثل PA0 ، PA1 ، ...
تُستخدم المنافذ للاتصال بين مكونات الوحدة ، على سبيل المثال ، المعالج الدقيق والأجهزة الطرفية المختلفة. يمكن أن تعمل المنافذ كمدخلات ومخرجات وثنائية الاتجاه.
تتميز اللوحة "اللوحية" بالمنافذ.
GPIO - للأغراض العامة I / O واجهة
في وحدة IO ، يتم عرض الأنواع الرئيسية من المنافذ في الجدول:

كأجهزة استشعار ، مشغلات سوف نستخدم أجهزة مختلفة من اردوينو.
برنامج MIOC (وحدة تكوين المدخلات والمخرجات)
باستخدام هذا البرنامج ، نقوم بإنشاء / تكوين قالب البرنامج الثابت (مشروع لـ Embitz؛ Keil) من وحدة IO. المثبت لا يتطلب. تحميل ، تشغيل. باستخدام هذا البرنامج ، نقوم بإنشاء متغيرات عالمية سنستخدمها في البرامج الثابتة الخاصة بنا. يمكن ربط المتغيرات بالمنافذ.
نافذة التشغيل الأولى:

إنشاء مشروع:

حدد مجلد للمشروع. مجلد ، لهذا المشروع يجب أن تكون فارغة!



البرنامج الأول - "كلمة مرحبا" ل متحكم
نغمض مصباح LED الموجود على "الحبة الزرقاء". هذا الصمام متصل بمنفذ PC13.
أضف صفًا إلى جدول متغير


إنشاء رمز BSP (الزر F8)

علاوة على ذلك ، في كل مرة بعد تغيير المشروع ، مطلوب توليد BSP!
افتح المشروع الذي تم إنشاؤه في بيئة تطوير EmBitz أو Keil. لا يزال EmBitz حلاً. يبدو أن المؤلف تخلى عن هذا المشروع. على الأرجح في المستقبل ، سيستخدم المشروع Code :: Blocks.
في الملف main.c ، اكتب ما يلي:
(لزيادة حجم الصورة ، افتحها في علامة تبويب جديدة)في EmBitz ، اضغط F2 ، بعد ظهور نافذة المعلومات ، اضغط F7. يجب أن يتم التجميع.
سيؤدي الضغط على F2 مرة أخرى إلى إخفاء إشارات المعلومات.

قم بالتحميل إلى متحكم ، انظر كيف يعمل.
زر
أضف زرًا ، على سبيل المثال هذا:

مخطط الأسلاك:

إضافة متغير إلى الجدول:

نحن نولد BSP.
تغيير البرنامج إلى ما يلي:

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

وإدارة نوع من الحمولة.
رسائل الإخراج إلى وحدة التحكم
تحتاج إلى تحديد ما سيكون وحدة التحكم.
الخيارات هي:
- محول USB-UART
- منفذ COM الظاهري (كابل Micro-USB)
إذا تم تحديد كل من UART1 و USB كوحدة تحكم في التكوين ، ولم يتم تحديد USB VCP ، فسيتم تعيين وحدة التحكم في أي مكان. أي لن يكون هناك قسم في وظيفة print_str (أو ماكرو الطباعة) ، ولكن لن يكون هناك إخراج أيضًا. سيكون نفس السلوك إذا لم تقم بتحديد أي واجهة ، أو حدد USB VCP لكنك لم تحدد UART1 أو USB كوحدة تحكم.
تكوين وحدة التحكم:

قم بتوصيل TettaTerm بمنفذ COM (وحدة التحكم). إذا قمنا بتنزيل البرنامج الثابت عبر UART1 ، فلا تنسَ فصل / توصيل منفذ COM. في TerraTerm "الأزرار الساخنة" Alt + I ؛ Alt + N هذا غير مطلوب لخيار التمهيد عبر ST-Link.
تحرير البرنامج:

الآن سوف تعرض وحدة التحكم حالة الزر:

DS18B20
قم بتوصيل مستشعر درجة حرارة DS18B20 بـ "الجهاز اللوحي".

ضع المتغير في الجدول:

تغيير البرنامج إلى ما يلي:

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

ADC
كمثال على العمل مع ADC ، يمكنك استخدام مقياس الجهد:

أو استشعار رطوبة التربة

دعونا نتحدث عن آخر واحد:
تكوين المنفذ:

تحرير البرنامج:

نحن تجميع ، تحميل.
في وحدة التحكم نلاحظ:

ADC - قراءة ADC الحالية. الحد الأقصى والحد الأدنى - قراءات الاستشعار الدنيا والقصوى المسجلة ، جافة تمامًا (0٪) ورطبة جدًا (100٪).
مبلل جدًا (100٪) - ضع المستشعر في كوب من الماء. جاف جدا (0 ٪) - يكمن في الهواء الطلق.
في الواقع ، قمنا بمعايرة مستشعر رطوبة التربة من 0 إلى 100٪. نضع القيم القصوى والدنيا في نص البرنامج.

نتيجة العمل. يتم وضع المستشعر في وعاء وعاء الزهور:

هذا المشروع هو قالب الحل لمحطات الري.
هذا كل شيء الآن. سيتم تجديد برنامج MIOC بميزات إضافية.