సిలికాన్ లోగో

సిలికాన్ ల్యాబ్స్ ల్యాబ్ 3B – స్విచ్ ఆన్/ఆఫ్ యూజర్ గైడ్‌ని సవరించండి

సిలికాన్ ల్యాబ్స్ ల్యాబ్ 3B - స్విచ్ ఆన్/ఆఫ్‌ని సవరించండి

ఈ ప్రయోగాత్మక వ్యాయామం sలో ఒకదానిలో ఎలా మార్పు చేయాలో ప్రదర్శిస్తుందిampZ-వేవ్ SDKలో భాగంగా పంపబడే le అప్లికేషన్లు.

ఈ వ్యాయామం "Z-వేవ్ 1-డే కోర్సు" సిరీస్‌లో భాగం.

  1. SmartStartని ఉపయోగించడాన్ని చేర్చండి
  2. Zniffer ఉపయోగించి Z-వేవ్ RF ఫ్రేమ్‌లను డీక్రిప్ట్ చేయండి
  3. 3A: కంపైల్ స్విచ్ ఆన్/ఆఫ్ మరియు డీబగ్‌ని ప్రారంభించండి
    3B: స్విచ్ ఆన్/ఆఫ్‌ని సవరించండి
  4. FLiRS పరికరాలను అర్థం చేసుకోండి

 

కీ ఫీచర్లు

  • GPIOని మార్చండి
  • PWMని అమలు చేయండి
  • ఆన్-బోర్డ్ RGB LEDని ఉపయోగించండి

 

1. పరిచయం

ఈ వ్యాయామం మునుపటి వ్యాయామం “3A: కంపైల్ స్విచ్ ఆన్/ఆఫ్ మరియు డీబగ్‌ని ఎనేబుల్ చేయండి” పైన రూపొందించబడింది, ఇది స్విచ్ ఆన్/ఆఫ్ లను ఎలా కంపైల్ చేయాలో మరియు ఎలా ఉపయోగించాలో ప్రదర్శించింది.ample అప్లికేషన్.

ఈ వ్యాయామంలో మేము లకు సవరణ చేస్తాముample అప్లికేషన్, LED ని నియంత్రించే GPIOని మార్చడం ద్వారా. అదనంగా, మేము RGB LEDని ఉపయోగిస్తాము మరియు రంగులను మార్చడానికి PWMని ఎలా ఉపయోగించాలో నేర్చుకుంటాము.

1.1 హార్డ్‌వేర్ అవసరాలు

  • 1 WSTK ప్రధాన అభివృద్ధి బోర్డు
  • 1 Z-వేవ్ రేడియో డెవలప్‌మెంట్ బోర్డ్: ZGM130S SiP మాడ్యూల్
  • 1 UZB కంట్రోలర్
  • 1 USB Zniffer

1.2 సాఫ్ట్‌వేర్ అవసరాలు

  • సింప్లిసిటీ స్టూడియో v4
  • Z-వేవ్ 7 SDK
  • Z-వేవ్ PC కంట్రోలర్
  • Z-వేవ్ Zniffer

Z-వేవ్ SiP మాడ్యూల్‌తో FIG 1 ప్రధాన అభివృద్ధి బోర్డు

మూర్తి 1: Z-వేవ్ SiP మాడ్యూల్‌తో ప్రధాన అభివృద్ధి బోర్డు

1.3 అవసరాలు
Z-వేవ్ నెట్‌వర్క్‌ను రూపొందించడానికి మరియు అభివృద్ధి ప్రయోజనం కోసం RF కమ్యూనికేషన్‌ను సంగ్రహించడానికి PC కంట్రోలర్ మరియు Zniffer అప్లికేషన్‌ను ఎలా ఉపయోగించాలో మునుపటి హ్యాండ్-ఆన్ వ్యాయామాలు వివరించబడ్డాయి. ఈ సాధనాలు మీకు బాగా తెలిసినవని ఈ వ్యాయామం ఊహిస్తుంది.

