SILICON LABS Lab 3B - سوئچ آن/آف صارف گائیڈ میں ترمیم کریں۔
یہ ہینڈ آن ایکسرسائز یہ ظاہر کرے گی کہ s میں سے کسی ایک میں ترمیم کیسے کی جائے۔ampلی ایپلی کیشنز جو Z-Wave SDK کے حصے کے طور پر بھیجی جاتی ہیں۔
یہ مشق "Z-Wave 1 روزہ کورس" سیریز کا حصہ ہے۔
- سمارٹ اسٹارٹ کا استعمال شامل کریں۔
- Zniffer کا استعمال کرتے ہوئے Z-Wave RF فریموں کو ڈیکرپٹ کریں۔
- 3A: سوئچ آن/آف مرتب کریں اور ڈیبگ کو فعال کریں۔
3B: سوئچ آن/آف میں ترمیم کریں۔ - FLiRS آلات کو سمجھیں۔
اہم خصوصیات
- GPIO تبدیل کریں۔
- PWM کو لاگو کریں۔
- آن بورڈ آرجیبی ایل ای ڈی استعمال کریں۔
1. تعارف
یہ مشق پچھلی مشق "3A: کمپائل سوئچ آن/آف اور ڈیبگ کو فعال کریں" کے اوپری حصے پر تعمیر کر رہی ہے، جس نے یہ ظاہر کیا ہے کہ سوئچ آن/آف کو کیسے مرتب اور استعمال کیا جائے۔ampدرخواست
اس مشق میں ہم s میں ایک ترمیم کریں گے۔ample ایپلیکیشن، GPIO کو تبدیل کرکے جو LED کو کنٹرول کرتا ہے۔ اس کے علاوہ، ہم ایک RGB LED استعمال کریں گے اور رنگ تبدیل کرنے کے لیے PWM استعمال کرنے کا طریقہ سیکھیں گے۔
1.1 ہارڈ ویئر کے تقاضے
- 1 WSTK مین ڈویلپمنٹ بورڈ
- 1 Z-Wave ریڈیو ڈویلپمنٹ بورڈ: ZGM130S SiP ماڈیول
- 1 UZB کنٹرولر
- 1 USB Zniffer
1.2 سافٹ ویئر کے تقاضے
- سادگی اسٹوڈیو v4
- Z-Wave 7 SDK
- Z-Wave PC کنٹرولر
- Z-Wave Zniffer
تصویر 1: Z-Wave SiP ماڈیول کے ساتھ مین ڈویلپمنٹ بورڈ
1.3 شرطیں
پچھلی ہینڈ آن مشقوں میں Z-Wave نیٹ ورک بنانے اور ترقیاتی مقصد کے لیے RF کمیونیکیشن کیپچر کرنے کے لیے PC کنٹرولر اور Zniffer ایپلیکیشن کا استعمال کرنے کا طریقہ بتایا گیا ہے۔ یہ مشق فرض کرتی ہے کہ آپ ان ٹولز سے واقف ہیں۔
پچھلی ہینڈ آن مشقوں میں یہ بھی بتایا گیا ہے کہ ایس کو کیسے استعمال کیا جائے۔ampلی ایپلی کیشنز جو Z-Wave SDK کے ساتھ بھیجتی ہیں۔ یہ مشق فرض کرتی ہے کہ آپ s میں سے کسی ایک کو استعمال کرنے اور مرتب کرنے سے واقف ہیں۔ampلی ایپلی کیشنز.
Z-Wave فریم ورک ایک ہارڈویئر ایبسٹریکشن لیئر (HAL) کے ساتھ آتا ہے جس کی وضاحت board.h اور board.c سے ہوتی ہے، جو آپ کے ہر ہارڈویئر پلیٹ فارم پر عمل درآمد کرنے کا امکان فراہم کرتی ہے۔
ہارڈ ویئر ایبسٹریکشن لیئر (HAL) سسٹم کے ہارڈویئر اور اس کے سافٹ ویئر کے درمیان پروگرام کوڈ ہے جو ایپلی کیشنز کے لیے ایک مستقل انٹرفیس فراہم کرتا ہے جو کئی مختلف ہارڈویئر پلیٹ فارمز پر چل سکتا ہے۔ ایڈوان لیناtagاس صلاحیت میں سے، ایپلی کیشنز کو براہ راست کے بجائے HAL کے فراہم کردہ API کے ذریعے ہارڈ ویئر تک رسائی حاصل کرنی چاہیے۔ پھر، جب آپ نئے ہارڈ ویئر پر جاتے ہیں، تو آپ کو صرف HAL کو اپ ڈیٹ کرنے کی ضرورت ہوتی ہے۔
2.1 اوپن ایسampپروجیکٹ
اس مشق کے لیے آپ کو سوئچ آن/آف کھولنا ہوگا۔ampدرخواست اگر آپ نے "3A کمپائل سوئچ آن آف اور ڈیبگ کو فعال کریں" کی مشق مکمل کی ہے، تو اسے پہلے ہی آپ کے Simplicity Studio IDE میں کھولنا چاہیے۔
اس سیکشن میں ہم بورڈ کو دیکھیں گے۔ files اور سمجھیں کہ ایل ای ڈی کی ابتدا کیسے کی جاتی ہے۔
- مین سے file "SwitchOnOff.c"، "ApplicationInit()" کو تلاش کریں اور Board_Init () کو کال کریں۔
- اپنے کورسر کو Board_Init() پر رکھیں اور اعلان کو کھولنے کے لیے F3 پر دبائیں۔
3. Board_Init()میں نوٹس کریں کہ کس طرح BOARD_LED_COUNT میں موجود LEDs کو Board_Con-figLed() کہتے ہوئے شروع کیا جا رہا ہے۔
4. اپنے کورسر کو BOARD_LED_COUNT پر رکھیں اور اعلان کو کھولنے کے لیے F3 پر دبائیں۔
5. led_id_t میں بیان کردہ ایل ای ڈی مندرجہ ذیل ہیں:
6. board.c پر واپس جائیں file.
7. اپنے کورسر کو Board_ConfigLed() پر رکھیں اور اعلان کو کھولنے کے لیے F3 پر دبائیں۔
8. نوٹ کریں کہ led_id_t میں بیان کردہ تمام ایل ای ڈیز پھر بورڈ_کنفیگلیڈ() میں آؤٹ پٹ کے طور پر ترتیب دی گئی ہیں۔
اس کا مطلب یہ ہے کہ ڈیولپمنٹ بورڈ پر تمام ایل ای ڈی پہلے ہی آؤٹ پٹ کے طور پر بیان کی گئی ہیں اور استعمال کے لیے تیار ہیں۔
3. Z-Wave S میں ترمیم کریں۔ampدرخواست۔
اس مشق میں ہم سوئچ آن/آف میں ایل ای ڈی کے لیے استعمال ہونے والے GPIOs میں ترمیم کریں گے۔ampدرخواست پچھلے حصے میں ہم نے سیکھا کہ کس طرح ڈیولپمنٹ بورڈ پر تمام ایل ای ڈی پہلے سے ہی آؤٹ پٹ کے طور پر شروع کی گئی ہیں اور استعمال کے لیے تیار ہیں۔
3.1 RGB LED استعمال کریں۔
ہم Z-Wave ڈویلپمنٹ ماڈیول پر آن بورڈ RGB LED استعمال کریں گے، بٹن بورڈ پر LED کے بجائے۔
1. RefreshMMI فنکشن کو تلاش کریں، جیسا کہ شکل 6 میں دیکھا گیا ہے، SwitchOnOff.c مین ایپلیکیشن میں file.
شکل 6: بغیر کسی ترمیم کے ایم ایم آئی کو تازہ کریں۔
2. ہم فنکشن "Board_SetLed" استعمال کریں گے لیکن GPIO کو تبدیل کریں گے۔
o BOARD_RGB1_R
o BOARD_RGB1_G
o BOARD_RGB1_B
3۔ "Board_SetLed" کو 3 بار آف حالت اور آن حالت میں کال کریں، جیسا کہ شکل 7 میں دکھایا گیا ہے۔
ہماری نئی ترمیم اب لاگو ہو چکی ہے، اور آپ مرتب کرنے کے لیے تیار ہیں۔
ڈیوائس کو پروگرام کرنے کے اقدامات کا احاطہ مشق "3A کمپائل سوئچ آن آف اور ڈیبگ کو فعال کریں" میں کیا گیا ہے، اور یہاں مختصراً دہرایا گیا ہے:
- "تعمیر" پر کلک کریں
پروجیکٹ کی تعمیر شروع کرنے کے لیے بٹن۔
- جب تعمیر مکمل ہو جائے تو، "Binaries" فولڈر کو پھیلائیں اور *.hex پر دائیں کلک کریں۔ file "Flash to Device.." کو منتخب کرنے کے لیے۔
- پاپ اپ ونڈو میں منسلک ہارڈویئر کو منتخب کریں۔ "فلیش پروگرامر" اب تمام ضروری ڈیٹا سے بھرا ہوا ہے، اور آپ "پروگرام" پر کلک کرنے کے لیے تیار ہیں۔
- "پروگرام" پر کلک کریں۔
تھوڑی دیر کے بعد پروگرامنگ ختم ہو جاتی ہے، اور آپ کا اینڈ ڈیوائس اب آپ کے سوئچ آن/آف کے ترمیم شدہ ورژن کے ساتھ چمکا ہوا ہے۔
3.1.1 فعالیت کی جانچ کریں۔
پچھلی مشقوں میں ہم نے اسمارٹ اسٹارٹ کا استعمال کرتے ہوئے ڈیوائس کو پہلے ہی محفوظ Z-Wave نیٹ ورک میں شامل کیا ہے۔ ہدایات کے لیے "سمارٹ اسٹارٹ کا استعمال شامل کریں" ورزش سے رجوع کریں۔
اندرونی اشارہ file ری پروگرامنگ کے درمیان سسٹم کو مٹایا نہیں جاتا ہے۔ یہ نوڈ کو نیٹ ورک میں رہنے اور اسی نیٹ ورک کیز کو رکھنے کی اجازت دیتا ہے جب آپ اسے دوبارہ پروگرام کرتے ہیں۔
اگر آپ کو تبدیل کرنے کی ضرورت ہے مثلاً وہ فریکوئنسی جس پر ماڈیول چلتا ہے یا DSK، آپ کو چپ کو "Erase" کرنے کی ضرورت ہے اس سے پہلے کہ نئی فریکوئنسی اندرونی NVM پر لکھی جائے۔
اس طرح، آپ کا آلہ پہلے ہی نیٹ ورک میں شامل ہے۔
اس بات کی توثیق کرکے فعالیت کی جانچ کریں کہ آپ RGB LED کو آن اور آف کر سکتے ہیں۔
- پی سی کنٹرولر میں "بنیادی سیٹ آن" اور "بنیادی سیٹ آف" کا استعمال کرتے ہوئے فعالیت کی جانچ کریں۔ آرجیبی ایل ای ڈی کو آن اور آف ہونا چاہیے۔
- ہارڈ ویئر پر BTN0 کا استعمال کرتے ہوئے RGB LED کو آن اور آف بھی کیا جا سکتا ہے۔
اب ہم نے تصدیق کر لی ہے کہ ترمیم حسب توقع کام کر رہی ہے اور S میں استعمال ہونے والے GPIO کو کامیابی سے تبدیل کر دیا ہے۔ampدرخواست۔
3.2 آر جی بی رنگ کے اجزاء کو تبدیل کریں۔
اس حصے میں، ہم RGB LED میں ترمیم کریں گے اور رنگ کے اجزاء کو ملانے کی کوشش کریں گے۔
"RGB کلر ماڈل میں ایک رنگ اس بات کی نشاندہی کرتے ہوئے بیان کیا جاتا ہے کہ سرخ، سبز اور نیلے رنگ میں سے ہر ایک میں کتنا شامل ہے۔ رنگ کو ایک RGB ٹرپلٹ (r,g,b) کے طور پر ظاہر کیا جاتا ہے، جس کا ہر جزو صفر سے ایک متعین زیادہ سے زیادہ قدر تک مختلف ہو سکتا ہے۔ اگر تمام اجزاء صفر پر ہیں تو نتیجہ سیاہ ہے؛ اگر سب زیادہ سے زیادہ ہیں، تو نتیجہ سب سے زیادہ روشن سفید ہے۔
ویکیپیڈیا سے آن آر جی بی کلر ماڈل۔
چونکہ ہم نے پچھلے حصے میں تمام رنگین اجزاء کو فعال کیا ہے جب RGB LED آن ہو تو سفید ہوتا ہے۔ انفرادی اجزاء کو آن اور آف کر کے، ہم ایل ای ڈی کو تبدیل کر سکتے ہیں۔ اس کے علاوہ، ہر رنگ کے اجزاء کی شدت کو ایڈجسٹ کرکے، ہم درمیان میں تمام رنگ بنا سکتے ہیں۔ اس کے لیے، ہم GPIOs کو کنٹرول کرنے کے لیے PWM استعمال کریں گے۔
- ApplicationTask() میں PwmTimer شروع کریں اور RGB پنوں کو PWM پر سیٹ اپ کریں، جیسا کہ شکل 9 میں دکھایا گیا ہے۔
- RefreshMMI() میں، ہم ہر رنگ کے اجزاء کے لیے ایک بے ترتیب نمبر استعمال کریں گے۔ ہر بار ایل ای ڈی آن ہونے پر ایک نئی قدر حاصل کرنے کے لیے رینڈ() کا استعمال کریں۔
- سیریل ڈیبگ پورٹ پر نئی تیار کردہ قدر لکھنے کے لیے DPRINTF() استعمال کریں۔
- بے ترتیب قدر استعمال کرنے کے لیے Board_SetLed() کو Board_RgbLedSetPwm() سے تبدیل کریں۔
- تازہ کاری شدہ RefreshMMI() کے لیے شکل 10 سے رجوع کریں۔
شکل 10: PWM کے ساتھ ریفریش ایم ایم آئی کو اپ ڈیٹ کیا گیا۔
ہماری نئی ترمیم اب لاگو ہو چکی ہے، اور آپ مرتب کرنے کے لیے تیار ہیں۔
- "تعمیر" پر کلک کریں
پروجیکٹ کی تعمیر شروع کرنے کے لیے بٹن۔
- جب تعمیر مکمل ہو جائے تو، "Binaries" فولڈر کو پھیلائیں اور *.hex پر دائیں کلک کریں۔ file "Flash to Device.." کو منتخب کرنے کے لیے۔
- پاپ اپ ونڈو میں منسلک ہارڈویئر کو منتخب کریں۔ "فلیش پروگرامر" اب تمام ضروری ڈیٹا سے بھرا ہوا ہے، اور آپ "پروگرام" پر کلک کرنے کے لیے تیار ہیں۔
- "پروگرام" پر کلک کریں۔
تھوڑی دیر کے بعد پروگرامنگ ختم ہو جاتی ہے، اور آپ کا اینڈ ڈیوائس اب آپ کے سوئچ آن/آف کے ترمیم شدہ ورژن کے ساتھ چمکا ہوا ہے۔
3.2.1 فعالیت کی جانچ کریں۔
اس بات کی تصدیق کر کے فعالیت کی جانچ کریں کہ آپ RGB LED کا رنگ تبدیل کر سکتے ہیں۔
- پی سی کنٹرولر میں "بنیادی سیٹ آن" کا استعمال کرتے ہوئے فعالیت کی جانچ کریں۔
- رنگ میں تبدیلی دیکھنے کے لیے "بنیادی سیٹ آن" پر کلک کریں۔
اب ہم نے تصدیق کر لی ہے کہ ترمیم حسب توقع کام کر رہی ہے اور PWM استعمال کرنے کے لیے GPIO کو کامیابی سے تبدیل کر دیا ہے۔
4 بحث۔
اس مشق میں ہم نے ایک سادہ ایل ای ڈی کو کنٹرول کرنے سے ملٹی کلر ایل ای ڈی کو کنٹرول کرنے کے لیے سوئچ آن/آف کو تبدیل کیا ہے۔ PWM اقدار پر منحصر ہے، اب ہم کسی بھی رنگ اور شدت میں تبدیل کر سکتے ہیں۔
- کیا اس ایپلیکیشن کے لیے "بائنری سوئچ" کو بطور ڈیوائس ٹائپ استعمال کیا جانا چاہیے؟
- ملٹی کلر ایل ای ڈی کے لیے کون سی کمانڈ کلاسز زیادہ موزوں ہیں؟
سوال کا جواب دینے کے لیے، آپ کو Z-Wave کی تفصیلات سے رجوع کرنا چاہیے:
- Z-Wave Plus v2 ڈیوائس کی قسم کی تفصیلات
- Z-Wave ایپلیکیشن کمانڈ کلاس کی تفصیلات
یہ اس ٹیوٹوریل کو ختم کرتا ہے کہ Z-Wave S کے GPIOs کو کیسے تبدیل اور تبدیل کیا جائے۔ampلی درخواست.
اس دستی کے بارے میں مزید پڑھیں اور پی ڈی ایف ڈاؤن لوڈ کریں:
دستاویزات / وسائل
![]() |
SILICON LABS Lab 3B - سوئچ آن/آف میں ترمیم کریں۔ [پی ڈی ایف] یوزر گائیڈ لیب 3B، موڈیفائی سوئچ، آن، آف، Z-Wave، SDK |