ਸਿਲੀਕਾਨ ਲੋਗੋ

SILICON LABS ਲੈਬ 3B - ਸਵਿੱਚ ਚਾਲੂ/ਬੰਦ ਉਪਭੋਗਤਾ ਗਾਈਡ ਨੂੰ ਸੋਧੋ

SILICON LABS ਲੈਬ 3B - ਸਵਿੱਚ ਚਾਲੂ/ਬੰਦ ਨੂੰ ਸੋਧੋ

ਇਹ ਹੈਂਡ-ਆਨ ਐਕਸਰਸਾਈਜ਼ ਦਿਖਾਏਗਾ ਕਿ s ਵਿੱਚੋਂ ਇੱਕ 'ਤੇ ਇੱਕ ਸੋਧ ਕਿਵੇਂ ਕਰਨੀ ਹੈample ਐਪਲੀਕੇਸ਼ਨਾਂ ਜੋ Z-Wave SDK ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਭੇਜੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।

ਇਹ ਅਭਿਆਸ ਲੜੀ "Z-Wave 1-ਦਿਨ ਕੋਰਸ" ਦਾ ਹਿੱਸਾ ਹੈ।

  1. ਸਮਾਰਟਸਟਾਰਟ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਸ਼ਾਮਲ ਕਰੋ
  2. Zniffer ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ Z-Wave RF ਫਰੇਮਾਂ ਨੂੰ ਡੀਕ੍ਰਿਪਟ ਕਰੋ
  3. 3A: ਕੰਪਾਇਲ ਸਵਿੱਚ ਚਾਲੂ/ਬੰਦ ਕਰੋ ਅਤੇ ਡੀਬੱਗ ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ
    3B: ਸਵਿੱਚ ਚਾਲੂ/ਬੰਦ ਨੂੰ ਸੋਧੋ
  4. FLiRS ਡਿਵਾਈਸਾਂ ਨੂੰ ਸਮਝੋ

 

ਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ

  • GPIO ਬਦਲੋ
  • PWM ਨੂੰ ਲਾਗੂ ਕਰੋ
  • ਆਨ-ਬੋਰਡ RGB LED ਦੀ ਵਰਤੋਂ ਕਰੋ

 

1. ਜਾਣ-ਪਛਾਣ

ਇਹ ਅਭਿਆਸ ਪਿਛਲੀ ਕਸਰਤ “3A: ਕੰਪਾਈਲ ਸਵਿੱਚ ਆਨ/ਆਫ਼ ਅਤੇ ਇਨੇਬਲ ਡੀਬੱਗ” ਦੇ ਸਿਖਰ 'ਤੇ ਬਣ ਰਿਹਾ ਹੈ, ਜਿਸ ਨੇ ਦਿਖਾਇਆ ਕਿ ਸਵਿੱਚ ਆਨ/ਆਫ਼ ਨੂੰ ਕੰਪਾਈਲ ਅਤੇ ਕਿਵੇਂ ਵਰਤਣਾ ਹੈ।ampਲੇ ਐਪਲੀਕੇਸ਼ਨ.

ਇਸ ਅਭਿਆਸ ਵਿੱਚ ਅਸੀਂ ਐਸ ਵਿੱਚ ਇੱਕ ਸੋਧ ਕਰਾਂਗੇ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- ਵੇਵ ਜ਼ਨਿਫਰ

FIG 1 Z-Wave SiP ਮੋਡੀਊਲ ਵਾਲਾ ਮੁੱਖ ਵਿਕਾਸ ਬੋਰਡ

ਚਿੱਤਰ 1: Z-ਵੇਵ SiP ਮੋਡੀਊਲ ਵਾਲਾ ਮੁੱਖ ਵਿਕਾਸ ਬੋਰਡ

1.3 ਪੂਰਵ-ਲੋੜਾਂ
ਪਿਛਲੇ ਹੈਂਡਸ-ਆਨ ਅਭਿਆਸਾਂ ਵਿੱਚ ਇੱਕ Z-ਵੇਵ ਨੈਟਵਰਕ ਬਣਾਉਣ ਅਤੇ ਵਿਕਾਸ ਦੇ ਉਦੇਸ਼ ਲਈ RF ਸੰਚਾਰ ਨੂੰ ਕੈਪਚਰ ਕਰਨ ਲਈ PC ਕੰਟਰੋਲਰ ਅਤੇ Zniffer ਐਪਲੀਕੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੇ ਤਰੀਕੇ ਨੂੰ ਕਵਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਹ ਅਭਿਆਸ ਮੰਨਦਾ ਹੈ ਕਿ ਤੁਸੀਂ ਇਹਨਾਂ ਸਾਧਨਾਂ ਤੋਂ ਜਾਣੂ ਹੋ।