మునుపటి హ్యాండ్-ఆన్ వ్యాయామాలు s ఎలా ఉపయోగించాలో కూడా కవర్ చేయబడ్డాయిampZ-వేవ్ SDKతో రవాణా చేసే le అప్లికేషన్లు. ఈ వ్యాయామం మీకు sలో ఒకదానిని ఉపయోగించడం మరియు కంపైల్ చేయడం గురించి బాగా తెలుసునని ఊహిస్తుందిample అప్లికేషన్లు.

 

2. బోర్డు ఇంటర్‌ఫేస్‌ను నావిగేట్ చేయండి

Z-Wave ఫ్రేమ్‌వర్క్ మీ ప్రతి హార్డ్‌వేర్ ప్లాట్‌ఫారమ్‌ల కోసం అమలులను కలిగి ఉండే అవకాశాన్ని అందించే బోర్డు.h మరియు board.c ద్వారా నిర్వచించబడిన హార్డ్‌వేర్ అబ్‌స్ట్రాక్షన్ లేయర్ (HAL)తో వస్తుంది.

హార్డ్‌వేర్ అబ్‌స్ట్రాక్షన్ లేయర్ (HAL) అనేది సిస్టమ్ యొక్క హార్డ్‌వేర్ మరియు దాని సాఫ్ట్‌వేర్ మధ్య ప్రోగ్రామ్ కోడ్, ఇది అనేక విభిన్న హార్డ్‌వేర్ ప్లాట్‌ఫారమ్‌లపై అమలు చేయగల అప్లికేషన్‌ల కోసం స్థిరమైన ఇంటర్‌ఫేస్‌ను అందిస్తుంది. అడ్వాన్ తీసుకోవడానికిtagఈ సామర్ధ్యం యొక్క ఇ, అప్లికేషన్‌లు నేరుగా కాకుండా HAL అందించిన API ద్వారా హార్డ్‌వేర్‌ను యాక్సెస్ చేయాలి. తర్వాత, మీరు కొత్త హార్డ్‌వేర్‌కి మారినప్పుడు, మీరు HALని మాత్రమే అప్‌డేట్ చేయాలి.

2.1 ఓపెన్ Sampలే ప్రాజెక్ట్
ఈ వ్యాయామం కోసం మీరు స్విచ్ ఆన్ / ఆఫ్ లను తెరవాలిample అప్లికేషన్. మీరు “3A కంపైల్ స్విచ్ ఆన్‌ఆఫ్ చేసి డీబగ్‌ని ఎనేబుల్ చేయండి” అనే వ్యాయామాన్ని పూర్తి చేసినట్లయితే, అది ఇప్పటికే మీ సింప్లిసిటీ స్టూడియో IDEలో తెరవబడి ఉండాలి.

ఈ విభాగంలో మేము బోర్డుని చూస్తాము files మరియు LED లు ఎలా ప్రారంభించబడతాయో అర్థం చేసుకోండి.

  1. ప్రధాన నుండి file “SwitchOnOff.c”, “ApplicationInit()”ని గుర్తించి, Board_Init()కి కాల్‌ని గమనించండి.
  2. మీ కోర్సును Board_Init()లో ఉంచండి మరియు డిక్లరేషన్‌ను తెరవడానికి F3ని నొక్కండి.

FIG 2 ఓపెన్ Sampలే ప్రాజెక్ట్

3. Board_Init()BOARD_LED_COUNTలో ఉన్న LEDలు Board_Con-figLed() అని పిలవబడే ద్వారా ఎలా ప్రారంభించబడుతున్నాయో గమనించండి

FIG 3 ఓపెన్ Sampలే ప్రాజెక్ట్

4. మీ కోర్సును BOARD_LED_COUNTలో ఉంచండి మరియు డిక్లరేషన్‌ను తెరవడానికి F3ని నొక్కండి.
5. led_id_tలో నిర్వచించబడిన LED లు క్రింది విధంగా ఉన్నాయి:

