تمتلك عائلة
MK STM8S نسبة إلى STM8L / 32 ترسانة أصغر من الأجهزة الطرفية ، ولكنها تسمح لك بفهم الأساسيات بسهولة والحصول على المهارات اللازمة للعمل مع إخوته الأكبر.
0. لمن هو المنحى المادي ، لماذا ولماذا
عند كتابة هذا المقال ، أفترض أن القارئ يمكنه:
- اقرأ بعناية (وهو أمر نادر الحدوث)
- القليل من العمل مع الأدب التقني باللغة الإنجليزية (جيدًا ، أو الدافع للتعلم ، لأن اللغة الأولى للمبرمج هي اللغة الإنجليزية)
- جندى (على الأقل مهارات)
- البرمجة في C (مرة أخرى ، ليس كل شيء معقد للغاية)
- جوجل (بدونها في أي مكان)
- استخدم مقياس متعدد ولديه مهارات أساسية أخرى (مثل "لا تضع أصابعك في المقبس")
أنا أعتبر أهداف المقال:
- نظرة عامة لتشغيل جميع مراحل تطوير نظام قائم على متحكم
- إعطاء الملاحظات التمهيدية اللازمة للشخص الذي ليس عمليا
- إذا كان ذلك ممكنًا ، سيكون للقارئ فهم أين وماذا وكيف يمكن العثور عليه
(غير مهم)لماذا ولماذا؟
أعتقد أنه من المنطقي إنشاء دورة مفصّلة لبرمجة MK.
سأكون مناسبة لدراسة محيط كامل بمزيد من التفاصيل وعلى طول الطريق سوف تساعد الآخرين.
أعلم أن هناك بالفعل عددًا كبيرًا من المقالات وحتى الدورات التدريبية ، لكن لدي طريقة مختلفة قليلاً. (ربما سأحصل على النقد الكافي ، أغير رأيي وانضم إلى شباب MX Cube).
إنه لأمر محزن أن نرى كيف تتحول أجهزة التحكم stm إلى اردوينو.
فيما يتعلق اردوينو:
هناك 3 (معروفة لي ، MB ، أنا فقط لم تنمو) أساليب لتطوير
البرمجيات على MK:
- تطوير المجمع
- تطوير طراز MK معين
- التطوير باستخدام HAL والمكتبات المشابهة
1) أنا من مؤيدي الرأي القائل بأنه إذا كنت تقوم ببناء منزل ، فعليك ألا تحرق كل الطوب الطيني بيديك ، لأن المجمّع يختفي (على الرغم من أنه بدأ بهذا). سرعة التنمية منخفضة جدا.
2) مكتبات هال ، إلخ. للمبتدئين ، الكثير من اللحظات "مجرد كتابة مثل هذا" هي مبهمة. لأنه - أيضا في سلة المهملات.
3) أنا أعتبر أن عملية إنشاء برامج لأجهزة MK محددة هي الخيار الأكثر صحة للمبتدئين ؛ وستمكن المهارات المكتسبة من التعامل مع سلسلة 8L و 32 (على الرغم من أنه يؤلم القيام بذلك بمفرده وفقًا للوثائق).
ربما لاحظت أن اردوينو لا يظهر في هذه القائمة ، لأنها منصة
تعليمية وليست مخصصة لتطوير أجهزة مدمجة على أساسها. لكن النهج المتبع في البرمجة لسبب ما (لا أعرف) يتم نقله وينتشر عبر الإنترنت. وحتى تستخدم في المشاريع التجارية الحقيقية. (يمثل ، "لقد قمت بتنزيل المكتبة في المنتدى ، متصلاً ، عملت ، لا أعرف كيف تعمل").
أقترح ، من وجهة نظري ، اتباع منهج أكاديمي ومنهجي أكثر جدوى.
1. اختيار متحكم
لدي عدة STM8S105K6 في الحزمة LQFP32 ، وهي من هذه العائلة ، لذلك اخترتها.
يمكنك اختيار أي عضو MK داخل السلسلة.
هناك لوحات Discovery جاهزة من ST ، يمكنك الشراء من الصينيين أو الطلب من موارد أخرى. هناك لوحات جاهزة لل STM8S103F3P6 وما شابه ذلك من الصينيين.
ولكن ، تجدر الإشارة إلى أن لوحات جاهزة مصممة للتدريب.
على موقع الشركة المصنعة
st.com ، نجد
عضونا في MK ونقوم بتنزيل المستندات إليه:
الدليل المرجعي: RM0016 - وثيقة مشتركة لجميع عائلات MK STM8S و STM8AF. التالي هو RM.
ورقة البيانات: لدي مستند DS5855 لـ STM8S105C4 / 6 و STM8S105K4 / 6 و STM8S105S4 / 6. التالي هو DS.
من الأشياء اللذيذة لديه (بشكل سطحي):
- 16 ميغاهيرتز الدعم
- 32 كيلوبايت فلاش ، 1 كيلوبايت EEPROM و 2 كيلوبايت من ذاكرة الوصول العشوائي
- السلطة 2.95-5.5V
- مؤقتات 8 بت و 16 بت
- UART ، SPI ، I2C
- 10 بت ADC
- ما يصل إلى 38 المدخلات / المخرجات منفصلة
2. المعدات المطلوبة
أرى خيارين للعمل مع MK:
تجميع تخطيط من مكونات فرديةرائع ، رائع ، أنا أحب ذلك. الكثير من الناس يفعلون ذلك.
في هذه الحالة ، سوف تحتاج عضو الكنيست إلى ما يسمى الربط. الخطة بسيطة:
- نأخذ اللوح ، في حالتي TQFP (32-64PIN) 0.8MM ، جندى MK عليه
- نأخذ مشط مزدوج الصف PLS-2x40 لحام إلى الثقوب التي تؤدي إلى استنتاجات MK
- نأخذ لوحًا مطبوعًا (لدي 9x15 سم) ونلحم آخر سندوتش عليه
- نحن ننظر إلى نقطة RM 7. امدادات الطاقة ، نقرأ . هو مكتوب أنك بحاجة إلى مكثف يربط دبوس VCAP وإمدادات الطاقة 0V لدينا. إنه مكتوب أيضًا أنك بحاجة إلى البحث بمزيد من التفصيل في DS إلى MK معين في قسم الخصائص الكهربائية. بالنسبة لي ، هذا هو البند 10.3.1 من المكثف الخارجي VCAP مع الإشارة إلى الجدول 18 حيث القيمة الاسمية هي 470 - 3300 nF. أخذت 1 مل (في الدائرة C3). (لماذا تحتاجها ، أتمنى أن تقرأها بنفسك في RM)
- المرجع نفسه ، في DS في الفقرة 10.3.8. إعادة تعيين خصائص دبوس نجد تصنيف مكثف 0.1mF (على الدائرة C4). يتم استخدام المقاوم R4 بقيمة اسمية 10 كيلو أوم في لوحات التصحيح ومذكرات التطبيق المختلفة ، على الرغم من أن هناك داخل المقاوم MK بالفعل مقاوم سحب يصل إلى القيمة الاسمية من 30 إلى 80 كيلو أوم (إذا كنت تعتقد أن نفس DS). بالتوازي مع مكثف C4 نضع زر إعادة الضبط. يمكن رؤية نمط إعادة الضبط هذا ، على سبيل المثال ، في مذكرة Desighn DN0005.
- وأيضًا ، تحب ST إضافة مكثفات قدرة 100nF إلى لوحات التصحيح ، في عدد دبابيس N المتصلة بقوة +1. يُظهر الرسم التخطيطي فقط C1 و C2 و C5 3 قطع ، ولم أقم بلحامها على السبورة ، لكنك فهمت المعنى. ستعمل على الطاولة بدونها ، ولكن في التطوير التجاري الحقيقي ، من الأفضل الاهتمام بهذا الأمر عند تكوّن لوحة الجهاز.
- إلغاء حل موصل برمجة SWIM (أصنع من PLS-1x40)
حصلت على هذه المعجزة:

