LOGO SILICON

SILICON LABS Lab 3B - Rêbernameya Bikarhêner Vekêşandin/Pêvekêşana Biguherîne

SILICON LABS Lab 3B - Veguheztin / Vekêşandin biguherînin

Ev temrîn-li destan dê nîşan bide ka meriv çawa guheztinê li ser yek ji sampsepanên ku wekî beşek ji Z-Wave SDK-ê têne şandin.

Ev temrîn beşek ji rêzenivîsa "Z-Wave 1-Day Course" ye.

  1. SmartStart bikar bînin
  2. Çarçoveyên Z-Wave RF bi karanîna Zniffer veşêre
  3. 3A: Berhevkirin / Vemirandin û Debug Çalak bike
    3B: Veguheztin / Vekêşandin biguherînin
  4. Amûrên FLiRS fêm bikin

 

TAYBETÊN KEY

  • GPIO biguherînin
  • PWM bicîh bikin
  • Li ser panelê RGB LED bikar bînin

 

1. Destpêk

Ev temrîn li ser tetbîqata berê ya "3A: Berhev Bikin / Vemirîne û Debug çalak bike" ava dibe, ya ku destnîşan kir ka meriv çawa çawa veguheztina On/Off s berhev dike û bikar tîneample sepanê.

Di vê temrînê de em ê guheztinek s bikinample sepanê, bi guhertina GPIO ya ku LED-ê kontrol dike. Wekî din, em ê RGB LED bikar bînin û fêr bibin ka meriv çawa PWM bikar tîne da ku rengan biguhezîne.

1.1 Pêdiviyên Hardware

  • 1 Lijneya Pêşkeftina Sereke ya WSTK
  • 1 Lijneya Pêşkeftina Radyoya Z-Wave: Modula SiP ya ZGM130S
  • 1 Kontrolker UZB
  • 1 USB Zniffer

1.2 Pêdiviyên Nermalavê

  • Simplicity Studio v4
  • Z-Wave 7 SDK
  • Kontrolker PC-ya Z-Wave
  • Z-Wave Zniffer

FIG 1 Lijneya Pêşkeftinê ya Sereke bi Modula Z-Wave SiP

jimar 1: Desteya Pêşkeftinê ya Sereke bi Modula Z-Wave SiP

1.3 Pêwîste
Xebatên Hands-On ên berê vedihewîne ka meriv çawa meriv PC Controller û serîlêdana Zniffer bikar tîne da ku tora Z-Wave ava bike û pêwendiya RF-ê ji bo mebesta pêşkeftinê bigire. Ev temrîn texmîn dike ku hûn bi van amûran nas in.

temrîn Hands-On Previous jî çawa bi kar sampsepanên ku bi Z-Wave SDK-ê re têne şandin. Ev temrîn ferz dike ku hûn bi bikaranîna û berhevkirina yek ji s nas inample sepanên.

 

2. Navrûya Desteyê bigerin

Çarçoveya Z-Wave bi qatek abstraksiyonê ya hardware (HAL) ve tê ku ji hêla board.h û board.c ve hatî destnîşan kirin, îmkana pêkanîna pêkanînan ji bo her platformek hardware ya we peyda dike.

Hardware Abstraction Layer (HAL) koda bernameyê ye di navbera hardware ya pergalê û nermalava wê de ku ji bo serîlêdanên ku dikarin li ser gelek platformên hardware yên cihêreng bixebitin navbeynek domdar peyda dike. To take advantagJi vê kapasîteyê, divê serîlêdan bi riya API-ya ku ji hêla HAL ve hatî peyda kirin, ne rasterast bigihîjin hardware. Dûv re, gava ku hûn berbi hardware nû ve diçin, hûn tenê hewce ne ku HAL-ê nûve bikin.

2.1 S. vekinample Proje
Ji bo vê temrînê hûn hewce ne ku sSwitch On / Off vekinample sepanê. Ger we tetbîqata "3A Compile Vebixe Off û debug çalak bike" qedand, divê ew jixwe di Simplicity Studio IDE-ya we de were vekirin.

Di vê beşê de em ê li panelê binêrin files û fêm bikin ka LED-ê çawa têne destpêkirin.

  1. Ji sereke file "SwitchOnOff.c", "ApplicationInit()" bibînin û banga Board_Init () bibînin.
  2. Kurserê xwe bidin ser Board_Init() û li ser F3 bikirtînin da ku danezanê vekin.

FIG 2 S vekeample Proje

3. Di Board_Init() de bala xwe bidin ka LEDên ku di BOARD_LED_COUNT de hene çawa ji hêla Board_Con-figLed() ve têne destpêkirin têne destpêkirin

FIG 3 S vekeample Proje

4. Kursa xwe bidin ser BOARD_LED_COUNT û pê li F3 bikin da ku danezanê vekin.
5. LED-yên ku di led_id_t de hatine destnîşankirin wiha ne:

FIG 4 S vekeample Proje

6. Vegere lijneyê.c file.
7. Kurserê xwe bidin ser Board_ConfigLed() û li ser F3 bikirtînin da ku danezanê vekin.
8. Bala xwe bidinê ku hemî LED-yên ku di led_id_t de hatine destnîşankirin paşê di Board_ConfigLed() de wekî encam têne mîheng kirin.

FIG 5 S vekeample Proje

Wateya vê yekê ev e, ku hemî LED-ên li ser panela pêşkeftinê jixwe wekî encam têne destnîşan kirin û ji bo karanîna amade ne.

 

3. Guhertinek ji Z-Wave S re bikinample Serlêdan

Di vê xebatê de em ê GPIO-yên ku ji bo LED-ê di Vekêşandin / Vemirandin de têne bikar anîn biguhezînin.ample sepanê. Di beşa berê de em fêr bûn ku çawa hemî LED-ên li ser panela pêşkeftinê jixwe wekî derketin û ji karanîna amade ne têne destpêkirin.

3.1 RGB LED bikar bînin

Em ê li şûna LED-a li ser panela bişkojkê, li ser modula pêşkeftina Z-Wave-ya RGB-ya serhêl bikar bînin.

1. Fonksiyon RefreshMMI, wekî ku di Xiflteya 6-ê de tê dîtin, di serîlêdana sereke ya SwitchOnOff.c de bibînin file.

FIG 6 RefreshMMI bêyî ti guhertinan

Figure 6: RefreshMMI bêyî ti guhertinan

2. Em ê fonksiyona "Board_SetLed" bikar bînin lê GPIO biguherînin
o BOARD_RGB1_R
o BOARD_RGB1_G
o BOARD_RGB1_B

3. 3 caran bangî "Board_SetLed" bikin hem di rewşa OFF û hem jî di rewşa ON de, wek ku di jimar 7 de tê nîşandan.

FIG 7 RefreshMMI hate guherandin da ku RGB LED bikar bîne

Guhertina meya nû nuha hatî sepandin, û hûn amade ne ku berhev bikin.
Pêngavên ji bo bernamekirina amûrekê di temrîn "3A Berhevkarê Vebigire û Debug çalak bike" ve girêdayî ye û bi kurtî li vir têne dubare kirin:

  1. Li ser "avakirin" bikirtînin ONKON 1 bişkojka ku dest bi avakirina projeyê bike.
  2. Dema ku avakirin qediya, peldanka "Binaries" berfireh bikin û li ser *.hex-ê rast bikirtînin file ji bo hilbijartina "Flash to Device...".
  3. Di pencereya pop-up de hardware girêdayî hilbijêrin. "Bernameçêkera Flash" naha bi hemî daneyên hewce ve hatî dagirtin, û hûn amade ne ku li ser "Bernameyê" bikirtînin.
  4. "Bername" bikirtînin.

Piştî demek kurt bername qediya, û cîhaza weya paşîn naha bi guhertoya weya guhertî ya Veguheztin/Offiçkirin tê şûştin.

3.1.1 Karbidestiyê ceribandin

Di temrînên berê de me amûrê berê bi karanîna SmartStart ve nav torgilokek ewledar a Z-Wave da. Ji bo talîmatan serî li temrîn "Bikaranîna SmartStart vekin".

Hint Navxweyî file pergal di navbera ji nû ve bernamekirinê de nayê jêbirin. Ev dihêle ku nodek di torê de bimîne û gava ku hûn wê ji nû ve bername dikin heman bişkojkên torê bigire.

Heke hûn hewce ne ku wek mînak frekansa ku modul lê dixebite an DSK-ê biguherînin, divê hûn çîpê "Erase" bikin berî ku frekansa nû li NVM-ya hundurîn were nivîsandin.

Bi vî rengî, cîhaza we jixwe di nav torê de ye.

Karbidestiyê bi verastkirina ku hûn dikarin RGB LED-ya RGB vekin û vemirînin biceribînin.

  • Di Kontrolkerê PC-ê de fonksiyonê bi karanîna "Seteya Bingehîn ON" û "Sepêdana Bingehîn OFF" biceribînin. Pêdivî ye ku LED RGB ON û OFF bibe.
  • RGB LED di heman demê de bi karanîna BTN0 li ser hardware jî dikare ON û OFF were vemirandin.

Me naha piştrast kir ku guheztin wekî ku tê hêvî kirin dixebite û bi serfirazî GPIO-ya ku di S-ya hatî bikar anîn de guhezandiyeample Serlêdan

3.2 Parçeya rengê RGB biguherînin

Di vê beşê de, em ê RGB LED-ê biguherînin û hewl bidin ku hêmanên rengîn tevlihev bikin.