FIG 4 ఓపెన్ Sampలే ప్రాజెక్ట్

6. board.cకి తిరిగి వెళ్ళు file.
7. మీ కోర్సర్‌ను Board_ConfigLed()లో ఉంచండి మరియు డిక్లరేషన్‌ను తెరవడానికి F3ని నొక్కండి.
8. led_id_tలో నిర్వచించబడిన అన్ని LEDలు బోర్డు_కాన్ఫిగ్‌లెడ్()లో అవుట్‌పుట్‌గా కాన్ఫిగర్ చేయబడడాన్ని గమనించండి.

FIG 5 ఓపెన్ Sampలే ప్రాజెక్ట్

దీని అర్థం ఏమిటంటే, డెవలప్‌మెంట్ బోర్డ్‌లోని అన్ని LEDలు ఇప్పటికే అవుట్‌పుట్‌లుగా నిర్వచించబడ్డాయి మరియు ఉపయోగించడానికి సిద్ధంగా ఉన్నాయి.

 

3. Z-వేవ్ Sకి సవరణ చేయండిampలే అప్లికేషన్

ఈ వ్యాయామంలో మేము స్విచ్ ఆన్/ఆఫ్ లలో LED కోసం ఉపయోగించే GPIOలను సవరించడం జరుగుతుందిample అప్లికేషన్. డెవలప్‌మెంట్ బోర్డ్‌లోని అన్ని LEDలు ఇప్పటికే అవుట్‌పుట్‌గా ఎలా ప్రారంభించబడ్డాయో మరియు ఉపయోగించడానికి సిద్ధంగా ఉన్నాయని మునుపటి విభాగంలో మేము తెలుసుకున్నాము.

3.1 RGB LEDని ఉపయోగించండి

మేము బటన్ బోర్డ్‌లోని LEDకి బదులుగా Z-వేవ్ డెవలప్‌మెంట్ మాడ్యూల్‌లో ఆన్‌బోర్డ్ RGB LEDని ఉపయోగిస్తాము.

1. SwitchOnOff.c ప్రధాన అప్లికేషన్‌లో మూర్తి 6లో చూసినట్లుగా, RefreshMMI ఫంక్షన్‌ను గుర్తించండి file.

ఎటువంటి మార్పులు లేకుండా FIG 6 RefreshMMI

మూర్తి 6: ఎలాంటి మార్పులు లేకుండా రిఫ్రెష్ఎమ్ఎమ్ఐ

2. మేము "Board_SetLed" ఫంక్షన్‌ని ఉపయోగిస్తాము కానీ GPIOని మారుస్తాము
o BOARD_RGB1_R
o BOARD_RGB1_G
o BOARD_RGB1_B

3. Figure 3లో చూపిన విధంగా, "Board_SetLed"కి 7 సార్లు ఆఫ్ స్టేట్ మరియు ఆన్ స్టేట్ రెండింటిలో కాల్ చేయండి.

FIG 7 RefreshMMI RGB LEDని ఉపయోగించడానికి సవరించబడింది

