SILICON LABS Lab 3B - تعديل دليل مستخدم التشغيل / الإيقاف
سيوضح هذا التمرين العملي كيفية إجراء تعديل على أحد sampالتطبيقات التي يتم شحنها كجزء من Z-Wave SDK.
هذا التمرين جزء من سلسلة "Z-Wave 1-Day Course".
- قم بتضمين استخدام SmartStart
- فك تشفير إطارات Z-Wave RF باستخدام Zniffer
- 3A: ترجمة التبديل بين تشغيل / إيقاف وتمكين التصحيح
3B: تعديل مفتاح التشغيل / إيقاف التشغيل - افهم أجهزة FLiRS
المميزات الرئيسية
- تغيير GPIO
- تنفيذ PWM
- استخدم RGB LED على متن الطائرة
1. المقدمة
يعتمد هذا التمرين على التمرين السابق "3A: تجميع مفتاح التشغيل / إيقاف التشغيل وتمكين التصحيح" ، والذي يوضح كيفية تجميع مفاتيح التشغيل / إيقاف التشغيل واستخدامهاampتطبيق le.
في هذا التمرين ، سنجري تعديلًا على sample ، عن طريق تغيير GPIO الذي يتحكم في LED. بالإضافة إلى ذلك ، سوف نستخدم RGB LED ونتعلم كيفية استخدام PWM لتغيير الألوان.
1.1 متطلبات الأجهزة
- 1 مجلس التنمية الرئيسي WSTK
- 1 مجلس تطوير راديو Z-Wave: ZGM130S SiP Module
- 1 وحدة تحكم UZB
- عدد 1 USB Zniffer
1.2 متطلبات البرنامج
- بساطة ستوديو v4
- زي ويف 7 SDK
- جهاز تحكم Z-Wave PC
- Z- الموجة Zniffer
الشكل 1: لوحة التطوير الرئيسية مع Z-Wave SiP Module
1.3 المتطلبات الأساسية
غطت التدريبات العملية السابقة كيفية استخدام تطبيق PC Controller و Zniffer لبناء شبكة Z-Wave والتقاط اتصالات التردد اللاسلكي لأغراض التطوير. يفترض هذا التمرين أنك على دراية بهذه الأدوات.
غطت التدريبات العملية السابقة أيضًا كيفية استخدام sampالتطبيقات التي تأتي مع Z-Wave SDK. يفترض هذا التمرين أنك على دراية باستخدام وتجميع أحد العناصرampلو التطبيقات.
يأتي إطار عمل Z-Wave مع طبقة تجريد للأجهزة (HAL) محددة بواسطة board.h و board.c ، مما يوفر إمكانية وجود تطبيقات لكل من الأنظمة الأساسية للأجهزة.
طبقة تجريد الأجهزة (HAL) هي رمز برنامج بين أجهزة النظام وبرامجه التي توفر واجهة متسقة للتطبيقات التي يمكن تشغيلها على العديد من الأنظمة الأساسية للأجهزة. لأخذ Advantagمن هذه الإمكانية ، يجب أن تصل التطبيقات إلى الأجهزة من خلال واجهة برمجة التطبيقات التي يوفرها HAL ، وليس بشكل مباشر. بعد ذلك ، عند الانتقال إلى جهاز جديد ، ما عليك سوى تحديث HAL.
2.1 افتح Sampلو المشروع
في هذا التمرين ، تحتاج إلى فتح مفتاح التشغيل / إيقاف التشغيلampتطبيق le. إذا أكملت التمرين "3A Compile Switch OnOff وتمكين التصحيح" ، فمن المفترض أن يكون مفتوحًا بالفعل في Simplicity Studio IDE الخاص بك.
في هذا القسم سنلقي نظرة على السبورة fileق وفهم كيفية تهيئة المصابيح.
- من الرئيسيه file “SwitchOnOff.c” ، حدد موقع “ApplicationInit ()” ولاحظ المكالمة إلى Board_Init ().
- ضع المصور الخاص بك على Board_Init () واضغط على F3 لفتح الإعلان.
3. في Board_Init () لاحظ كيف يتم تهيئة المصابيح الموجودة في BOARD_LED_COUNT من خلال الاسم Board_Con-figLed ()
4. ضع المحاضر الخاص بك على BOARD_LED_COUNT واضغط على F3 لفتح الإعلان.
5. مؤشرات LED المحددة في led_id_t هي كما يلي:
6. العودة إلى لوحة. c file.
7. ضع المقرر الخاص بك على Board_ConfigLed () واضغط على F3 لفتح الإعلان.
8. لاحظ أن جميع مؤشرات LED المحددة في led_id_t يتم تكوينها بعد ذلك في Board_ConfigLed () كإخراج.
ما يعنيه هذا هو أن جميع مصابيح LED الموجودة على لوحة التطوير مُعرَّفة بالفعل على أنها مخرجات وجاهزة للاستخدام.
3. إجراء تعديل على Z- الموجة S.ampتطبيق le
في هذا التمرين ، سنقوم بتعديل GPIOs المستخدمة لمصباح LED في مفاتيح التشغيل / الإيقافampتطبيق le. في القسم السابق ، تعلمنا كيف تمت تهيئة جميع مصابيح LED الموجودة على لوحة التطوير بالفعل كإخراج وجاهزة للاستخدام.
3.1 استخدم RGB LED
سنستخدم RGB LED على اللوحة في وحدة تطوير Z-Wave ، بدلاً من LED على لوحة الأزرار.
1. حدد موقع وظيفة RefreshMMI ، كما هو موضح في الشكل 6 ، في التطبيق الرئيسي SwitchOnOff.c file.
الشكل 6: RefreshMMI بدون أي تعديلات
2. سنستخدم الوظيفة "Board_SetLed" لكننا نغير GPIO إلى
o BOARD_RGB1_R
س BOARD_RGB1_G
o BOARD_RGB1_B
3. قم باستدعاء "Board_SetLed" ثلاث مرات في كل من حالة "إيقاف التشغيل" و "التشغيل" ، كما هو موضح في الشكل 3.
تم الآن تنفيذ تعديلنا الجديد ، وأنت جاهز للتجميع.
تمت تغطية خطوات برمجة جهاز في التمرين "3A Compile Switch OnOff وتمكين التصحيح" ، ويتم تكرارها باختصار هنا:
- انقر فوق "إنشاء"
زر لبدء بناء المشروع.
- عند انتهاء البناء ، وسّع مجلد "الثنائيات" وانقر بزر الماوس الأيمن على * .hex file لتحديد "فلاش إلى الجهاز ..".
- حدد الجهاز المتصل في النافذة المنبثقة. يتم الآن تعبئة "مبرمج الفلاش" مسبقًا بجميع البيانات المطلوبة ، وأنت على استعداد للنقر فوق "البرنامج".
- انقر فوق "برنامج".
بعد فترة وجيزة من انتهاء البرمجة ، يومض جهازك النهائي الآن بإصدارك المعدل من Switch On / Off.
3.1.1 اختبر الوظيفة
في التدريبات السابقة ، قمنا بالفعل بتضمين الجهاز في شبكة Z-Wave آمنة باستخدام SmartStart. راجع التمرين "تضمين استخدام SmartStart" للحصول على الإرشادات.
تلميح الداخلي file لا يتم مسح النظام بين إعادة البرمجة. يسمح هذا للعقدة بالبقاء في الشبكة والاحتفاظ بنفس مفاتيح الشبكة عند إعادة برمجتها.
إذا كنت بحاجة إلى تغيير التردد الذي تعمل به الوحدة النمطية أو DSK ، فأنت بحاجة إلى "محو" الشريحة قبل أن تتم كتابة التردد الجديد في NVM الداخلي.
على هذا النحو ، جهازك مضمن بالفعل في الشبكة.
اختبر الوظيفة عن طريق التحقق من أنه يمكنك تشغيل وإيقاف تشغيل RGB LED.
- اختبر الوظائف باستخدام "Basic Set ON" و "Basic Set OFF" في وحدة تحكم الكمبيوتر. يجب أن يتم تشغيل وإيقاف RGB LED.
- يمكن أيضًا تشغيل وإيقاف RGB LED باستخدام BTN0 على الجهاز.
لقد تحققنا الآن من أن التعديل يعمل كما هو متوقع وقمنا بتغيير GPIO المستخدم في S.ampتطبيق le
3.2 تغيير مكون لون RGB
في هذا القسم ، سنقوم بتعديل RGB LED ومحاولة خلط مكونات اللون.
"يتم وصف اللون في نموذج الألوان RGB من خلال الإشارة إلى مقدار كل من الأحمر والأخضر والأزرق. يتم التعبير عن اللون على شكل ثلاثي RGB (r ، g ، b) ، يمكن أن يختلف كل مكون من صفر إلى قيمة قصوى محددة. إذا كانت جميع المكونات عند صفر تكون النتيجة سوداء ؛ إذا كانت جميعها بحد أقصى ، فإن النتيجة هي ألمع أبيض يمكن تمثيله ".
من ويكيبيديا نموذج ألوان RGB.
نظرًا لأننا قمنا بتمكين جميع مكونات الألوان في القسم السابق ، فإن RGB LED يكون أبيض عند تشغيله. من خلال تشغيل وإيقاف المكونات الفردية ، يمكننا تغيير LED. بالإضافة إلى ذلك ، من خلال ضبط كثافة كل مكون من مكونات اللون ، يمكننا جعل كل الألوان بينهما. لذلك ، سوف نستخدم PWM للتحكم في GPIOs.
- في ApplicationTask () ، قم بتهيئة PwmTimer وإعداد دبابيس RGB على PWM ، كما هو موضح في الشكل 9.
- في RefreshMMI () ، سنستخدم رقمًا عشوائيًا لكل مكون لوني. استخدم rand () للحصول على قيمة جديدة في كل مرة يتم فيها تشغيل LED.
- استخدم DPRINTF () لكتابة القيمة التي تم إنشاؤها حديثًا إلى منفذ التصحيح التسلسلي.
- استبدل Board_SetLed () بـ Board_RgbLedSetPwm () ، من أجل استخدام القيمة العشوائية.
- راجع الشكل 10 للحصول على RefreshMMI المحدث ().
الشكل 10: تم تحديث RefreshMMI باستخدام PWM
تم الآن تنفيذ تعديلنا الجديد ، وأنت جاهز للتجميع.
- انقر فوق "إنشاء"
زر لبدء بناء المشروع.
- عند انتهاء البناء ، وسّع مجلد "الثنائيات" وانقر بزر الماوس الأيمن على * .hex file لتحديد "فلاش إلى الجهاز ..".
- حدد الجهاز المتصل في النافذة المنبثقة. يتم الآن تعبئة "مبرمج الفلاش" مسبقًا بجميع البيانات المطلوبة ، وأنت على استعداد للنقر فوق "البرنامج".
- انقر فوق "برنامج".
بعد فترة وجيزة من انتهاء البرمجة ، يومض جهازك النهائي الآن بإصدارك المعدل من Switch On / Off.
3.2.1 اختبر الوظيفة
اختبر الوظيفة عن طريق التحقق من أنه يمكنك تغيير لون RGB LED.
- اختبر الوظائف باستخدام "Basic Set ON" في وحدة التحكم بجهاز الكمبيوتر.
- انقر فوق "Basic Set ON" لرؤية التغيير في اللون.
لقد تحققنا الآن من أن التعديل يعمل كما هو متوقع وقمنا بتغيير GPIO لاستخدام PWM بنجاح.
4 مناقشة
في هذا التمرين ، قمنا بتعديل مفتاح التشغيل / الإيقاف من التحكم في مصباح LED البسيط إلى التحكم في مؤشر LED متعدد الألوان. اعتمادًا على قيم PWM ، يمكننا الآن التغيير إلى أي لون وكثافة.
- هل يجب استخدام "مفتاح ثنائي" كنوع جهاز لهذا التطبيق؟
- ما هي فئات الأوامر الأنسب لمصباح LED متعدد الألوان؟
للإجابة على السؤال ، يجب الرجوع إلى مواصفات Z-Wave:
- مواصفات نوع الجهاز Z-Wave Plus v2
- مواصفات فئة أوامر تطبيق Z-Wave
يختتم هذا البرنامج التعليمي حول كيفية تعديل وتغيير كائنات GPI الخاصة بـ Z-Wave S.ampتطبيق le.
اقرأ المزيد عن هذا الدليل وقم بتنزيل ملف PDF:
المستندات / الموارد
![]() |
SILICON LABS Lab 3B - تعديل مفتاح التشغيل / الإيقاف [بي دي اف] دليل المستخدم مختبر 3 ب ، تعديل التبديل ، تشغيل ، إيقاف ، Z- الموجة ، SDK |