ਪਿਛਲੀਆਂ ਹੈਂਡਸ-ਆਨ ਅਭਿਆਸਾਂ ਵਿੱਚ ਇਹ ਵੀ ਦੱਸਿਆ ਗਿਆ ਹੈ ਕਿ s ਦੀ ਵਰਤੋਂ ਕਿਵੇਂ ਕਰਨੀ ਹੈample ਐਪਲੀਕੇਸ਼ਨਾਂ ਜੋ Z-Wave SDK ਨਾਲ ਭੇਜੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇਹ ਅਭਿਆਸ ਇਹ ਮੰਨਦਾ ਹੈ ਕਿ ਤੁਸੀਂ s ਵਿੱਚੋਂ ਇੱਕ ਦੀ ਵਰਤੋਂ ਅਤੇ ਕੰਪਾਇਲ ਕਰਨ ਤੋਂ ਜਾਣੂ ਹੋample ਐਪਲੀਕੇਸ਼ਨ.

 

2. ਬੋਰਡ ਇੰਟਰਫੇਸ 'ਤੇ ਨੈਵੀਗੇਟ ਕਰੋ

Z-ਵੇਵ ਫਰੇਮਵਰਕ board.h ਅਤੇ board.c ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਇੱਕ ਹਾਰਡਵੇਅਰ ਐਬਸਟਰੈਕਸ਼ਨ ਲੇਅਰ (HAL) ਦੇ ਨਾਲ ਆਉਂਦਾ ਹੈ, ਜੋ ਤੁਹਾਡੇ ਹਰੇਕ ਹਾਰਡਵੇਅਰ ਪਲੇਟਫਾਰਮ ਲਈ ਲਾਗੂ ਹੋਣ ਦੀ ਸੰਭਾਵਨਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।

ਹਾਰਡਵੇਅਰ ਐਬਸਟਰੈਕਸ਼ਨ ਲੇਅਰ (HAL) ਇੱਕ ਸਿਸਟਮ ਦੇ ਹਾਰਡਵੇਅਰ ਅਤੇ ਇਸਦੇ ਸੌਫਟਵੇਅਰ ਵਿਚਕਾਰ ਪ੍ਰੋਗਰਾਮ ਕੋਡ ਹੈ ਜੋ ਕਈ ਵੱਖ-ਵੱਖ ਹਾਰਡਵੇਅਰ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਚੱਲਣ ਵਾਲੇ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਇਕਸਾਰ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਐਡਵਾਂਸ ਲੈਣ ਲਈtagਇਸ ਸਮਰੱਥਾ ਦੇ e, ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਸਿੱਧੇ ਦੀ ਬਜਾਏ HAL ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ API ਦੁਆਰਾ ਹਾਰਡਵੇਅਰ ਤੱਕ ਪਹੁੰਚ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ। ਫਿਰ, ਜਦੋਂ ਤੁਸੀਂ ਨਵੇਂ ਹਾਰਡਵੇਅਰ 'ਤੇ ਜਾਂਦੇ ਹੋ, ਤੁਹਾਨੂੰ ਸਿਰਫ਼ HAL ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।

2.1 ਓਪਨ ਐੱਸample ਪ੍ਰੋਜੈਕਟ
ਇਸ ਅਭਿਆਸ ਲਈ ਤੁਹਾਨੂੰ ਸਵਿੱਚ ਆਨ / ਆਫ s ਨੂੰ ਖੋਲ੍ਹਣ ਦੀ ਜ਼ਰੂਰਤ ਹੈampਲੇ ਐਪਲੀਕੇਸ਼ਨ. ਜੇਕਰ ਤੁਸੀਂ "3A ਕੰਪਾਈਲ ਸਵਿੱਚ ਆਨਆਫ ਅਤੇ ਯੋਗ ਡੀਬੱਗ" ਅਭਿਆਸ ਨੂੰ ਪੂਰਾ ਕੀਤਾ ਹੈ, ਤਾਂ ਇਹ ਤੁਹਾਡੇ ਸਾਦਗੀ ਸਟੂਡੀਓ IDE ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਖੋਲ੍ਹਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।