మా కొత్త సవరణ ఇప్పుడు అమలు చేయబడింది మరియు మీరు కంపైల్ చేయడానికి సిద్ధంగా ఉన్నారు.
పరికరాన్ని ప్రోగ్రామ్ చేసే దశలు “3A కంపైల్ స్విచ్ ఆన్‌ఆఫ్ మరియు డీబగ్‌ని ప్రారంభించు” వ్యాయామంలో కవర్ చేయబడ్డాయి మరియు ఇక్కడ క్లుప్తంగా పునరావృతమవుతాయి:

  1. "బిల్డ్" పై క్లిక్ చేయండి ఐకాన్ 1 ప్రాజెక్ట్ నిర్మాణాన్ని ప్రారంభించడానికి బటన్.
  2. బిల్డ్ పూర్తయినప్పుడు, “బైనరీస్” ఫోల్డర్‌ని విస్తరించండి మరియు *.hexపై కుడి క్లిక్ చేయండి file "ఫ్లాష్ టు డివైజ్.." ఎంచుకోవడానికి.
  3. పాప్-అప్ విండోలో కనెక్ట్ చేయబడిన హార్డ్‌వేర్‌ను ఎంచుకోండి. "ఫ్లాష్ ప్రోగ్రామర్" ఇప్పుడు అవసరమైన మొత్తం డేటాతో ముందే పూరించబడింది మరియు మీరు "ప్రోగ్రామ్"పై క్లిక్ చేయడానికి సిద్ధంగా ఉన్నారు.
  4. "ప్రోగ్రామ్" క్లిక్ చేయండి.

కొద్దిసేపటి తర్వాత ప్రోగ్రామింగ్ పూర్తయింది మరియు మీ ముగింపు పరికరం ఇప్పుడు స్విచ్ ఆన్/ఆఫ్ యొక్క మీ సవరించిన సంస్కరణతో ఫ్లాష్ చేయబడుతుంది.

3.1.1 కార్యాచరణను పరీక్షించండి

మునుపటి వ్యాయామాలలో మేము ఇప్పటికే పరికరాన్ని SmartStartని ఉపయోగించి సురక్షిత 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 రంగు మోడల్.

FIG 8 RGB రంగు భాగాలు కలిపి

మేము మునుపటి విభాగంలో అన్ని రంగు భాగాలను ప్రారంభించినందున RGB LED ఆన్‌లో ఉన్నప్పుడు తెల్లగా ఉంటుంది. వ్యక్తిగత భాగాలను ఆన్ మరియు ఆఫ్ చేయడం ద్వారా, మేము LEDని మార్చవచ్చు. అదనంగా, ప్రతి రంగు భాగాల తీవ్రతను సర్దుబాటు చేయడం ద్వారా, మేము మధ్యలో అన్ని రంగులను తయారు చేయవచ్చు. దాని కోసం, మేము GPIOలను నియంత్రించడానికి PWMని ఉపయోగిస్తాము.

  1. ApplicationTask()లో PwmTimerని ప్రారంభించండి మరియు మూర్తి 9లో చూపిన విధంగా RGB పిన్‌లను PWMకి సెటప్ చేయండి.                                                                                FIG 9 PWM అప్లికేషన్ టాస్క్‌లో ప్రారంభించబడింది
  2. RefreshMMI()లో, మేము ప్రతి రంగు కాంపోనెంట్ కోసం యాదృచ్ఛిక సంఖ్యను ఉపయోగిస్తాము. LED ఆన్ చేయబడిన ప్రతిసారీ కొత్త విలువను పొందడానికి rand()ని ఉపయోగించండి.
  3. సీరియల్ డీబగ్ పోర్ట్‌కి కొత్తగా రూపొందించబడిన విలువను వ్రాయడానికి DPRINTF()ని ఉపయోగించండి.
  4. యాదృచ్ఛిక విలువను ఉపయోగించడానికి Board_SetLed()ని Board_RgbLedSetPwm()తో భర్తీ చేయండి.
  5. నవీకరించబడిన RefreshMMI() కోసం మూర్తి 10ని చూడండి.

FIG 10 RefreshMMI PWMతో నవీకరించబడింది

మూర్తి 10: PWMతో RefreshMMI నవీకరించబడింది