شراء لوحة مكتملة (لا تخلصك من العمل باستخدام مكواة لحام)رائع ، رائع ، أنا أحب ذلك. الكثير من الناس يفعلون ذلك.
يجدر التعرف على تهيئة اللوحة ، إذا كانت لوحة من ST ، فهي على الفور مع المبرمج ومتصلة بكبل USB من النوع B. سوف يحتوي موقع ST على مخطط على صفحة المنتج. على اللوحة ، ستكون هناك أزرار ومصابيح LED ومكبرات صوت وأزرار سعوية وسحرات أخرى يمكنك من خلالها اللعب.
إذا كانت اللوحة صينية ، فغالبًا ما تستخدم لوحات بدون مبرمج ، فستحتاج إلى مبرمج.
من الأفضل عدم تصديق الحريرية بأسماء الاستنتاجات والتحقق من المقارنة مع DS.
أنا لا أفكر في العمل مع ألواح الاتصال لأنني لا أستخدمها.
بالإضافة إلى أنني بحاجة إلى مبرمج ، لدي ST-Link V2 صيني. قادرة على البرنامج و STM8 و STM32.
3. اختيار IDE
بالنسبة لي ، مسألة الاختيار ليست ذات صلة بعد ، فأنا أعمل في IAR من أجل STM8 ، لأنه جعل مشروعًا أعمل عليه حاليًا ، وللسبب نفسه الإصدار القديم.
نذهب إلى موقع
iar.com ، في البحث
نكتب نموذج MK لدينا.
قم بتنزيل Workbench IAR Embedded لـ STM8 ، وحدد التقييم المحدود للحجم عند التثبيت ، وطرح بحد أقصى 8 كيلو بايت من التعليمات البرمجية. أو شراء. هناك إصدارات مخترقة على الموارد المحظورة على أراضي الاتحاد الروسي ، ولكنها ليست مناسبة للمشاريع التجارية.
تعليمات التثبيت في المثبت أو في Google.
أنا أستخدم الإصدار 6.5.3.2581.
تثبيت البيئة ، جنبا إلى جنب معها برنامج تشغيل للمبرمج.
4. إنشاء مشروع
انتقل إلى IDE ، انتقل إلى Project -> إنشاء مشروع جديد -> C ++
انقر فوق "موافق" ، وحدد الدليل (ويفضل أن يكون بدون السيريلية والمسافات) ، وحدد الاسم (بدون مسافات والسيريلية).
نذهب إلى المجلد الجذر IDE لدينا والعثور على المجلد inc ، بالنسبة لي المسار:
C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\stm8\inc
من بين ملفات رأس iostm8 ، نجد طراز MK لدينا ، بالنسبة لي:
iostm8s105k6.h
نقوم بتوصيله في البداية ونضيف حلقة لا نهائية.
في القائمة Project -> Options -> General Options في العمود Device ، حدد MK الخاص بك.
في Project -> خيارات -> مصحح الأخطاء في العمود Driver حدد ST-LINK.
ابحث عن الزر "تنزيل" و "تصحيح" على شريط الأدوات.
في التجميع الأول ، ستطالبك البيئة بتحديد اسم ملف .eww. (أنا اسم نفس المشروع.)
في أسفل نافذة سجل التصحيح ، يجب أن تكون الرسائل التي:
- Preprocessor لـ STM8 - بدأ المعالج الأولي
- مصحح الأخطاء STM8 - بدأ مصحح الأخطاء
- متصل بنظام تصحيح الأخطاء STM8 SWIM - متصل بـ MK
- حدث تحميل البرامج الثابتة debugee
- إعادة تعيين الهدف - حدث إعادة تعيين
نحن في وضع التصحيح ، ولكن البرنامج متوقف مؤقتًا.
في نفس المكان على شريط الأدوات ، نجد زر "انتقال" واضغط عليه.
أطلقنا MK في وضع التصحيح.
انقر فوق "إيقاف التصحيح" ، و "تصحيح الأخطاء" ، ولكن MK مدعوم من قبل المبرمج ثم يقوم بتشغيل البرنامج ، أي أنه يدور حلقة لا نهاية لها ولا يقوم بأي شيء.
النتائج
وكانت النتيجة لمحة موجزة ومقدمة لبرمجة سلسلة STM8S من أعضاء الكنيست دون الحاجة إلى البرمجة نفسها. اتضح فقط الأساس للعمل ، من هذا عادة ما يبدأ كل شيء - مع تجميع التصميم.
لا أرى هذه النقطة بمزيد من التفصيل.
في العديد من المقالات ، بعد المقدمة ، حرفيًا بعد سطرين ، وميض المصابيح ، وهو ما لا أفهمه.
يمكن الحكم على مدى تحقيق الأهداف من خلال ما إذا كان المبتدئين تمكن من فعل شيء من تلقاء نفسه ، وذلك باستخدام المعلومات التي اقترحتها. (نافذة مؤشر سجل التصحيح)
شكرا لاهتمامكم