ਇਸ ਭਾਗ ਵਿੱਚ ਅਸੀਂ ਬੋਰਡ ਨੂੰ ਦੇਖਾਂਗੇ files ਅਤੇ ਸਮਝੋ ਕਿ LEDs ਨੂੰ ਕਿਵੇਂ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।

  1. ਮੁੱਖ ਤੋਂ file “SwitchOnOff.c”, “ApplicationInit()” ਲੱਭੋ ਅਤੇ Board_Init() ਨੂੰ ਕਾਲ ਕਰੋ।
  2. ਆਪਣੇ ਕੋਰਸਰ ਨੂੰ Board_Init() 'ਤੇ ਰੱਖੋ ਅਤੇ ਘੋਸ਼ਣਾ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ F3 ਦਬਾਓ।

FIG 2 ਓਪਨ ਐੱਸample ਪ੍ਰੋਜੈਕਟ

3. ਬੋਰਡ_ਇਨਿਟ () ਵਿੱਚ ਧਿਆਨ ਦਿਓ ਕਿ ਕਿਵੇਂ BOARD_LED_COUNT ਵਿੱਚ ਮੌਜੂਦ LEDs ਨੂੰ Board_Con-figLed() ਕਹਿੰਦੇ ਹੋਏ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ।

FIG 3 ਓਪਨ ਐੱਸample ਪ੍ਰੋਜੈਕਟ

4. ਆਪਣੇ ਕੋਰਸਰ ਨੂੰ BOARD_LED_COUNT 'ਤੇ ਰੱਖੋ ਅਤੇ ਘੋਸ਼ਣਾ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ F3 'ਤੇ ਦਬਾਓ।
5. led_id_t ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ LEDs ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹਨ:

FIG 4 ਓਪਨ ਐੱਸample ਪ੍ਰੋਜੈਕਟ

6. ਬੋਰਡ 'ਤੇ ਵਾਪਸ ਜਾਓ file.
7. ਆਪਣੇ ਕੋਰਸਰ ਨੂੰ Board_ConfigLed() 'ਤੇ ਰੱਖੋ ਅਤੇ ਘੋਸ਼ਣਾ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ F3 ਦਬਾਓ।
8. ਧਿਆਨ ਦਿਓ ਕਿ led_id_t ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਸਾਰੇ LEDs ਨੂੰ ਬੋਰਡ_ConfigLed() ਵਿੱਚ ਆਉਟਪੁੱਟ ਦੇ ਰੂਪ ਵਿੱਚ ਸੰਰਚਿਤ ਕੀਤਾ ਗਿਆ ਹੈ।

FIG 5 ਓਪਨ ਐੱਸample ਪ੍ਰੋਜੈਕਟ

ਇਸਦਾ ਮਤਲਬ ਇਹ ਹੈ ਕਿ ਵਿਕਾਸ ਬੋਰਡ 'ਤੇ ਸਾਰੀਆਂ LEDs ਪਹਿਲਾਂ ਹੀ ਆਉਟਪੁੱਟ ਦੇ ਤੌਰ 'ਤੇ ਪਰਿਭਾਸ਼ਿਤ ਹਨ ਅਤੇ ਵਰਤੋਂ ਲਈ ਤਿਆਰ ਹਨ।

 

3. ਇੱਕ Z-ਵੇਵ S ਵਿੱਚ ਇੱਕ ਸੋਧ ਕਰੋample ਅਰਜ਼ੀ

ਇਸ ਅਭਿਆਸ ਵਿੱਚ ਅਸੀਂ ਸਵਿੱਚ ਆਨ/ਆਫ਼ ਵਿੱਚ LED ਲਈ ਵਰਤੇ ਜਾਂਦੇ GPIO ਨੂੰ ਸੋਧਾਂਗੇ।ampਲੇ ਐਪਲੀਕੇਸ਼ਨ. ਪਿਛਲੇ ਭਾਗ ਵਿੱਚ ਅਸੀਂ ਸਿੱਖਿਆ ਕਿ ਕਿਵੇਂ ਵਿਕਾਸ ਬੋਰਡ 'ਤੇ ਸਾਰੇ LEDs ਪਹਿਲਾਂ ਹੀ ਆਉਟਪੁੱਟ ਦੇ ਤੌਰ 'ਤੇ ਸ਼ੁਰੂ ਕੀਤੇ ਗਏ ਹਨ ਅਤੇ ਵਰਤੋਂ ਲਈ ਤਿਆਰ ਹਨ।

