الجزء 1. غنائي
العالم الحديث لا يمكن تصوره دون وجود عدد كبير من المساعدين الإلكترونية والكهربائية. بدءًا من أجهزة الكمبيوتر والهواتف الذكية ، ينتهي بمفتاح إضاءة بسيط في المطبخ وقاطع دائرة حماية الإدخال. بطريقة أو بأخرى ، عليك التفاعل مع جميع الأجهزة. في بعض الأحيان ، على سبيل المثال ، هاتف ذكي ، لا يتفادى بعض الناس إطلاقًا على الإطلاق ، مع البعض الآخر في كثير من الأحيان ، نفس جهاز حماية الدخول التلقائي للشقة ، والتي لا يعرف البعض وجودها.
بالنسبة للأجهزة من الفئة الأولى ، كل شيء بسيط هناك. الواجهة ، في الواقع ، رسومية ويتم تحديدها من قبل المصممين والمبرمجين. ومع الأجهزة الثانية ، من حيث التفاعل ، وليس من حيث الأهمية ، تكون الخطة أكثر تعقيدًا. نحن نأخذهم كأمر مسلم به ، أو نفس مفتاح الإضاءة ، أو للأم ، عندما يقومون بعملهم ، مثل جهاز الإدخال الذي عمل على زيادة التحميل.
بالنسبة للأجهزة البسيطة جدًا ، تكون الواجهة بدائية. زر التبديل أو التبديل ، والعديد من أزرار الحرارة ، على سبيل المثال. يتم تعيين الخصائص من قبل الشركة المصنعة ولا تتغير من قبل المستهلك. تشغيل 10A و 16 A و 25 A الحالي ... التبديل إلى 6A 230V ... ولكن عندما يكون الجهاز أكثر تعقيدًا ، يصبح كل شيء سيئًا للغاية.
مشتتا قليلا ، سأتحدث عن فشلي فقط بسبب واجهة الجهاز. كانت هناك مهمة موازنة التحميل لمنزل خاص. في الواقع - تتابع متعدد القنوات القابلة للبرمجة. لقد صنعت نموذجًا أوليًا حرفيًا في المساء ، وسلمته إلى الزبون ، كان العميل ، الزميل في المنزل ، راضيًا ، وقررت أن أحاول إنشاء إنتاج صغير الحجم ، وتنظيم عملية بدء تشغيل إلكترونية صغيرة على نطاق القرية ، نظرًا لأن مشكلة نقص سعة المدخلات مناسبة للقطاع الخاص. ظلت مشكلة تصميم واحدة - تكوين الجهاز. في النموذج الأولي ، تم تعبئة الفواصل الزمنية ببساطة في البرنامج الثابت ، إذا كان يمكن استدعاء 200 تعليمات المجمّع ذلك. في بضع مرات كان علي ضبط الإعدادات ، تم ذلك ببساطة عن طريق تجميع برنامج ثابت جديد وتحديث عن طريق المبرمج. من الواضح أنه بالنسبة لجهاز تسلسلي ، وحتى صغير الحجم ، فإن هذه الطريقة غير مناسبة.
هنا صادفت كل "سحر" تطوير واجهة مستخدم الأجهزة ... الأساليب البسيطة ، مثل كتابة 16 خيارًا للإعدادات وإعداد مفتاح الشريحة ، لا تمنح المرونة المطلوبة ، مما يجعل أي واجهة جادة للتواصل مع جهاز كمبيوتر أو هاتف ذكي تعقيدًا غير مبرر ، وارتفاعًا في السعر. بالإضافة إلى ذلك ، تبرز الحاجة على الفور إلى تطوير تطبيق بسيط ولكنه مشترك بين الأنظمة الأساسية (Win / Linux / Android / iOs). ولكن هذا ليس هو الشيء الرئيسي. في الواقع ، سيقوم المستخدم بتكوين الجهاز مرة واحدة أثناء التثبيت ، ومن الناحية المثالية ، لم يعد يتذكر ذلك.
على عكس النموذج الأولي ، ظهر مؤشر LED 4 بت والأزرار ومصابيح LED على اللوحة الأمامية للجهاز. تمت إضافة وظائف ، ميزات التأخير في تشغيل الحمل بعد انقطاع التيار الكهربائي ، وسائط إضافية لامدادات الطاقة من خط نقل الطاقة أو مولد النسخ الاحتياطي ، والحفاظ على درجة حرارة التجمد ...
وهنا هو التخطيط الشامل الأبعاد لهذا الوحش فرانكشتاين
(يتحكم في الموصلات ، داخل دوائر تبديل لفائف التيار المنخفض)
طالما كانت وظيفة المرحلات القابلة للبرمجة موجودة فقط ، فلم يكن الأمر صعبًا مع الإعدادات ؛ فقد تم تشغيل واجهة الجهاز التي تم إنشاؤها. ولكن في مرحلة ما ، بدأ تعليمة التكوين تتجاوز حجم رمز البرنامج الثابت. الفكرة الأولية: يقوم المستخدم بمسح رمز الاستجابة السريعة على لوحة الأدوات ، ويذهب إلى صفحة التعليمات - إنه فشل. يبقى إما إنشاء جهاز بسيط للغاية ، أو البحث عن طريقة أخرى للاتصال بالجهاز. المشترين المحتملين (اختبار شجاع) لفترة طويلة جدا فهم التكوين وفقا للتعليمات.
أتعس شيء هو أن لدي نماذج أولية للعديد من الأجهزة التي تم تهيئتها مرة واحدة وتعيش حياتها في لوحة كهربائية. التكوين - عشرات بايت أخرى. يبقى أن تجد واجهة مناسبة.
ماذا لدينا اليوم؟ مقارنة بين طرق التكوين "الكلاسيكية":- اختيار التكوينات الجاهزة. PROS: نفذت بسهولة كل من البرامج والأجهزة. تحسينات الأجهزة الإضافية ضئيلة. لا يحتاج المستخدم إلى امتلاك معدات خاصة وتعليمات كافية. العيوب: لا توجد مرونة ، وليس بشكل حدسي ، الإرشادات مطلوبة.
- سلسلة من النقرات مع ردود الفعل من خلال عرض بسيط (على غرار ضبط ساعة إلكترونية منتظمة). PROS: يتم تنفيذها بسهولة برمجيًا ، لا يحتاج المستخدم إلى امتلاك معدات خاصة ، تعليمات كافية. CONS: ليس بشكل حدسي ، من الصعب تكوين عدد كبير من المعلمات ، وعدم القدرة على استنساخ الإعدادات ، وهو أمر بالغ الأهمية بالنسبة للشركات المثبت.
- التكوين باستخدام واجهة سلكية قياسية. PROS: بشكل حدسي ، إذا كان التطبيق مكتوبًا بشكل جيد ، استنساخ سهل للإعدادات ، تنفيذ بسيط نسبيًا ، وربما ليس تحسينات الأجهزة باهظة الثمن ، والقدرة على تحديث البرامج الثابتة. CONS: يجب أن يكون لدى المستخدم جهاز ، على الأقل جهاز كمبيوتر أو كمبيوتر محمول مع منفذ USB ، محول واجهة ، إذا كان جهازك يوفر شيئًا آخر غير USB أو Ethernet. الحاجة لتطوير التطبيق.
- WiFi + WEB - إطلاق نار من مدفع على العصافير و terry ardurinshchina. لكن الفكرة ليست سيئة. PROS: على غرار الاتصال السلكي ، ليست هناك حاجة لتطوير تطبيق عبر النظام الأساسي من خلال توفير واجهة WEB المضمنة للمكون ، وهو ما يكفي للمستخدم للحصول على أي جهاز مع دعم WiFi ومتصفح. الوصول إلى الشبكة العالمية غير مطلوب حتى. ربما يكون هذا التصميم أرخص من أزرار / مؤشرات الأجهزة ، كما يتم تبسيط الحالة. CONS: من الناحية الفنية ، حل بشع للغاية ينقل المنتج إلى فئة مختلفة تمامًا من الأجهزة. يتم تقليل الموثوقية ، وذلك بسبب تعقيد البرامج الثابتة ، وزيادة الحساسية لل EMF.
ألخص أن أحد أجمل الحلول من وجهة نظر المستخدم هو الأخير. لكنها أيضًا واحدة من أكثرها فظاعة من وجهة نظر مهندس. توقفت تقريبا عن ذلك ، ولكن ...
انحناء التقنية مسكون. من أجل كتابة عدد قليل من البايتات في EEPROM ، فإن تسييج حديقة بها كومة بروتوكول واسعة النطاق أمر غير منطقي. لكن يبدو أنني وجدت حلاً لمشكلتي ، إليك خصائص هذه الطريقة:
الايجابيات:- إن تقدير مكون الجهاز مشابه لقرار "الاختيار من التكوينات الجاهزة" ، 10-15 روبل ، والقدرة على رفض الأزرار الإضافية ، المؤشرات ، وما إلى ذلك ، تعطي بدلاً من ذلك سعراً أرخص.
- تنفيذ البرامج ليست مشكلة.
- لا يتطلب تطوير تطبيق خاص. إذا رغبت في ذلك ، يمكن تقديم الطلب.
- يعتمد الحدس على جودة تطوير مكون أو تطبيق WEB.
- عزل كلفاني مع الجهاز.
سلبيات:- انخفاض معدل نقل البيانات مقارنة مع واجهة سلكية أو الراديو.
- الاتصال الجسدي مع الجهاز مطلوب.
- تحتاج إلى وصول واحد على الأقل إلى الشبكة.
بالإضافة إلى ذلك ، هذه الطريقة لنقل المعلومات شائعة جدًا في الطبيعة. هذه موجة صوتية.
الآن ، ربما كل شخص لديه الهواتف الذكية. لا يوجد هاتف ذكي - أي جهاز لتشغيل الصوت ، حتى مشغل الكاسيت ، مناسب. كما أرى هذه الواجهة في العمل:
- يقوم المستخدم بتثبيت الجهاز وفقا للتعليمات.
- يتم تكوين التكوين المطلوب للجهاز ، ويتم تسجيل الأوضاع والإعدادات اللازمة.
- يضع المستخدم الجهاز في وضع التكوين ، على سبيل المثال ، من خلال تسلسل خاص للضغط على مفتاح ، يعرض الجهاز حالة جاهزة ، على سبيل المثال ، من خلال وميض مؤشر LED بتردد قدره 5 هرتز.
- في أداة التهيئة ، يتم النقر على أيقونة "نقل المعلمات" ، وبعد ذلك يبدأ تشغيل تسلسل الصوت المشفر (ومن قام بتحميلها من الكاسيتات في التسعينيات؟).
- ينتظر المستخدم البيانات المراد تحميلها في الجهاز (على سبيل المثال ، أصبح مؤشر LED قيد التشغيل باستمرار) والنقر على أيقونة "إيقاف الإرسال".
كل شيء ، يتم نقل المعلمات الجديدة إلى الجهاز. هل تعتقد أن طريقة التكوين هذه ستكون مريحة بما فيه الكفاية؟
بدلا من الكلمة الأخيرةعلى وجه التحديد لم أتطرق إلى الجزء الفني من التنفيذ. كل حالة يمكن أن تكون فردية ، النهج هو فكرة عامة. إذا أثار المقال الاهتمام ، فسوف أنشر الجزء الثاني. عملي. في حين أن المفسد: الفكرة كانت ناجحة ، فإن النموذج على إصدار 8 بت PIC16 + "طالب" من المحول البرمجي C دون التحسين ، بما في ذلك دليل ، البرامج الثابتة تناسب بهدوء في الذاكرة (حوالي 1KB) وفي الأداء. أصعب عملية رياضية هي إضافة sint8_t و sint16_t. وفقًا للحسابات الأولية ، فإن نواة مكون الصوت ، الذي تمت إعادة كتابته في Assembler ، سوف يتلاءم مع أقل من 512 كجم ، ويجب أن يكون PIC16F819 أداء 2MIPS.
كل التوفيق
قسنطينة.