"Rengek di modela rengê RGB de tête diyar kirin ku çiqas ji her yek ji sor, kesk û şîn tê de heye. Reng wekî sêyek RGB (r, g, b) tête diyar kirin, ku her pêkhateyek wê dikare ji sifir heya nirxek herî zêde ya diyarkirî diguhere. Ger hemû pêkhate li ser sifirê bin encam reş e; heke hemî di herî zêde de bin, encam spîya herî geş a temsîlkirî ye."

Ji Wîkîpediya li ser Modela Rengê RGB.

FIG 8 Parçeyên Rengê RGB Bi hev re Tevlihev kirin

Ji ber ku me di beşa berê de hemî hêmanên rengan çalak kir, LED-a RGB dema ku vedibe spî ye. Bi zivirandin û qutkirina pêkhateyên kesane, em dikarin LED-ê biguherînin. Digel vê yekê, bi sererastkirina tundiya her pêkhateyên rengan, em dikarin hemî rengan di navberê de çêbikin. Ji bo wê, em ê PWM bikar bînin da ku GPIOs kontrol bikin.

  1. Di ApplicationTask () de PwmTimer dest pê bikin û pîneyên RGB li PWM saz bikin, wekî ku di Figure 9 de tê xuyang kirin.                                                                                FIG 9 PWM di ApplicationTask de hate destpêkirin
  2. Di RefreshMMI (), em ê ji bo her pêkhateyek rengîn jimareyek random bikar bînin. Her gava ku LED vedibe, rand() bikar bînin da ku nirxek nû bistînin.
  3. DPRINTF() bikar bînin da ku nirxa ku nû hatî hilberandin li porta debugkirina rêzefîlmê binivîsin.
  4. Board_SetLed() bi Board_RgbLedSetPwm() biguherîne da ku nirxa rasthatî bikar bîne.
  5. Ji bo RefreshMMI-ya nûvekirî li Figure 10 binihêrin.

FIG 10 RefreshMMI bi PWM ve hatî nûve kirin

Wêne 10: RefreshMMI bi PWM ve hatî nûve kirin

Guhertina meya nû nuha hatî sepandin, û hûn amade ne ku berhev bikin.

  1. Li ser "avakirin" bikirtînin ONKON 1 bişkojka ku dest bi avakirina projeyê bike.
  2. Dema ku avakirin qediya, peldanka "Binaries" berfireh bikin û li ser *.hex-ê rast bikirtînin file ji bo hilbijartina "Flash to Device...".
  3. Di pencereya pop-up de hardware girêdayî hilbijêrin. "Bernameçêkera Flash" naha bi hemî daneyên hewce ve hatî dagirtin, û hûn amade ne ku li ser "Bernameyê" bikirtînin.
  4. "Bername" bikirtînin.

Piştî demek kurt bername qediya, û cîhaza weya paşîn naha bi guhertoya weya guhertî ya Veguheztin/Offiçkirin tê şûştin.

3.2.1 Fonksiyoneliyê biceribîne

Karbidestiyê bi verastkirina ku hûn dikarin rengê RGB LED-ê biguhezînin ceribandin.

  1. Di Kontrolkerê PC-ê de fonksiyonê bi karanîna "Seteya Bingehîn ON" biceribînin.
  2. Ji bo dîtina guhertina rengan, li ser "Setkirina Bingehîn ON" bikirtînin.

Me naha piştrast kir ku guheztin wekî ku tê hêvî kirin dixebite û bi serfirazî GPIO guhertiye ku PWM bikar bîne.

4 gotûbêj

Di vê xebatê de me Guherandin/Off ji kontrolkirina LEDek hêsan heya kontrolkirina LEDek pir-reng guhart. Bi nirxên PWM-ê ve girêdayî, em niha dikarin her reng û tundiyê biguherînin.

  • Ma pêdivî ye ku ji bo vê serîlêdanê "Switch Binary" wekî Tîpa Amûrê were bikar anîn?
  • Kîjan dersên fermanê ji bo LEDek pir-reng çêtir in?

Ji bo ku hûn bersiva pirsê bidin, divê hûn li ser taybetmendiya Z-Wave binêrin:

  • Z-Wave Plus v2 Taybetmendiya Tîpa Amûrê
  • Specification Class Fermana Serlêdana Z-Wave

Ev dersa guheztin û guheztina GPIO-yên Z-Wave S bi dawî dikeample Serlêdan.

 

Zêdetir Di derbarê Vê Manualê de Bixwînin û PDF-ê dakêşin:

Belge / Çavkanî

SILICON LABS Lab 3B - Veguheztin / Vekêşandin biguherînin [pdf] Rehbera bikaranînê
Lab 3B, Guhertina Guhertin, Vekêşandin, Vekêşandin, Z-Wave, SDK

Çavkanî

Bihêle şîroveyek

Navnîşana e-nameya we nayê weşandin. Zeviyên pêwîst têne nîşankirin *