3.1 RGB LED ਦੀ ਵਰਤੋਂ ਕਰੋ

ਅਸੀਂ ਬਟਨ ਬੋਰਡ 'ਤੇ LED ਦੀ ਬਜਾਏ Z-ਵੇਵ ਡਿਵੈਲਪਮੈਂਟ ਮੋਡੀਊਲ 'ਤੇ ਆਨਬੋਰਡ RGB LED ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ।

1. SwitchOnOff.c ਮੁੱਖ ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ, ਚਿੱਤਰ 6 ਵਿੱਚ ਵੇਖੇ ਅਨੁਸਾਰ, RefreshMMI ਫੰਕਸ਼ਨ ਦਾ ਪਤਾ ਲਗਾਓ। file.

FIG 6 ਬਿਨਾਂ ਕਿਸੇ ਸੋਧ ਦੇ MMI ਨੂੰ ਤਾਜ਼ਾ ਕਰੋ

ਚਿੱਤਰ 6: ਬਿਨਾਂ ਕਿਸੇ ਸੋਧ ਦੇ MMI ਨੂੰ ਤਾਜ਼ਾ ਕਰੋ

2. ਅਸੀਂ "Board_SetLed" ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ ਪਰ GPIO ਨੂੰ ਇਸ ਵਿੱਚ ਬਦਲਾਂਗੇ
o BOARD_RGB1_R
o BOARD_RGB1_G
o BOARD_RGB1_B

3. "Board_SetLed" ਨੂੰ 3 ਵਾਰ ਬੰਦ ਸਥਿਤੀ ਅਤੇ ਚਾਲੂ ਸਥਿਤੀ ਵਿੱਚ ਕਾਲ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 7 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।

FIG 7 RGB LED ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਰਿਫਰੈਸ਼MMI ਸੋਧਿਆ ਗਿਆ

ਸਾਡਾ ਨਵਾਂ ਸੋਧ ਹੁਣ ਲਾਗੂ ਹੋ ਗਿਆ ਹੈ, ਅਤੇ ਤੁਸੀਂ ਕੰਪਾਇਲ ਕਰਨ ਲਈ ਤਿਆਰ ਹੋ।
ਕਿਸੇ ਡਿਵਾਈਸ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰਨ ਦੇ ਕਦਮ ਅਭਿਆਸ "3A ਕੰਪਾਈਲ ਸਵਿੱਚ ਆਨਆਫ ਅਤੇ ਯੋਗ ਡੀਬੱਗ" ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤੇ ਗਏ ਹਨ, ਅਤੇ ਇੱਥੇ ਸੰਖੇਪ ਵਿੱਚ ਦੁਹਰਾਇਆ ਗਿਆ ਹੈ:

  1. "ਬਿਲਡ" 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਆਈਸੀਐਨ 1 ਪ੍ਰੋਜੈਕਟ ਬਣਾਉਣਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਬਟਨ.
  2. ਜਦੋਂ ਬਿਲਡ ਪੂਰਾ ਹੋ ਜਾਂਦਾ ਹੈ, "ਬਾਈਨਰੀਜ਼" ਫੋਲਡਰ ਨੂੰ ਫੈਲਾਓ ਅਤੇ *.ਹੈਕਸ 'ਤੇ ਸੱਜਾ ਕਲਿੱਕ ਕਰੋ file "ਫਲੈਸ਼ ਟੂ ਡਿਵਾਈਸ..." ਨੂੰ ਚੁਣਨ ਲਈ।
  3. ਪੌਪ-ਅੱਪ ਵਿੰਡੋ ਵਿੱਚ ਕਨੈਕਟ ਕੀਤੇ ਹਾਰਡਵੇਅਰ ਦੀ ਚੋਣ ਕਰੋ। "ਫਲੈਸ਼ ਪ੍ਰੋਗਰਾਮਰ" ਹੁਣ ਸਾਰੇ ਲੋੜੀਂਦੇ ਡੇਟਾ ਨਾਲ ਭਰਿਆ ਹੋਇਆ ਹੈ, ਅਤੇ ਤੁਸੀਂ "ਪ੍ਰੋਗਰਾਮ" 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਲਈ ਤਿਆਰ ਹੋ।
  4. "ਪ੍ਰੋਗਰਾਮ" 'ਤੇ ਕਲਿੱਕ ਕਰੋ।