మా కొత్త సవరణ ఇప్పుడు అమలు చేయబడింది మరియు మీరు కంపైల్ చేయడానికి సిద్ధంగా ఉన్నారు.

  1. "బిల్డ్" పై క్లిక్ చేయండి ఐకాన్ 1 ప్రాజెక్ట్ నిర్మాణాన్ని ప్రారంభించడానికి బటన్.
  2. బిల్డ్ పూర్తయినప్పుడు, “బైనరీస్” ఫోల్డర్‌ని విస్తరించండి మరియు *.hexపై కుడి క్లిక్ చేయండి file "ఫ్లాష్ టు డివైజ్.." ఎంచుకోవడానికి.
  3. పాప్-అప్ విండోలో కనెక్ట్ చేయబడిన హార్డ్‌వేర్‌ను ఎంచుకోండి. "ఫ్లాష్ ప్రోగ్రామర్" ఇప్పుడు అవసరమైన మొత్తం డేటాతో ముందే పూరించబడింది మరియు మీరు "ప్రోగ్రామ్"పై క్లిక్ చేయడానికి సిద్ధంగా ఉన్నారు.
  4. "ప్రోగ్రామ్" క్లిక్ చేయండి.

కొద్దిసేపటి తర్వాత ప్రోగ్రామింగ్ పూర్తయింది మరియు మీ ముగింపు పరికరం ఇప్పుడు స్విచ్ ఆన్/ఆఫ్ యొక్క మీ సవరించిన సంస్కరణతో ఫ్లాష్ చేయబడుతుంది.

3.2.1 ఫంక్షనాలిటీని పరీక్షించండి

మీరు RGB LED రంగును మార్చగలరని ధృవీకరించడం ద్వారా కార్యాచరణను పరీక్షించండి.

  1. PC కంట్రోలర్‌లో “బేసిక్ సెట్ ఆన్” ఉపయోగించి కార్యాచరణను పరీక్షించండి.
  2. రంగులో మార్పును చూడటానికి “బేసిక్ సెట్ ఆన్”పై క్లిక్ చేయండి.

మేము ఇప్పుడు సవరణ ఆశించిన విధంగా పని చేస్తోందని ధృవీకరించాము మరియు PWMని ఉపయోగించడానికి GPIOని విజయవంతంగా మార్చాము.

4. చర్చ

ఈ వ్యాయామంలో మేము సాధారణ LED ని నియంత్రించడం నుండి బహుళ-రంగు LED ని నియంత్రించే వరకు స్విచ్ ఆన్/ఆఫ్‌ని సవరించాము. PWM విలువలను బట్టి, మనం ఇప్పుడు ఏదైనా రంగు మరియు తీవ్రతకు మార్చవచ్చు.

  • ఈ అప్లికేషన్ కోసం "బైనరీ స్విచ్"ని పరికర రకంగా ఉపయోగించాలా?
  • బహుళ-రంగు LED కోసం ఏ కమాండ్ తరగతులు బాగా సరిపోతాయి?

ప్రశ్నకు సమాధానమివ్వడానికి, మీరు Z-వేవ్ స్పెసిఫికేషన్‌ను చూడాలి:

  • Z-వేవ్ ప్లస్ v2 పరికర రకం స్పెసిఫికేషన్
  • Z-వేవ్ అప్లికేషన్ కమాండ్ క్లాస్ స్పెసిఫికేషన్

Z-Wave S యొక్క GPIOలను ఎలా సవరించాలి మరియు మార్చాలి అనే ట్యుటోరియల్‌ను ఇది ముగించిందిample అప్లికేషన్.

 

ఈ మాన్యువల్ గురించి మరింత చదవండి & PDFని డౌన్‌లోడ్ చేయండి:

పత్రాలు / వనరులు

సిలికాన్ ల్యాబ్స్ ల్యాబ్ 3B - స్విచ్ ఆన్/ఆఫ్‌ని సవరించండి [pdf] యూజర్ గైడ్
ల్యాబ్ 3B, సవరించు స్విచ్, ఆన్, ఆఫ్, Z-వేవ్, SDK

సూచనలు

వ్యాఖ్యానించండి

మీ ఇమెయిల్ చిరునామా ప్రచురించబడదు. అవసరమైన ఫీల్డ్‌లు గుర్తించబడ్డాయి *