SILICON LABS Lab 3B - સ્વીચ ઓન/ઓફ વપરાશકર્તા માર્ગદર્શિકામાં ફેરફાર કરો
આ હેન્ડ-ઓન કવાયત દર્શાવે છે કે sમાંથી એક પર કેવી રીતે ફેરફાર કરવોampલે એપ્લીકેશન કે જે Z-વેવ SDK ના ભાગ રૂપે મોકલવામાં આવે છે.
આ કવાયત "Z-વેવ 1-દિવસીય કોર્સ" શ્રેણીનો એક ભાગ છે.
- સ્માર્ટસ્ટાર્ટનો ઉપયોગ કરીને સમાવેશ કરો
- Zniffer નો ઉપયોગ કરીને Z-Wave RF ફ્રેમ્સને ડિક્રિપ્ટ કરો
- 3A: કમ્પાઇલ સ્વિચ ઓન/ઓફ અને ડીબગને સક્ષમ કરો
3B: સ્વીચ ચાલુ/બંધમાં ફેરફાર કરો - FLiRS ઉપકરણોને સમજો
મુખ્ય લક્ષણો
- GPIO બદલો
- PWM લાગુ કરો
- ઓન-બોર્ડ RGB LED નો ઉપયોગ કરો
1. પરિચય
આ કવાયત અગાઉની કવાયત "3A: કમ્પાઇલ સ્વિચ ઓન/ઓફ અને ડીબગને સક્ષમ કરો" ની ટોચ પર બની રહી છે, જેણે સ્વિચ ઓન/ઓફનું કમ્પાઇલ અને ઉપયોગ કેવી રીતે કરવું તે દર્શાવ્યું હતું.ampલે એપ્લિકેશન.
આ કવાયતમાં અમે s માં ફેરફાર કરીશુંample એપ્લિકેશન, GPIO ને બદલીને જે LED ને નિયંત્રિત કરે છે. વધુમાં, અમે RGB LED નો ઉપયોગ કરીશું અને રંગો બદલવા માટે PWM નો ઉપયોગ કેવી રીતે કરવો તે શીખીશું.
1.1 હાર્ડવેર જરૂરીયાતો
- 1 WSTK મુખ્ય વિકાસ બોર્ડ
- 1 Z-વેવ રેડિયો ડેવલપમેન્ટ બોર્ડ: ZGM130S SiP મોડ્યુલ
- 1 UZB કંટ્રોલર
- 1 USB Zniffer
1.2 સૉફ્ટવેર આવશ્યકતાઓ
- સરળતા સ્ટુડિયો v4
- Z-વેવ 7 SDK
- Z-વેવ પીસી કંટ્રોલર
- Z-વેવ Zniffer
આકૃતિ 1: Z-વેવ SiP મોડ્યુલ સાથેનું મુખ્ય વિકાસ બોર્ડ
1.3 પૂર્વજરૂરીયાતો
અગાઉની હેન્ડ્સ-ઓન એક્સરસાઇઝમાં Z-વેવ નેટવર્ક બનાવવા અને વિકાસ હેતુ માટે RF સંચારને કેપ્ચર કરવા માટે PC કંટ્રોલર અને Zniffer એપ્લિકેશનનો ઉપયોગ કેવી રીતે કરવો તે આવરી લેવામાં આવ્યું છે. આ કસરત ધારે છે કે તમે આ સાધનોથી પરિચિત છો.
અગાઉની હેન્ડ-ઓન એક્સરસાઇઝમાં s નો ઉપયોગ કેવી રીતે કરવો તે પણ આવરી લેવામાં આવ્યું છેampલે એપ્લીકેશન કે જે Z-વેવ SDK સાથે મોકલવામાં આવે છે. આ કવાયત ધારે છે કે તમે sમાંથી એકનો ઉપયોગ અને સંકલન કરવા માટે પરિચિત છોampલે એપ્લિકેશન્સ.
Z-વેવ ફ્રેમવર્ક board.h અને board.c દ્વારા વ્યાખ્યાયિત હાર્ડવેર એબ્સ્ટ્રેક્શન લેયર (HAL) સાથે આવે છે, જે તમારા દરેક હાર્ડવેર પ્લેટફોર્મ માટે અમલીકરણની શક્યતા પૂરી પાડે છે.
હાર્ડવેર એબ્સ્ટ્રેક્શન લેયર (HAL) એ સિસ્ટમના હાર્ડવેર અને તેના સોફ્ટવેર વચ્ચેનો પ્રોગ્રામ કોડ છે જે વિવિધ હાર્ડવેર પ્લેટફોર્મ્સ પર ચાલી શકે તેવી એપ્લિકેશનો માટે સુસંગત ઇન્ટરફેસ પૂરો પાડે છે. એડવાન લેવા માટેtagઆ ક્ષમતાના e, એપ્લીકેશનોએ સીધાને બદલે HAL દ્વારા પૂરા પાડવામાં આવેલ API મારફતે હાર્ડવેરને એક્સેસ કરવું જોઈએ. પછી, જ્યારે તમે નવા હાર્ડવેર પર જાઓ, તમારે માત્ર HAL અપડેટ કરવાની જરૂર છે.
2.1 ઓપન એસampલે પ્રોજેક્ટ
આ કસરત માટે તમારે સ્વીચ ઓન/ઓફ ખોલવાની જરૂર છેampલે એપ્લિકેશન. જો તમે "3A કમ્પાઇલ સ્વિચ ઓનઓફ અને સક્ષમ ડીબગ" કવાયત પૂર્ણ કરી છે, તો તે તમારા સિમ્પલિસિટી સ્ટુડિયો 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 માં વ્યાખ્યાયિત LEDs નીચે મુજબ છે:
6. board.c પર પાછા ફરો file.
7. તમારા કોર્સરને Board_ConfigLed() પર મૂકો અને ઘોષણા ખોલવા માટે F3 પર દબાવો.
8. નોંધ લો કે led_id_t માં વ્યાખ્યાયિત તમામ LEDs પછી આઉટપુટ તરીકે Board_ConfigLed() માં ગોઠવેલ છે.
આનો અર્થ એ છે કે ડેવલપમેન્ટ બોર્ડ પરના તમામ LEDs પહેલેથી જ આઉટપુટ તરીકે વ્યાખ્યાયિત છે અને ઉપયોગ માટે તૈયાર છે.
3. Z-વેવ S માં ફેરફાર કરોampલે એપ્લિકેશન
આ કવાયતમાં આપણે સ્વીચ ઓન/ઓફમાં LED માટે ઉપયોગમાં લેવાતા GPIO ને સંશોધિત કરીશું.ampલે એપ્લિકેશન. અગાઉના વિભાગમાં આપણે શીખ્યા કે કેવી રીતે વિકાસ બોર્ડ પરના તમામ એલઈડી પહેલેથી જ આઉટપુટ તરીકે આરંભિત અને ઉપયોગ માટે તૈયાર છે.
3.1 RGB LED નો ઉપયોગ કરો
અમે બટન બોર્ડ પરના LEDને બદલે Z-વેવ ડેવલપમેન્ટ મોડ્યુલ પર ઓનબોર્ડ RGB LED નો ઉપયોગ કરીશું.
1. SwitchOnOff.c મુખ્ય એપ્લિકેશનમાં, આકૃતિ 6 માં બતાવ્યા પ્રમાણે, RefreshMMI કાર્યને શોધો file.
આકૃતિ 6: કોઈપણ ફેરફારો વિના MMI તાજું કરો
2. અમે "Board_SetLed" ફંક્શનનો ઉપયોગ કરીશું પરંતુ GPIO ને બદલીશું
o BOARD_RGB1_R
o BOARD_RGB1_G
o BOARD_RGB1_B
3. આકૃતિ 3 માં બતાવ્યા પ્રમાણે, બંધ સ્થિતિમાં અને ચાલુ સ્થિતિમાં 7 વખત "Board_SetLed" ને કૉલ કરો.
અમારું નવું ફેરફાર હવે લાગુ કરવામાં આવ્યું છે, અને તમે કમ્પાઈલ કરવા માટે તૈયાર છો.
ઉપકરણને પ્રોગ્રામ કરવાના પગલાં "3A કમ્પાઇલ સ્વિચ ઓનઓફ અને સક્ષમ ડીબગ" માં આવરી લેવામાં આવ્યા છે, અને સંક્ષિપ્તમાં અહીં પુનરાવર્તિત છે:
- "બિલ્ડ" પર ક્લિક કરો
પ્રોજેક્ટ બનાવવાનું શરૂ કરવા માટે બટન.
- જ્યારે બિલ્ડ સમાપ્ત થાય, ત્યારે “બાઈનરીઝ” ફોલ્ડરને વિસ્તૃત કરો અને *.hex પર જમણું ક્લિક કરો file "ઉપકરણ માટે ફ્લેશ.." પસંદ કરવા માટે.
- પોપ-અપ વિન્ડોમાં કનેક્ટેડ હાર્ડવેર પસંદ કરો. "ફ્લેશ પ્રોગ્રામર" હવે તમામ જરૂરી ડેટાથી ભરેલું છે, અને તમે "પ્રોગ્રામ" પર ક્લિક કરવા માટે તૈયાર છો.
- "પ્રોગ્રામ" પર ક્લિક કરો.
થોડા સમય પછી પ્રોગ્રામિંગ સમાપ્ત થાય છે, અને તમારું અંતિમ ઉપકરણ હવે સ્વિચ ઓન/ઓફના તમારા સંશોધિત સંસ્કરણ સાથે ફ્લેશ થઈ ગયું છે.
3.1.1 કાર્યક્ષમતાનું પરીક્ષણ કરો
અગાઉની કવાયતમાં અમે સ્માર્ટસ્ટાર્ટનો ઉપયોગ કરીને ઉપકરણને સુરક્ષિત Z-વેવ નેટવર્કમાં સામેલ કર્યું છે. સૂચનાઓ માટે "સ્માર્ટસ્ટાર્ટનો ઉપયોગ કરીને શામેલ કરો" કસરતનો સંદર્ભ લો.
આંતરિક સંકેત file સિસ્ટમ પુનઃપ્રોગ્રામિંગ વચ્ચે ભૂંસી નથી. આ નોડને નેટવર્કમાં રહેવાની પરવાનગી આપે છે અને જ્યારે તમે તેને પુનઃપ્રોગ્રામ કરો ત્યારે તે જ નેટવર્ક કીને રાખો.
જો તમારે બદલવાની જરૂર હોય, દા.ત. મોડ્યુલ જે ફ્રિકવન્સી પર કામ કરે છે અથવા DSK, તો તમારે નવી ફ્રીક્વન્સી આંતરિક NVM પર લખવામાં આવે તે પહેલાં તમારે ચિપને "ઇરેઝ" કરવાની જરૂર છે.
જેમ કે, તમારું ઉપકરણ પહેલેથી જ નેટવર્કમાં શામેલ છે.
તમે RGB LED ને ચાલુ અને બંધ કરી શકો છો તેની ચકાસણી કરીને કાર્યક્ષમતાનું પરીક્ષણ કરો.
- PC કંટ્રોલરમાં "મૂળભૂત સેટ ઓન" અને "બેઝિક સેટ ઓફ" નો ઉપયોગ કરીને કાર્યક્ષમતાનું પરીક્ષણ કરો. RGB LED ચાલુ અને બંધ હોવું જોઈએ.
- હાર્ડવેર પર BTN0 નો ઉપયોગ કરીને RGB LED ને પણ ચાલુ અને બંધ કરી શકાય છે.
અમે હવે ચકાસ્યું છે કે ફેરફાર અપેક્ષા મુજબ કામ કરી રહ્યું છે અને S માં ઉપયોગમાં લેવાતા GPIO ને સફળતાપૂર્વક બદલ્યું છે.ampલે એપ્લિકેશન
3.2 RGB રંગ ઘટક બદલો
આ વિભાગમાં, અમે RGB LED માં ફેરફાર કરીશું અને રંગ ઘટકોને મિશ્રિત કરવાનો પ્રયાસ કરીશું.
“RGB કલર મૉડલમાં એક રંગનું વર્ણન એ દર્શાવે છે કે લાલ, લીલો અને વાદળી દરેકનો કેટલો સમાવેશ થાય છે. રંગને RGB ત્રિપુટી (r,g,b) તરીકે દર્શાવવામાં આવે છે, જેનો દરેક ઘટક શૂન્યથી નિર્ધારિત મહત્તમ મૂલ્ય સુધી બદલાઈ શકે છે. જો તમામ ઘટકો શૂન્ય પર હોય તો પરિણામ કાળું છે; જો બધા મહત્તમ હોય, તો પરિણામ સૌથી તેજસ્વી રજૂ કરી શકાય તેવું સફેદ છે."
વિકિપીડિયા પરથી RGB કલર મોડલ.
અમે અગાઉના વિભાગમાં બધા રંગ ઘટકોને સક્ષમ કર્યા હોવાથી RGB LED જ્યારે ચાલુ હોય ત્યારે સફેદ હોય છે. વ્યક્તિગત ઘટકોને ચાલુ અને બંધ કરીને, અમે એલઇડી બદલી શકીએ છીએ. વધુમાં, દરેક રંગ ઘટકોની તીવ્રતાને સમાયોજિત કરીને, અમે વચ્ચેના બધા રંગો બનાવી શકીએ છીએ. તેના માટે, અમે GPIO ને નિયંત્રિત કરવા માટે PWM નો ઉપયોગ કરીશું.
- ApplicationTask() માં PwmTimer શરૂ કરો અને RGB પિનને PWM પર સેટઅપ કરો, આકૃતિ 9 માં બતાવ્યા પ્રમાણે.
- RefreshMMI(), અમે દરેક રંગ ઘટક માટે રેન્ડમ નંબરનો ઉપયોગ કરીશું. જ્યારે પણ LED ચાલુ હોય ત્યારે નવી કિંમત મેળવવા માટે રેન્ડ() નો ઉપયોગ કરો.
- સીરીયલ ડીબગ પોર્ટ પર નવી જનરેટ થયેલ કિંમત લખવા માટે DPRINTF() નો ઉપયોગ કરો.
- રેન્ડમ મૂલ્યનો ઉપયોગ કરવા માટે Board_SetLed() ને Board_RgbLedSetPwm() સાથે બદલો.
- અપડેટ કરેલ RefreshMMI() માટે આકૃતિ 10 નો સંદર્ભ લો.
આકૃતિ 10: PWM સાથે અપડેટ થયેલ રીફ્રેશMMI
અમારું નવું ફેરફાર હવે લાગુ કરવામાં આવ્યું છે, અને તમે કમ્પાઈલ કરવા માટે તૈયાર છો.
- "બિલ્ડ" પર ક્લિક કરો
પ્રોજેક્ટ બનાવવાનું શરૂ કરવા માટે બટન.
- જ્યારે બિલ્ડ સમાપ્ત થાય, ત્યારે “બાઈનરીઝ” ફોલ્ડરને વિસ્તૃત કરો અને *.hex પર જમણું ક્લિક કરો file "ઉપકરણ માટે ફ્લેશ.." પસંદ કરવા માટે.
- પોપ-અપ વિન્ડોમાં કનેક્ટેડ હાર્ડવેર પસંદ કરો. "ફ્લેશ પ્રોગ્રામર" હવે તમામ જરૂરી ડેટાથી ભરેલું છે, અને તમે "પ્રોગ્રામ" પર ક્લિક કરવા માટે તૈયાર છો.
- "પ્રોગ્રામ" પર ક્લિક કરો.
થોડા સમય પછી પ્રોગ્રામિંગ સમાપ્ત થાય છે, અને તમારું અંતિમ ઉપકરણ હવે સ્વિચ ઓન/ઓફના તમારા સંશોધિત સંસ્કરણ સાથે ફ્લેશ થઈ ગયું છે.
3.2.1 કાર્યક્ષમતાનું પરીક્ષણ કરો
તમે RGB LED નો રંગ બદલી શકો છો તે ચકાસીને કાર્યક્ષમતાનું પરીક્ષણ કરો.
- પીસી કંટ્રોલરમાં "બેઝિક સેટ ઓન" નો ઉપયોગ કરીને કાર્યક્ષમતાનું પરીક્ષણ કરો.
- રંગમાં ફેરફાર જોવા માટે "મૂળભૂત સેટ ચાલુ" પર ક્લિક કરો.
અમે હવે ચકાસ્યું છે કે ફેરફાર અપેક્ષા મુજબ કામ કરી રહ્યું છે અને PWM નો ઉપયોગ કરવા માટે GPIO ને સફળતાપૂર્વક બદલ્યું છે.
4 ચર્ચા
આ કવાયતમાં અમે સ્વીચ ઓન/ઓફને સાદા એલઈડીને નિયંત્રિત કરવાથી મલ્ટી-કલર એલઈડીને નિયંત્રિત કરવા માટે સંશોધિત કર્યું છે. PWM મૂલ્યો પર આધાર રાખીને, અમે હવે કોઈપણ રંગ અને તીવ્રતામાં બદલી શકીએ છીએ.
- શું આ એપ્લિકેશન માટે ઉપકરણ પ્રકાર તરીકે "બાઈનરી સ્વિચ" નો ઉપયોગ કરવો જોઈએ?
- મલ્ટિ-કલર LED માટે કયા કમાન્ડ ક્લાસ વધુ યોગ્ય છે?
પ્રશ્નનો જવાબ આપવા માટે, તમારે Z-વેવ સ્પષ્ટીકરણનો સંદર્ભ લેવો જોઈએ:
- Z-વેવ પ્લસ v2 ઉપકરણ પ્રકાર સ્પષ્ટીકરણ
- Z-વેવ એપ્લિકેશન કમાન્ડ વર્ગ સ્પષ્ટીકરણ
આ Z-વેવ S ના GPIO ને કેવી રીતે સંશોધિત અને બદલવું તે અંગેના ટ્યુટોરીયલને સમાપ્ત કરે છે.ampલે એપ્લિકેશન.
આ માર્ગદર્શિકા વિશે વધુ વાંચો અને PDF ડાઉનલોડ કરો:
દસ્તાવેજો / સંસાધનો
![]() |
SILICON LABS Lab 3B - સ્વીચ ચાલુ/બંધમાં ફેરફાર કરો [પીડીએફ] વપરાશકર્તા માર્ગદર્શિકા લેબ 3B, સ્વિચમાં ફેરફાર કરો, ચાલુ કરો, બંધ કરો, Z-વેવ, SDK |