ਥੋੜ੍ਹੇ ਸਮੇਂ ਬਾਅਦ ਪ੍ਰੋਗਰਾਮਿੰਗ ਖਤਮ ਹੋ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਤੁਹਾਡੀ ਅੰਤਮ ਡਿਵਾਈਸ ਹੁਣ ਸਵਿੱਚ ਆਨ/ਆਫ ਦੇ ਤੁਹਾਡੇ ਸੋਧੇ ਹੋਏ ਸੰਸਕਰਣ ਨਾਲ ਫਲੈਸ਼ ਹੋ ਜਾਂਦੀ ਹੈ।

3.1.1 ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ

ਪਿਛਲੀਆਂ ਅਭਿਆਸਾਂ ਵਿੱਚ ਅਸੀਂ ਪਹਿਲਾਂ ਹੀ ਸਮਾਰਟਸਟਾਰਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡਿਵਾਈਸ ਨੂੰ ਇੱਕ ਸੁਰੱਖਿਅਤ Z-ਵੇਵ ਨੈੱਟਵਰਕ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰ ਚੁੱਕੇ ਹਾਂ। ਨਿਰਦੇਸ਼ਾਂ ਲਈ ਅਭਿਆਸ “ਸਮਾਰਟਸਟਾਰਟ ਦੀ ਵਰਤੋਂ ਸ਼ਾਮਲ ਕਰੋ” ਵੇਖੋ।

ਅੰਦਰੂਨੀ ਸੰਕੇਤ file ਰੀਪ੍ਰੋਗਰਾਮਿੰਗ ਦੇ ਵਿਚਕਾਰ ਸਿਸਟਮ ਨੂੰ ਮਿਟਾਇਆ ਨਹੀਂ ਜਾਂਦਾ ਹੈ। ਇਹ ਇੱਕ ਨੋਡ ਨੂੰ ਇੱਕ ਨੈੱਟਵਰਕ ਵਿੱਚ ਰਹਿਣ ਅਤੇ ਉਸੇ ਨੈੱਟਵਰਕ ਕੁੰਜੀਆਂ ਨੂੰ ਰੱਖਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਇਸਨੂੰ ਦੁਬਾਰਾ ਪ੍ਰੋਗ੍ਰਾਮ ਕਰਦੇ ਹੋ।

ਜੇਕਰ ਤੁਹਾਨੂੰ ਮੋਡੀਊਲ ਦੇ ਕੰਮ ਕਰਨ ਵਾਲੀ ਬਾਰੰਬਾਰਤਾ ਜਾਂ DSK ਨੂੰ ਬਦਲਣ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਨਵੀਂ ਬਾਰੰਬਾਰਤਾ ਅੰਦਰੂਨੀ NVM 'ਤੇ ਲਿਖੇ ਜਾਣ ਤੋਂ ਪਹਿਲਾਂ ਚਿੱਪ ਨੂੰ "ਮਿਟਾਉਣ" ਦੀ ਲੋੜ ਹੈ।

ਇਸ ਤਰ੍ਹਾਂ, ਤੁਹਾਡੀ ਡਿਵਾਈਸ ਪਹਿਲਾਂ ਹੀ ਨੈੱਟਵਰਕ ਵਿੱਚ ਸ਼ਾਮਲ ਹੈ।

ਇਹ ਪੁਸ਼ਟੀ ਕਰਕੇ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ ਕਿ ਤੁਸੀਂ RGB LED ਨੂੰ ਚਾਲੂ ਅਤੇ ਬੰਦ ਕਰ ਸਕਦੇ ਹੋ।

  • PC ਕੰਟਰੋਲਰ ਵਿੱਚ "ਬੇਸਿਕ ਸੈੱਟ ਆਨ" ਅਤੇ "ਬੇਸਿਕ ਸੈੱਟ ਆਫ" ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ। RGB LED ਨੂੰ ਚਾਲੂ ਅਤੇ ਬੰਦ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।
  • ਹਾਰਡਵੇਅਰ 'ਤੇ BTN0 ਦੀ ਵਰਤੋਂ ਕਰਕੇ RGB LED ਨੂੰ ਚਾਲੂ ਅਤੇ ਬੰਦ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।

