SILICON LABS Lab 3B – Փոփոխել անջատիչի միացման/անջատման ուղեցույցը
Այս գործնական վարժությունը ցույց կտա, թե ինչպես կարելի է փոփոխություն կատարել s-երից մեկի վրաampհավելվածներ, որոնք առաքվում են որպես Z-Wave SDK-ի մաս:
Այս վարժությունը «Z-Wave 1-օրյա դասընթաց» շարքի մի մասն է:
- Ներառեք SmartStart-ի օգտագործումը
- Ապակոդավորել Z-Wave ՌԴ շրջանակները՝ օգտագործելով Zniffer-ը
- 3A. Կազմել անջատիչը/անջատել և միացնել վրիպազերծումը
3B. Փոփոխել անջատիչը միացնել/անջատել - Հասկացեք FLiRS սարքերը
ՀԻՄՆԱԿԱՆ ԱՌԱՆՁՆԱՀԱՏԿՈՒԹՅՈՒՆՆԵՐ
- Փոխել GPIO-ն
- Իրականացնել PWM
- Օգտագործեք ներկառուցված RGB LED
1. Ներածություն
Այս վարժությունը կառուցված է նախորդ վարժության վրա՝ «3A. Compile Switch On/Off and enable debug», որը ցույց է տվել, թե ինչպես կարելի է կազմել և օգտագործել Switch On/Off s-ը:ampհայտը.
Այս վարժությունում մենք փոփոխություններ ենք կատարելու sample հավելվածը, փոխելով GPIO-ն, որը վերահսկում է LED-ը: Բացի այդ, մենք կօգտագործենք RGB LED և կսովորենք, թե ինչպես օգտագործել PWM գույները փոխելու համար:
1.1 Սարքավորումների պահանջներ
- 1 WSTK Գլխավոր Զարգացման Խորհուրդ
- 1 Z-Wave ռադիոյի մշակման տախտակ՝ ZGM130S SiP մոդուլ
- 1 UZB վերահսկիչ
- 1 USB Zniffer
1.2 Ծրագրային ապահովման պահանջներ
- Simplicity Studio v4
- Z-Wave 7 SDK
- Z-Wave PC Controller
- Z-Wave Zniffer
Նկար 1: Զարգացման հիմնական տախտակ Z-Wave SiP մոդուլով
1.3 Նախադրյալներ
Նախորդ Hands-On վարժություններն անդրադարձել են, թե ինչպես օգտագործել PC Controller-ը և Zniffer հավելվածը՝ Z-Wave ցանց կառուցելու և ՌԴ հաղորդակցությունը զարգացնելու նպատակով: Այս վարժությունը ենթադրում է, որ դուք ծանոթ եք այս գործիքներին:
Նախորդ Hands-On վարժությունները նաև անդրադարձել են, թե ինչպես օգտագործել sampհավելվածներ, որոնք առաքվում են Z-Wave SDK-ով: Այս վարժությունը ենթադրում է, որ դուք ծանոթ եք ս.-ներից մեկի օգտագործմանն ու կազմմանըampհայտերը։
Z-Wave շրջանակը գալիս է ապարատային աբստրակցիոն շերտով (HAL), որը սահմանված է board.h-ի և board.c-ի կողմից, ինչը հնարավորություն է տալիս իրականացնել ձեր ապարատային պլատֆորմներից յուրաքանչյուրի համար:
Սարքավորումների աբստրակցիոն շերտը (HAL) ծրագրային կոդ է համակարգի սարքաշարի և դրա ծրագրաշարի միջև, որն ապահովում է հետևողական ինտերֆեյս հավելվածների համար, որոնք կարող են աշխատել մի քանի տարբեր ապարատային հարթակներում: Առաջ տանելtagԱյս հնարավորությունից ելնելով, հավելվածները պետք է մուտք ունենան սարքավորում HAL-ի կողմից տրամադրված API-ի միջոցով, այլ ոչ թե ուղղակիորեն: Այնուհետև, երբ տեղափոխվում եք նոր սարքաշար, ձեզ միայն անհրաժեշտ է թարմացնել HAL-ը:
2.1 Բաց Սample Project
Այս վարժության համար անհրաժեշտ է բացել Switch On / Off sampհայտը. Եթե ավարտել եք «3A Compile Switch OnOff and enable debug» վարժությունը, այն արդեն պետք է բացվի ձեր Simplicity Studio IDE-ում:
Այս բաժնում մենք կանդրադառնանք տախտակին files և հասկանալ, թե ինչպես են լուսադիոդները սկզբնավորվում:
- Հիմնականից file «SwitchOnOff.c», գտնեք «ApplicationInit()» և նկատեք զանգը Board_Init():
- Տեղադրեք ձեր դասընթացավարը Board_Init()-ում և սեղմեք F3՝ հայտարարությունը բացելու համար:
3. Board_Init()-ում նկատեք, թե ինչպես են BOARD_LED_COUNT-ում պարունակվող LED-ները սկզբնավորվում Board_Con-figLed() կոչվող միջոցով:
4. Տեղադրեք ձեր դասընթացավարը BOARD_LED_COUNT-ի վրա և սեղմեք F3՝ հայտարարությունը բացելու համար:
5. led_id_t-ում սահմանված LED-ները հետևյալն են.
6. Վերադարձ դեպի տախտակ.գ file.
7. Տեղադրեք ձեր դասընթացավարը Board_ConfigLed()-ի վրա և սեղմեք F3՝ հայտարարությունը բացելու համար:
8. Ուշադրություն դարձրեք, որ led_id_t-ում սահմանված բոլոր LED-ները այնուհետև կազմաձևված են Board_ConfigLed()-ում՝ որպես ելք:
Սա նշանակում է, որ զարգացման տախտակի բոլոր LED-ները արդեն սահմանված են որպես ելքեր և պատրաստ են օգտագործման:
3. Փոփոխություն կատարեք Z-Wave S-ումample Դիմում
Այս վարժությունում մենք կփոփոխենք GPIO-ները, որոնք օգտագործվում են LED-ի համար միացնել/անջատել s-ում:ampհայտը. Նախորդ բաժնում մենք իմացանք, թե ինչպես են մշակման տախտակի բոլոր 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
o BOARD_RGB1_G
o BOARD_RGB1_B
3. Կանչեք «Board_SetLed»-ը 3 անգամ և՛ OFF, և՛ ON վիճակում, ինչպես ցույց է տրված Նկար 7-ում:
Մեր նոր փոփոխությունն այժմ իրականացվել է, և դուք պատրաստ եք կազմելու:
Սարքը ծրագրավորելու քայլերն ընդգրկված են «3A Compile Switch OnOff and enable Debug» վարժությունում և հակիրճ կրկնվել այստեղ.
- Սեղմեք «Կառուցել»
կոճակ՝ նախագիծը սկսելու համար:
- Երբ կառուցումն ավարտվի, ընդլայնեք «Բինարներ» պանակը և աջ սեղմեք *.hex-ի վրա file «Flash to Device...» ընտրելու համար:
- Բացվող պատուհանում ընտրեք միացված սարքավորումը: «Flash Programmer»-ն այժմ նախապես լցված է բոլոր անհրաժեշտ տվյալներով, և դուք պատրաստ եք սեղմել «Ծրագիր»:
- Սեղմեք «Ծրագիր»:
Կարճ ժամանակ անց ծրագրավորումն ավարտվում է, և ձեր վերջնական սարքն այժմ փայլատակում է Switch On/Off-ի փոփոխված տարբերակով:
3.1.1 Փորձարկել ֆունկցիոնալությունը
Նախորդ վարժություններում մենք արդեն ներառել ենք սարքը SmartStart-ի միջոցով ապահով Z-Wave ցանցում: Հրահանգների համար տե՛ս «Ներառել SmartStart-ի օգտագործումը» վարժությունը:
Հուշում Ներքին file համակարգը չի ջնջվում վերածրագրավորման միջև: Սա թույլ է տալիս հանգույցին մնալ ցանցում և պահել նույն ցանցի բանալիները, երբ այն վերածրագրավորեք:
Եթե Ձեզ անհրաժեշտ է փոխել, օրինակ, մոդուլի աշխատանքի հաճախականությունը կամ DSK-ը, դուք պետք է «Ջնջեք» չիպը, նախքան նոր հաճախականությունը կգրվի ներքին NVM-ում:
Որպես այդպիսին, ձեր սարքն արդեն ներառված է ցանցում:
Ստուգեք ֆունկցիոնալությունը՝ հաստատելով, որ կարող եք միացնել և անջատել RGB LED-ը:
- Ստուգեք ֆունկցիոնալությունը՝ օգտագործելով «Basic Set ON» և «Basic Set OFF» համակարգչի կարգավորիչում: RGB LED-ը պետք է միացվի և անջատվի:
- RGB LED-ը կարող է նաև միացնել և անջատվել սարքավորման վրա BTN0-ի միջոցով:
Մենք այժմ ստուգել ենք, որ փոփոխությունն աշխատում է այնպես, ինչպես սպասվում էր, և հաջողությամբ փոխել ենք GPIO-ն, որն օգտագործվում է S-ումample Դիմում
3.2 Փոխել RGB գույնի բաղադրիչը
Այս բաժնում մենք կփոփոխենք RGB LED-ը և կփորձենք խառնել գունային բաղադրիչները:
«RGB գունային մոդելի գույնը նկարագրվում է՝ նշելով, թե կարմիր, կանաչ և կապույտ յուրաքանչյուրից որքան է ներառված: Գույնը արտահայտվում է որպես RGB եռյակ (r,g,b), որի յուրաքանչյուր բաղադրիչ կարող է տատանվել զրոյից մինչև սահմանված առավելագույն արժեք: Եթե բոլոր բաղադրիչները զրոյական են, արդյունքը սև է. եթե բոլորը առավելագույնն են, արդյունքը ամենավառ ներկայացված սպիտակն է»:
Վիքիպեդիայից սկսած RGB գույնի մոդել:
Քանի որ նախորդ բաժնում միացրել ենք բոլոր գունային բաղադրիչները, RGB LED-ը սպիտակ է, երբ միացված է: Անհատական բաղադրիչները միացնելով և անջատելով՝ մենք կարող ենք փոխել LED-ը: Բացի այդ, յուրաքանչյուր գունային բաղադրիչի ինտենսիվությունը կարգավորելով, մենք կարող ենք բոլոր գույները դարձնել դրանց միջև: Դրա համար մենք կօգտագործենք PWM՝ GPIO-ները կառավարելու համար:
- ApplicationTask()-ում սկզբնավորեք PwmTimer-ը և կարգավորեք RGB կապերը PWM-ում, ինչպես ցույց է տրված Նկար 9-ում:
- RefreshMMI()-ում մենք կօգտագործենք պատահական թիվ յուրաքանչյուր գունային բաղադրիչի համար: Օգտագործեք rand()՝ ամեն անգամ, երբ LED-ը միացված է, նոր արժեք ստանալու համար:
- Օգտագործեք DPRINTF()՝ նոր ստեղծված արժեքը սերիական կարգաբերման պորտում գրելու համար:
- Փոխարինեք Board_SetLed()-ով Board_RgbLedSetPwm(), որպեսզի օգտագործեք պատահական արժեքը:
- Թարմացված RefreshMMI()-ի համար տես Նկար 10-ը:
Նկար 10. RefreshMMI-ը թարմացվել է PWM-ով
Մեր նոր փոփոխությունն այժմ իրականացվել է, և դուք պատրաստ եք կազմելու:
- Սեղմեք «Կառուցել»
կոճակ՝ նախագիծը սկսելու համար:
- Երբ կառուցումն ավարտվի, ընդլայնեք «Բինարներ» պանակը և աջ սեղմեք *.hex-ի վրա file «Flash to Device...» ընտրելու համար:
- Բացվող պատուհանում ընտրեք միացված սարքավորումը: «Flash Programmer»-ն այժմ նախապես լցված է բոլոր անհրաժեշտ տվյալներով, և դուք պատրաստ եք սեղմել «Ծրագիր»:
- Սեղմեք «Ծրագիր»:
Կարճ ժամանակ անց ծրագրավորումն ավարտվում է, և ձեր վերջնական սարքն այժմ փայլատակում է Switch On/Off-ի փոփոխված տարբերակով:
3.2.1 Փորձարկել ֆունկցիոնալությունը
Ստուգեք ֆունկցիոնալությունը՝ հաստատելով, որ կարող եք փոխել RGB LED-ի գույնը:
- Փորձարկեք ֆունկցիոնալությունը՝ օգտագործելով «Basic Set ON» PC Controller-ում:
- Գույնի փոփոխություն տեսնելու համար սեղմեք «Basic Set ON»:
Այժմ մենք հաստատել ենք, որ փոփոխությունն աշխատում է այնպես, ինչպես սպասվում էր, և հաջողությամբ փոխել ենք GPIO-ն՝ PWM-ի օգտագործման համար:
4 Քննարկում
Այս վարժությունում մենք փոփոխել ենք «Միացում/անջատումը»՝ պարզ լուսադիոդի կառավարումից մինչև բազմագույն լուսադիոդի կառավարում: Կախված PWM արժեքներից, այժմ մենք կարող ենք փոխել ցանկացած գույնի և ինտենսիվության:
- Արդյո՞ք այս հավելվածի համար «Երկուական անջատիչ» պետք է օգտագործվի որպես Սարքի տեսակ:
- Հրամանների ո՞ր դասերն են ավելի հարմար բազմագույն LED-ի համար:
Հարցին պատասխանելու համար դուք պետք է դիմեք Z-Wave բնութագրին.
- Z-Wave Plus v2 Սարքի տեսակի ճշգրտում
- Z-Wave հավելվածի հրամանի դասի ճշգրտում
Սա ավարտում է ձեռնարկը, թե ինչպես փոփոխել և փոխել Z-Wave S-ի GPIO-ներըample Դիմում.
Կարդացեք ավելին այս ձեռնարկի մասին և ներբեռնեք PDF.
Փաստաթղթեր / ռեսուրսներ
![]() |
SILICON LABS Lab 3B - Փոփոխել անջատիչը միացնել/անջատել [pdf] Օգտագործողի ուղեցույց Lab 3B, Modify Switch, On, Off, Z-Wave, SDK |