WS2812B ವಿಳಾಸ ಮಾಡಬಹುದಾದ LED ಸ್ಟ್ರಿಪ್ ಅನ್ನು Arduino ಗೆ ಹೇಗೆ ಸಂಪರ್ಕಿಸುವುದು
ಎಲ್ಇಡಿ ಆಧಾರಿತ ಬೆಳಕಿನ ತಂತ್ರಜ್ಞಾನದ ಅಭಿವೃದ್ಧಿಯು ವೇಗವಾಗಿ ಮುಂದುವರಿಯುತ್ತದೆ. ನಿನ್ನೆ RGB ರಿಬ್ಬನ್ಗಳು ನಿಯಂತ್ರಕದಿಂದ ನಿಯಂತ್ರಿಸಲ್ಪಡುವ ಪವಾಡದಂತೆ ತೋರುತ್ತಿದೆ, ಅದರ ಹೊಳಪು ಮತ್ತು ಬಣ್ಣವನ್ನು ರಿಮೋಟ್ ಕಂಟ್ರೋಲ್ ಮೂಲಕ ಸರಿಹೊಂದಿಸಬಹುದು. ಇಂದು, ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಇನ್ನೂ ಹೆಚ್ಚಿನ ಸಾಧ್ಯತೆಗಳಿವೆ.
WS2812B ಆಧಾರಿತ ಎಲ್ಇಡಿ ಸ್ಟ್ರಿಪ್
ಸ್ಟ್ಯಾಂಡರ್ಡ್ನಿಂದ ವಿಳಾಸ ಮಾಡಬಹುದಾದ ಎಲ್ಇಡಿ ಸ್ಟ್ರಿಪ್ನ ವ್ಯತ್ಯಾಸಗಳು RGB ಎಂಬುದು ಪ್ರತಿ ಅಂಶದ ಹೊಳಪು ಮತ್ತು ಬಣ್ಣದ ಅನುಪಾತವನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಹೊಂದಿಸಬಹುದಾಗಿದೆ. ಇತರ ರೀತಿಯ ಬೆಳಕಿನ ನೆಲೆವಸ್ತುಗಳಿಗೆ ಲಭ್ಯವಿಲ್ಲದ ಬೆಳಕಿನ ಪರಿಣಾಮಗಳನ್ನು ಪಡೆಯಲು ಇದು ನಿಮ್ಮನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಎಲ್ಇಡಿ ಸ್ಟ್ರಿಪ್ ಅನ್ನು ಪ್ರಸಿದ್ಧ ರೀತಿಯಲ್ಲಿ ನಿಯಂತ್ರಿಸಲಾಗುತ್ತದೆ - ಪಲ್ಸ್ ಅಗಲ ಮಾಡ್ಯುಲೇಷನ್ ಮೂಲಕ. ಸಿಸ್ಟಮ್ನ ವಿಶಿಷ್ಟತೆಯೆಂದರೆ ಪ್ರತಿ ಎಲ್ಇಡಿ ತನ್ನದೇ ಆದ ಪಿಡಬ್ಲ್ಯೂಎಂ ನಿಯಂತ್ರಕವನ್ನು ಹೊಂದಿದೆ. WS2812B ಚಿಪ್ ಒಂದು ಟ್ರೈ-ಕಲರ್ ಲೈಟ್-ಎಮಿಟಿಂಗ್ ಡಯೋಡ್ ಮತ್ತು ಕಂಟ್ರೋಲ್ ಸರ್ಕ್ಯೂಟ್ ಆಗಿದೆ, ಇದನ್ನು ಒಂದು ಪ್ಯಾಕೇಜ್ನಲ್ಲಿ ಸಂಯೋಜಿಸಲಾಗಿದೆ.
ಅಂಶಗಳನ್ನು ಸಮಾನಾಂತರವಾಗಿ ವಿದ್ಯುತ್ ಸರಬರಾಜಿನಲ್ಲಿ ಟೇಪ್ ಆಗಿ ಸಂಯೋಜಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಸರಣಿ ಬಸ್ ಮೂಲಕ ನಿಯಂತ್ರಿಸಲಾಗುತ್ತದೆ - ಮೊದಲ ಅಂಶದ ಔಟ್ಪುಟ್ ಅನ್ನು ಎರಡನೆಯ ನಿಯಂತ್ರಣ ಇನ್ಪುಟ್ಗೆ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ, ಇತ್ಯಾದಿ. ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ ಸರಣಿ ಬಸ್ಸುಗಳನ್ನು ಎರಡು ಸಾಲುಗಳಲ್ಲಿ ನಿರ್ಮಿಸಲಾಗಿದೆ, ಅವುಗಳಲ್ಲಿ ಒಂದು ಸ್ಟ್ರೋಬ್ಗಳನ್ನು (ಸಿಂಕ್ರೊನಸ್ ಪಲ್ಸಸ್) ರವಾನಿಸುತ್ತದೆ, ಮತ್ತು ಇನ್ನೊಂದು - ಡೇಟಾ.
WS2812B ಚಿಪ್ನ ನಿಯಂತ್ರಣ ಬಸ್ ಒಂದು ಸಾಲನ್ನು ಒಳಗೊಂಡಿದೆ - ಇದು ಡೇಟಾವನ್ನು ರವಾನಿಸುತ್ತದೆ.ಡೇಟಾವನ್ನು ಸ್ಥಿರ ಆವರ್ತನದ ದ್ವಿದಳ ಧಾನ್ಯಗಳಾಗಿ ಎನ್ಕೋಡ್ ಮಾಡಲಾಗಿದೆ, ಆದರೆ ವಿಭಿನ್ನ ಆವರ್ತನಗಳೊಂದಿಗೆ. ಒಂದು ನಾಡಿ ಒಂದು ಬಿಟ್ ಆಗಿದೆ. ಪ್ರತಿ ಬಿಟ್ನ ಅವಧಿಯು 1.25 µs ಆಗಿದೆ, ಶೂನ್ಯ ಬಿಟ್ ಉನ್ನತ ಮಟ್ಟದ 0.4 µs ಮತ್ತು ಕಡಿಮೆ ಮಟ್ಟದ 0.85 µs ಅನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಘಟಕವು ಹೆಚ್ಚಿನ 0.8 µs ಮತ್ತು ಕನಿಷ್ಠ 0.45 µs ನಂತೆ ಕಾಣುತ್ತದೆ. 24 ಬಿಟ್ಗಳ (3 ಬೈಟ್ಗಳು) ಪಾರ್ಸೆಲ್ ಅನ್ನು ಪ್ರತಿ LED ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ, ನಂತರ 50µs ಗಾಗಿ ಕಡಿಮೆ ಮಟ್ಟದ ರೂಪದಲ್ಲಿ ವಿರಾಮವನ್ನು ಮಾಡಲಾಗುತ್ತದೆ. ಇದರರ್ಥ ಮುಂದಿನ ಎಲ್ಇಡಿಗಾಗಿ ಡೇಟಾವನ್ನು ಮುಂದೆ ರವಾನಿಸಲಾಗುತ್ತದೆ, ಮತ್ತು ಸರಪಳಿಯ ಎಲ್ಲಾ ಅಂಶಗಳಿಗೆ. ಡೇಟಾ ವರ್ಗಾವಣೆಯು 100 µs ವಿರಾಮದೊಂದಿಗೆ ಕೊನೆಗೊಳ್ಳುತ್ತದೆ. ಇದರರ್ಥ ರಿಬ್ಬನ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಚಕ್ರವು ಪೂರ್ಣಗೊಂಡಿದೆ ಮತ್ತು ಮುಂದಿನ ಡೇಟಾ ಪ್ಯಾಕೆಟ್ಗಳನ್ನು ಕಳುಹಿಸಬಹುದು.
ಈ ಪ್ರೋಟೋಕಾಲ್ ಡೇಟಾ ರವಾನೆಗಾಗಿ ಒಂದೇ ಸಾಲನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಆದರೆ ನಿಖರವಾದ ಸಮಯದ ಅಗತ್ಯವಿರುತ್ತದೆ. ವ್ಯತ್ಯಾಸವು 150 ns ಗಿಂತ ಹೆಚ್ಚಿಲ್ಲ. ಜೊತೆಗೆ, ಈ ಬಸ್ಸಿನ ಶಬ್ದ ಪ್ರತಿರೋಧವು ತುಂಬಾ ಕಡಿಮೆಯಾಗಿದೆ. ಸಾಕಷ್ಟು ವೈಶಾಲ್ಯದ ಯಾವುದೇ ಹಸ್ತಕ್ಷೇಪವನ್ನು ನಿಯಂತ್ರಕವು ಡೇಟಾ ಎಂದು ಗ್ರಹಿಸಬಹುದು. ಇದು ನಿಯಂತ್ರಣ ಸರ್ಕ್ಯೂಟ್ರಿಯಿಂದ ತಂತಿಗಳ ಉದ್ದದ ಮೇಲೆ ಮಿತಿಗಳನ್ನು ಹೇರುತ್ತದೆ. ಮತ್ತೊಂದೆಡೆ, ಇದು ಸಾಮರ್ಥ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ ರಿಬ್ಬನ್ ಎಂದು ಪರಿಶೀಲಿಸಲು ಹೆಚ್ಚುವರಿ ಸಾಧನಗಳಿಲ್ಲದೆ. ನೀವು ಲುಮಿನೇರ್ಗೆ ಶಕ್ತಿಯನ್ನು ಅನ್ವಯಿಸಿದರೆ ಮತ್ತು ನಿಯಂತ್ರಣ ಬಸ್ನ ಸಂಪರ್ಕ ಪ್ಯಾಡ್ ಅನ್ನು ನಿಮ್ಮ ಬೆರಳಿನಿಂದ ಸ್ಪರ್ಶಿಸಿದರೆ, ಕೆಲವು LED ಗಳು ಅಸ್ತವ್ಯಸ್ತವಾಗಿ ಆನ್ ಮತ್ತು ಆಫ್ ಆಗಬಹುದು.
WS2812B ಅಂಶಗಳ ತಾಂತ್ರಿಕ ಗುಣಲಕ್ಷಣಗಳು
ವಿಳಾಸ ಮಾಡಬಹುದಾದ ರಿಬ್ಬನ್ ಅನ್ನು ಆಧರಿಸಿ ಬೆಳಕಿನ ವ್ಯವಸ್ಥೆಗಳನ್ನು ರಚಿಸಲು ಬೆಳಕು-ಹೊರಸೂಸುವ ಅಂಶಗಳ ಪ್ರಮುಖ ನಿಯತಾಂಕಗಳನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು ಅವಶ್ಯಕ.
ಎಲ್ಇಡಿ ಆಯಾಮಗಳು | 5x5 ಮಿಮೀ |
PWM ಮಾಡ್ಯುಲೇಶನ್ ಆವರ್ತನ | 400 Hz |
ಗರಿಷ್ಠ ಹೊಳಪಿನಲ್ಲಿ ಪ್ರಸ್ತುತ ಬಳಕೆ | ಪ್ರತಿ ಅಂಶಕ್ಕೆ 60 mA |
ಪೂರೈಕೆ ವೋಲ್ಟೇಜ್ | 5 ವೋಲ್ಟ್ |
Arduino ಮತ್ತು WS2812B
ವಿಶ್ವದ ಜನಪ್ರಿಯ Arduino ಪ್ಲಾಟ್ಫಾರ್ಮ್ ವಿಳಾಸ ಮಾಡಬಹುದಾದ ರಿಬ್ಬನ್ಗಳನ್ನು ನಿಯಂತ್ರಿಸಲು ರೇಖಾಚಿತ್ರಗಳನ್ನು (ಪ್ರೋಗ್ರಾಂಗಳು) ರಚಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಸಿಸ್ಟಮ್ನ ಸಾಮರ್ಥ್ಯಗಳು ಸಾಕಷ್ಟು ವಿಶಾಲವಾಗಿವೆ, ಆದರೆ ಕೆಲವು ಹಂತದಲ್ಲಿ ಅವು ಇನ್ನು ಮುಂದೆ ಸಾಕಾಗುವುದಿಲ್ಲವಾದರೆ, ಸ್ವಾಧೀನಪಡಿಸಿಕೊಂಡ ಕೌಶಲ್ಯಗಳು ಮನಬಂದಂತೆ C ++ ಗೆ ಬದಲಾಯಿಸಲು ಅಥವಾ ಅಸೆಂಬ್ಲರ್ಗೆ ಸಹ ಸಾಕಾಗುತ್ತದೆ. ಆದಾಗ್ಯೂ, Arduino ನಲ್ಲಿ ಮೂಲಭೂತ ಜ್ಞಾನವನ್ನು ಪಡೆಯುವುದು ಸುಲಭವಾಗಿದೆ.
WS2812B ಆಧಾರಿತ ರಿಬ್ಬನ್ ಅನ್ನು Arduino Uno (ನ್ಯಾನೋ) ಗೆ ಸಂಪರ್ಕಿಸಲಾಗುತ್ತಿದೆ
ಮೊದಲ ಹಂತದಲ್ಲಿ, ಸರಳವಾದ Arduino Uno ಅಥವಾ Arduino ನ್ಯಾನೋ ಬೋರ್ಡ್ ಸಾಕು. ನಂತರದಲ್ಲಿ, ಹೆಚ್ಚು ಸಂಕೀರ್ಣವಾದ ವ್ಯವಸ್ಥೆಗಳನ್ನು ನಿರ್ಮಿಸಲು ಹೆಚ್ಚು ಸಂಕೀರ್ಣವಾದ ಬೋರ್ಡ್ಗಳನ್ನು ಬಳಸಬಹುದು. Arduino ಬೋರ್ಡ್ಗೆ ವಿಳಾಸ ಮಾಡಬಹುದಾದ ಎಲ್ಇಡಿ ಸ್ಟ್ರಿಪ್ ಅನ್ನು ಭೌತಿಕವಾಗಿ ಸಂಪರ್ಕಿಸುವಾಗ, ಕೆಲವು ಷರತ್ತುಗಳನ್ನು ಪೂರೈಸಲಾಗಿದೆಯೆ ಎಂದು ನೀವು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬೇಕು:
- ಕಡಿಮೆ ಶಬ್ದ ವಿನಾಯಿತಿಯಿಂದಾಗಿ, ಡೇಟಾ ಲೈನ್ ಸಂಪರ್ಕ ಕಂಡಕ್ಟರ್ಗಳು ಸಾಧ್ಯವಾದಷ್ಟು ಚಿಕ್ಕದಾಗಿರಬೇಕು (ನೀವು ಅವುಗಳನ್ನು 10 ಸೆಂ.ಮೀ ಒಳಗೆ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಬೇಕು);
- ಆರ್ಡುನೊ ಬೋರ್ಡ್ನ ಉಚಿತ ಡಿಜಿಟಲ್ ಔಟ್ಪುಟ್ಗೆ ಡೇಟಾ ವೈರ್ ಅನ್ನು ಸಂಪರ್ಕಿಸಿ - ಅದನ್ನು ನಂತರ ಸಾಫ್ಟ್ವೇರ್ನಿಂದ ಸೂಚಿಸಲಾಗುತ್ತದೆ;
- ಹೆಚ್ಚಿನ ಶಕ್ತಿಯ ಬಳಕೆಯಿಂದಾಗಿ ಮಂಡಳಿಯಿಂದ ಸ್ಟ್ರಿಪ್ ಅನ್ನು ಪವರ್ ಮಾಡುವುದು ಅನಿವಾರ್ಯವಲ್ಲ - ಈ ಉದ್ದೇಶಕ್ಕಾಗಿ ಪ್ರತ್ಯೇಕ ವಿದ್ಯುತ್ ಸರಬರಾಜುಗಳನ್ನು ಒದಗಿಸಲಾಗುತ್ತದೆ.
ಲುಮಿನೈರ್ ಮತ್ತು ಆರ್ಡುನೊದ ಸಾಮಾನ್ಯ ವಿದ್ಯುತ್ ಸರಬರಾಜು ತಂತಿಯನ್ನು ಸಂಪರ್ಕಿಸುವುದು ಅವಶ್ಯಕ.
WS2812B ಸಾಫ್ಟ್ವೇರ್ ನಿಯಂತ್ರಣದ ಮೂಲಭೂತ ಅಂಶಗಳು
WS2812B ಚಿಪ್ಗಳನ್ನು ನಿಯಂತ್ರಿಸಲು ನೀವು ಹೆಚ್ಚಿನ ನಿಖರತೆಯನ್ನು ತಡೆದುಕೊಳ್ಳುವ ನಿರ್ದಿಷ್ಟ ಉದ್ದದೊಂದಿಗೆ ದ್ವಿದಳ ಧಾನ್ಯಗಳನ್ನು ರಚಿಸಬೇಕಾಗಿದೆ ಎಂದು ಈಗಾಗಲೇ ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ. Arduino ಭಾಷೆಯಲ್ಲಿ ಸಣ್ಣ ನಾಡಿಗಳನ್ನು ರೂಪಿಸಲು ಆಜ್ಞೆಗಳಿವೆ ಮೈಕ್ರೋಸೆಕೆಂಡ್ಗಳ ವಿಳಂಬ ಮತ್ತು ಸೂಕ್ಷ್ಮಗಳು. ಸಮಸ್ಯೆಯೆಂದರೆ ಈ ಆಜ್ಞೆಗಳ ರೆಸಲ್ಯೂಶನ್ 4 ಮೈಕ್ರೋಸೆಕೆಂಡುಗಳು. ಅಂದರೆ, ನಿರ್ದಿಷ್ಟ ನಿಖರತೆಯೊಂದಿಗೆ ಸಮಯ ವಿಳಂಬಗಳನ್ನು ರೂಪಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ಸಿ ++ ಅಥವಾ ಅಸೆಂಬ್ಲರ್ ಉಪಕರಣಗಳಿಗೆ ಹೋಗುವುದು ಅವಶ್ಯಕ. ಈ ಉದ್ದೇಶಕ್ಕಾಗಿ ವಿಶೇಷವಾಗಿ ರಚಿಸಲಾದ ಗ್ರಂಥಾಲಯಗಳ ಸಹಾಯದಿಂದ Arduino ಮೂಲಕ ವಿಳಾಸ ಮಾಡಬಹುದಾದ ಎಲ್ಇಡಿ ಸ್ಟ್ರಿಪ್ ಅನ್ನು ನಿಯಂತ್ರಿಸಲು ಸಾಧ್ಯವಿದೆ. ನೀವು ಪ್ರೋಗ್ರಾಂ ಬ್ಲಿಂಕ್ನೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸಬಹುದು, ಇದು ಬೆಳಕನ್ನು ಹೊರಸೂಸುವ ಅಂಶಗಳನ್ನು ಮಿಟುಕಿಸುತ್ತದೆ.
ಫಾಸ್ಟ್ ಲೆಡ್
ಈ ಗ್ರಂಥಾಲಯವು ಸಾರ್ವತ್ರಿಕವಾಗಿದೆ. ವಿಳಾಸ ಮಾಡಬಹುದಾದ ರಿಬ್ಬನ್ ಜೊತೆಗೆ, ಇದು SPI ನಿಯಂತ್ರಿತ ರಿಬ್ಬನ್ಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಅನೇಕ ಸಾಧನಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಇದು ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಹೊಂದಿದೆ.
ಮೊದಲು ನೀವು ಗ್ರಂಥಾಲಯವನ್ನು ಸಂಪರ್ಕಿಸಬೇಕು. ಸೆಟಪ್ ಬ್ಲಾಕ್ ಮೊದಲು ಇದನ್ನು ಮಾಡಲಾಗುತ್ತದೆ, ಮತ್ತು ಸ್ಟ್ರಿಂಗ್ ಈ ರೀತಿ ಕಾಣುತ್ತದೆ:
#ಸೇರಿಸು
ಪ್ರತಿ ಬೆಳಕು ಹೊರಸೂಸುವ ಡಯೋಡ್ನ ಬಣ್ಣಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಒಂದು ಶ್ರೇಣಿಯನ್ನು ರಚಿಸುವುದು ಮುಂದಿನ ಹಂತವಾಗಿದೆ. ಇದು 15 ಅಂಶಗಳ ಹೆಸರಿನ ಪಟ್ಟಿ ಮತ್ತು ಆಯಾಮವನ್ನು ಹೊಂದಿರುತ್ತದೆ.
CRGB ಸ್ಟ್ರಿಪ್[15]
ಸೆಟಪ್ ಬ್ಲಾಕ್ನಲ್ಲಿ ನೀವು ರಿಬ್ಬನ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಬೇಕು ಸ್ಕ್ರಿಪ್ಟ್ ಕೆಲಸ ಮಾಡುತ್ತದೆ:
ಅನೂರ್ಜಿತ ಸೆಟಪ್() {
FastLED.addLeds< WS2812B, 7, RGB>(ಸ್ಟ್ರಿಪ್, 15);
ಇಂಟ್ ಜಿ;
}
RGB ಪ್ಯಾರಾಮೀಟರ್ ಬಣ್ಣಗಳ ಅನುಕ್ರಮವನ್ನು ಹೊಂದಿಸುತ್ತದೆ, 15 ಎಂದರೆ ಎಲ್ಇಡಿಗಳ ಸಂಖ್ಯೆ, 7 ನಿಯಂತ್ರಣಕ್ಕೆ ನಿಯೋಜಿಸಲಾದ ಔಟ್ಪುಟ್ನ ಸಂಖ್ಯೆ (ಕೊನೆಯ ಪ್ಯಾರಾಮೀಟರ್ಗೆ ಸ್ಥಿರವನ್ನು ನಿಯೋಜಿಸಲು ಉತ್ತಮವಾಗಿದೆ).
ಲೂಪ್ ಬ್ಲಾಕ್ ಕೆಂಪು (ಕೆಂಪು ಹೊಳಪು) ರಚನೆಯ ಪ್ರತಿ ವಿಭಾಗಕ್ಕೆ ಅನುಕ್ರಮವಾಗಿ ಬರೆಯುವ ಲೂಪ್ನೊಂದಿಗೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ:
ಗಾಗಿ (g=0; g< 15;g++)
{ಸ್ಟ್ರಿಪ್[g]=CRGB::ಕೆಂಪು;}
ನಂತರ ರಚಿಸಲಾದ ರಚನೆಯನ್ನು ಪ್ರಕಾಶಕಕ್ಕೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ:
FastLED.show();
ವಿಳಂಬ 1000 ಮಿಲಿಸೆಕೆಂಡ್ಗಳು (ಸೆಕೆಂಡ್ಗಳು):
ವಿಳಂಬ (1000);
ನಂತರ ನೀವು ಎಲ್ಲಾ ಅಂಶಗಳನ್ನು ಒಂದೇ ರೀತಿಯಲ್ಲಿ ಆಫ್ ಮಾಡಬಹುದು, ಅವುಗಳಲ್ಲಿ ಕಪ್ಪು ಬರೆಯಿರಿ.
ಗಾಗಿ (int g=0; g< 15;g++)
{ಸ್ಟ್ರಿಪ್[g]=CRGB::ಕಪ್ಪು;}
FastLED.show();
ವಿಳಂಬ (1000);
ಸ್ಕೆಚ್ ಅನ್ನು ಕಂಪೈಲ್ ಮಾಡಿದ ನಂತರ ಮತ್ತು ಲೋಡ್ ಮಾಡಿದ ನಂತರ ರಿಬ್ಬನ್ 2 ಸೆಕೆಂಡುಗಳ ಅವಧಿಯೊಂದಿಗೆ ಮಿನುಗುತ್ತದೆ. ನೀವು ಪ್ರತಿ ಬಣ್ಣದ ಘಟಕವನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ನಿಯಂತ್ರಿಸಲು ಬಯಸಿದರೆ, ನಂತರ ಸ್ಟ್ರಿಂಗ್ ಬದಲಿಗೆ {ಸ್ಟ್ರಿಪ್[g]=CRGB::ಕೆಂಪು;} ಹಲವಾರು ತಂತಿಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ:
{
ಸ್ಟ್ರಿಪ್[g].r=100;// ಕೆಂಪು ಅಂಶದ ಪ್ರಕಾಶಮಾನ ಮಟ್ಟವನ್ನು ಹೊಂದಿಸಿ
ಸ್ಟ್ರಿಪ್[g].g=11;// ಹಸಿರುಗೆ ಅದೇ
ಸ್ಟ್ರಿಪ್[g].b=250;// ನೀಲಿ ಬಣ್ಣಕ್ಕೆ ಅದೇ
}
ನಿಯೋಪಿಕ್ಸೆಲ್
ಈ ಲೈಬ್ರರಿಯು ನಿಯೋಪಿಕ್ಸೆಲ್ ರಿಂಗ್ ಎಲ್ಇಡಿಗಳೊಂದಿಗೆ ಮಾತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಆದರೆ ಇದು ಕಡಿಮೆ ಸಂಪನ್ಮೂಲ-ತೀವ್ರವಾಗಿದೆ ಮತ್ತು ಅಗತ್ಯಗಳನ್ನು ಮಾತ್ರ ಒಳಗೊಂಡಿದೆ. Arduino ನಲ್ಲಿ ಪ್ರೋಗ್ರಾಂ ಈ ರೀತಿ ಕಾಣುತ್ತದೆ:
#ಸೇರಿಸು
ಹಿಂದಿನ ಪ್ರಕರಣದಂತೆ, ಲೈಬ್ರರಿಯನ್ನು ಪ್ಲಗ್ ಇನ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಲೆಂಟಾ ವಸ್ತುವನ್ನು ಘೋಷಿಸಲಾಗಿದೆ:
Adafruit_NeoPixel lenta=Adafruit_NeoPixel(15, 6);// ಅಲ್ಲಿ 15 ಅಂಶಗಳ ಸಂಖ್ಯೆ ಮತ್ತು 6 ನಿಗದಿಪಡಿಸಿದ ಔಟ್ಪುಟ್ ಆಗಿದೆ
ಲೆಂಟಾವನ್ನು ಸೆಟಪ್ ಬ್ಲಾಕ್ನಲ್ಲಿ ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ:
ಅನೂರ್ಜಿತ ಸೆಟಪ್() {
lenta.begin ()
}
ಲೂಪ್ ಬ್ಲಾಕ್ನಲ್ಲಿ ಎಲ್ಲಾ ಅಂಶಗಳನ್ನು ಕೆಂಪು ಬಣ್ಣದಲ್ಲಿ ಬೆಳಗಿಸಲಾಗುತ್ತದೆ, ವೇರಿಯಬಲ್ ಅನ್ನು ಟೇಪ್ಗೆ ರವಾನಿಸಲಾಗುತ್ತದೆ ಮತ್ತು 1 ಸೆಕೆಂಡ್ ವಿಳಂಬವನ್ನು ರಚಿಸಲಾಗುತ್ತದೆ:
ಗಾಗಿ (int y=0; y<15;y++)// 15 - ಲುಮಿನೇರ್ನಲ್ಲಿನ ಅಂಶಗಳ ಸಂಖ್ಯೆ
{lenta.setPixelColor(y, lenta.Color(255,0,0))};
lenta.show();
ವಿಳಂಬ (1000);
ಕಪ್ಪು ಬರೆಯುವ ಮೂಲಕ ಲೆಂಟಾ ಹೊಳೆಯುವುದನ್ನು ನಿಲ್ಲಿಸುತ್ತದೆ:
ಗಾಗಿ (int y=0; y< 15;y++)
{lenta.setPixelColor(y, lenta.Color(0,0,0))};
lenta.show();
ವಿಳಂಬ (1000);
ವೀಡಿಯೊ ಪಾಠ: ವಿಳಾಸ ಮಾಡಬಹುದಾದ ರಿಬ್ಬನ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ದೃಶ್ಯ ಪರಿಣಾಮಗಳ ಮಾದರಿಗಳು.
ಎಲ್ಇಡಿಗಳನ್ನು ಹೇಗೆ ಫ್ಲಾಶ್ ಮಾಡಬೇಕೆಂದು ಕಲಿತ ನಂತರ, ನೀವು ಪಾಠವನ್ನು ಮುಂದುವರಿಸಬಹುದು ಮತ್ತು ಸುಗಮ ಪರಿವರ್ತನೆಯೊಂದಿಗೆ ಜನಪ್ರಿಯ "ರೇನ್ಬೋ" ಮತ್ತು "ನಾರ್ದರ್ನ್ ಲೈಟ್ಸ್" ಸೇರಿದಂತೆ ಬಣ್ಣದ ಪರಿಣಾಮಗಳನ್ನು ಹೇಗೆ ರಚಿಸುವುದು ಎಂಬುದನ್ನು ಕಲಿಯಬಹುದು. WS2812B ಮತ್ತು Arduino ಅಡ್ರೆಸ್ ಮಾಡಬಹುದಾದ LED ಗಳು ಇದಕ್ಕಾಗಿ ನಿಮಗೆ ಬಹುತೇಕ ಮಿತಿಯಿಲ್ಲದ ಸಾಧ್ಯತೆಗಳನ್ನು ನೀಡುತ್ತವೆ.