ਅਸੀਂ ਹੁਣ ਤਸਦੀਕ ਕਰ ਲਿਆ ਹੈ ਕਿ ਸੋਧ ਉਮੀਦ ਅਨੁਸਾਰ ਕੰਮ ਕਰ ਰਹੀ ਹੈ ਅਤੇ S ਵਿੱਚ ਵਰਤੇ ਗਏ GPIO ਨੂੰ ਸਫਲਤਾਪੂਰਵਕ ਬਦਲ ਦਿੱਤਾ ਹੈ।ample ਅਰਜ਼ੀ

3.2 RGB ਰੰਗ ਭਾਗ ਬਦਲੋ

ਇਸ ਭਾਗ ਵਿੱਚ, ਅਸੀਂ RGB LED ਨੂੰ ਸੋਧਾਂਗੇ ਅਤੇ ਰੰਗ ਦੇ ਭਾਗਾਂ ਨੂੰ ਮਿਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਾਂਗੇ।

“RGB ਕਲਰ ਮਾਡਲ ਵਿੱਚ ਇੱਕ ਰੰਗ ਦਾ ਵਰਣਨ ਇਹ ​​ਦਰਸਾਉਂਦੇ ਹੋਏ ਕੀਤਾ ਗਿਆ ਹੈ ਕਿ ਹਰ ਇੱਕ ਲਾਲ, ਹਰਾ ਅਤੇ ਨੀਲਾ ਕਿੰਨਾ ਸ਼ਾਮਲ ਹੈ। ਰੰਗ ਨੂੰ ਇੱਕ RGB ਟ੍ਰਿਪਲੇਟ (r,g,b) ਦੇ ਰੂਪ ਵਿੱਚ ਦਰਸਾਇਆ ਗਿਆ ਹੈ, ਜਿਸਦਾ ਹਰੇਕ ਭਾਗ ਜ਼ੀਰੋ ਤੋਂ ਇੱਕ ਪਰਿਭਾਸ਼ਿਤ ਅਧਿਕਤਮ ਮੁੱਲ ਤੱਕ ਵੱਖਰਾ ਹੋ ਸਕਦਾ ਹੈ। ਜੇਕਰ ਸਾਰੇ ਕੰਪੋਨੈਂਟ ਜ਼ੀਰੋ 'ਤੇ ਹਨ ਤਾਂ ਨਤੀਜਾ ਕਾਲਾ ਹੁੰਦਾ ਹੈ; ਜੇਕਰ ਸਭ ਵੱਧ ਤੋਂ ਵੱਧ ਹਨ, ਤਾਂ ਨਤੀਜਾ ਸਭ ਤੋਂ ਚਮਕਦਾਰ ਚਿੱਟਾ ਹੈ।"

'ਤੇ ਵਿਕੀਪੀਡੀਆ ਤੋਂ RGB ਰੰਗ ਮਾਡਲ।

FIG 8 RGB ਰੰਗ ਦੇ ਹਿੱਸੇ ਇਕੱਠੇ ਮਿਲਾਏ ਗਏ ਹਨ

ਕਿਉਂਕਿ ਅਸੀਂ ਪਿਛਲੇ ਭਾਗ ਵਿੱਚ ਸਾਰੇ ਰੰਗਾਂ ਦੇ ਭਾਗਾਂ ਨੂੰ ਸਮਰੱਥ ਬਣਾਇਆ ਹੈ ਜਦੋਂ RGB LED ਚਾਲੂ ਹੁੰਦਾ ਹੈ। ਵਿਅਕਤੀਗਤ ਭਾਗਾਂ ਨੂੰ ਚਾਲੂ ਅਤੇ ਬੰਦ ਕਰਕੇ, ਅਸੀਂ LED ਨੂੰ ਬਦਲ ਸਕਦੇ ਹਾਂ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਹਰੇਕ ਰੰਗ ਦੇ ਭਾਗਾਂ ਦੀ ਤੀਬਰਤਾ ਨੂੰ ਅਨੁਕੂਲ ਕਰਕੇ, ਅਸੀਂ ਵਿਚਕਾਰਲੇ ਸਾਰੇ ਰੰਗ ਬਣਾ ਸਕਦੇ ਹਾਂ। ਇਸਦੇ ਲਈ, ਅਸੀਂ GPIO ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ PWM ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ।

  1. ApplicationTask() ਵਿੱਚ PwmTimer ਸ਼ੁਰੂ ਕਰੋ ਅਤੇ RGB ਪਿੰਨ ਨੂੰ PWM ਵਿੱਚ ਸੈੱਟਅੱਪ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 9 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।                                                                                FIG 9 PWM ਐਪਲੀਕੇਸ਼ਨ ਟਾਸਕ ਵਿੱਚ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ
  2. RefreshMMI(), ਵਿੱਚ ਅਸੀਂ ਹਰ ਰੰਗ ਦੇ ਹਿੱਸੇ ਲਈ ਇੱਕ ਬੇਤਰਤੀਬ ਨੰਬਰ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ। ਹਰ ਵਾਰ LED ਚਾਲੂ ਹੋਣ 'ਤੇ ਨਵਾਂ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਰੈਂਡ() ਦੀ ਵਰਤੋਂ ਕਰੋ।
  3. ਸੀਰੀਅਲ ਡੀਬੱਗ ਪੋਰਟ 'ਤੇ ਨਵੇਂ ਤਿਆਰ ਕੀਤੇ ਮੁੱਲ ਨੂੰ ਲਿਖਣ ਲਈ DPRINTF() ਦੀ ਵਰਤੋਂ ਕਰੋ।
  4. ਬੇਤਰਤੀਬ ਮੁੱਲ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ Board_SetLed() ਨੂੰ Board_RgbLedSetPwm() ਨਾਲ ਬਦਲੋ।
  5. ਅੱਪਡੇਟ ਕੀਤੇ RefreshMMI() ਲਈ ਚਿੱਤਰ 10 ਵੇਖੋ।

FIG 10 PWM ਨਾਲ ਤਾਜ਼ਾ MMI ਅੱਪਡੇਟ ਕੀਤਾ ਗਿਆ

ਚਿੱਤਰ 10: PWM ਨਾਲ ਤਾਜ਼ਾ MMI ਅੱਪਡੇਟ ਕੀਤਾ ਗਿਆ

ਸਾਡਾ ਨਵਾਂ ਸੋਧ ਹੁਣ ਲਾਗੂ ਹੋ ਗਿਆ ਹੈ, ਅਤੇ ਤੁਸੀਂ ਕੰਪਾਇਲ ਕਰਨ ਲਈ ਤਿਆਰ ਹੋ।

  1. "ਬਿਲਡ" 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਆਈਸੀਐਨ 1 ਪ੍ਰੋਜੈਕਟ ਬਣਾਉਣਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਬਟਨ.
  2. ਜਦੋਂ ਬਿਲਡ ਪੂਰਾ ਹੋ ਜਾਂਦਾ ਹੈ, "ਬਾਈਨਰੀਜ਼" ਫੋਲਡਰ ਨੂੰ ਫੈਲਾਓ ਅਤੇ *.ਹੈਕਸ 'ਤੇ ਸੱਜਾ ਕਲਿੱਕ ਕਰੋ file "ਫਲੈਸ਼ ਟੂ ਡਿਵਾਈਸ..." ਨੂੰ ਚੁਣਨ ਲਈ।
  3. ਪੌਪ-ਅੱਪ ਵਿੰਡੋ ਵਿੱਚ ਕਨੈਕਟ ਕੀਤੇ ਹਾਰਡਵੇਅਰ ਦੀ ਚੋਣ ਕਰੋ। "ਫਲੈਸ਼ ਪ੍ਰੋਗਰਾਮਰ" ਹੁਣ ਸਾਰੇ ਲੋੜੀਂਦੇ ਡੇਟਾ ਨਾਲ ਭਰਿਆ ਹੋਇਆ ਹੈ, ਅਤੇ ਤੁਸੀਂ "ਪ੍ਰੋਗਰਾਮ" 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਲਈ ਤਿਆਰ ਹੋ।
  4. "ਪ੍ਰੋਗਰਾਮ" 'ਤੇ ਕਲਿੱਕ ਕਰੋ।

ਥੋੜ੍ਹੇ ਸਮੇਂ ਬਾਅਦ ਪ੍ਰੋਗਰਾਮਿੰਗ ਖਤਮ ਹੋ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਤੁਹਾਡੀ ਅੰਤਮ ਡਿਵਾਈਸ ਹੁਣ ਸਵਿੱਚ ਆਨ/ਆਫ ਦੇ ਤੁਹਾਡੇ ਸੋਧੇ ਹੋਏ ਸੰਸਕਰਣ ਨਾਲ ਫਲੈਸ਼ ਹੋ ਜਾਂਦੀ ਹੈ।

3.2.1 ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ

ਇਹ ਪੁਸ਼ਟੀ ਕਰਕੇ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ ਕਿ ਤੁਸੀਂ RGB LED ਦਾ ਰੰਗ ਬਦਲ ਸਕਦੇ ਹੋ।

  1. PC ਕੰਟਰੋਲਰ ਵਿੱਚ "ਬੇਸਿਕ ਸੈੱਟ ਆਨ" ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ।
  2. ਰੰਗ ਵਿੱਚ ਤਬਦੀਲੀ ਦੇਖਣ ਲਈ "ਬੇਸਿਕ ਸੈੱਟ ਆਨ" 'ਤੇ ਕਲਿੱਕ ਕਰੋ।

ਅਸੀਂ ਹੁਣ ਪੁਸ਼ਟੀ ਕੀਤੀ ਹੈ ਕਿ ਸੋਧ ਉਮੀਦ ਅਨੁਸਾਰ ਕੰਮ ਕਰ ਰਹੀ ਹੈ ਅਤੇ PWM ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ GPIO ਨੂੰ ਸਫਲਤਾਪੂਰਵਕ ਬਦਲ ਦਿੱਤਾ ਹੈ।

4 ਚਰਚਾ

ਇਸ ਅਭਿਆਸ ਵਿੱਚ ਅਸੀਂ ਇੱਕ ਸਧਾਰਨ LED ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਤੋਂ ਇੱਕ ਮਲਟੀ-ਕਲਰ LED ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਸਵਿੱਚ ਆਨ/ਆਫ ਨੂੰ ਸੋਧਿਆ ਹੈ। PWM ਮੁੱਲਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦਿਆਂ, ਅਸੀਂ ਹੁਣ ਕਿਸੇ ਵੀ ਰੰਗ ਅਤੇ ਤੀਬਰਤਾ ਵਿੱਚ ਬਦਲ ਸਕਦੇ ਹਾਂ।

  • ਕੀ ਇਸ ਐਪਲੀਕੇਸ਼ਨ ਲਈ "ਬਾਈਨਰੀ ਸਵਿੱਚ" ਨੂੰ ਡਿਵਾਈਸ ਕਿਸਮ ਵਜੋਂ ਵਰਤਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ?
  • ਮਲਟੀ-ਕਲਰ LED ਲਈ ਕਿਹੜੀਆਂ ਕਮਾਂਡ ਕਲਾਸਾਂ ਬਿਹਤਰ ਅਨੁਕੂਲ ਹਨ?

ਸਵਾਲ ਦਾ ਜਵਾਬ ਦੇਣ ਲਈ, ਤੁਹਾਨੂੰ Z-Wave ਨਿਰਧਾਰਨ ਦਾ ਹਵਾਲਾ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ:

  • Z-Wave Plus v2 ਡਿਵਾਈਸ ਟਾਈਪ ਸਪੈਸੀਫਿਕੇਸ਼ਨ
  • Z-ਵੇਵ ਐਪਲੀਕੇਸ਼ਨ ਕਮਾਂਡ ਕਲਾਸ ਸਪੈਸੀਫਿਕੇਸ਼ਨ

ਇਹ Z-Wave S ਦੇ GPIO ਨੂੰ ਕਿਵੇਂ ਸੋਧਣਾ ਅਤੇ ਬਦਲਣਾ ਹੈ ਬਾਰੇ ਟਿਊਟੋਰਿਅਲ ਨੂੰ ਸਮਾਪਤ ਕਰਦਾ ਹੈ।ampਲੇ ਐਪਲੀਕੇਸ਼ਨ.

 

ਇਸ ਮੈਨੂਅਲ ਬਾਰੇ ਹੋਰ ਪੜ੍ਹੋ ਅਤੇ PDF ਡਾਊਨਲੋਡ ਕਰੋ:

ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ

SILICON LABS ਲੈਬ 3B - ਸਵਿੱਚ ਚਾਲੂ/ਬੰਦ ਨੂੰ ਸੋਧੋ [pdf] ਯੂਜ਼ਰ ਗਾਈਡ
ਲੈਬ 3B, ਮੋਡੀਫਾਈ ਸਵਿੱਚ, ਚਾਲੂ, ਬੰਦ, Z-ਵੇਵ, SDK

ਹਵਾਲੇ

ਇੱਕ ਟਿੱਪਣੀ ਛੱਡੋ

ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਲੋੜੀਂਦੇ ਖੇਤਰਾਂ ਨੂੰ ਚਿੰਨ੍ਹਿਤ ਕੀਤਾ ਗਿਆ ਹੈ *