ዝርዝር ሁኔታ:

የነጥብ ብርሃን ንድፍ 6 ደረጃዎች
የነጥብ ብርሃን ንድፍ 6 ደረጃዎች

ቪዲዮ: የነጥብ ብርሃን ንድፍ 6 ደረጃዎች

ቪዲዮ: የነጥብ ብርሃን ንድፍ 6 ደረጃዎች
ቪዲዮ: የአማርኛ ቃላት እማሬያዊና ፍካሬያዊ ፍቺ... 2024, ሀምሌ
Anonim
Image
Image
የነጥብ ብርሃን ንድፍ
የነጥብ ብርሃን ንድፍ
የነጥብ ብርሃን ንድፍ
የነጥብ ብርሃን ንድፍ

“ብርሃንን በገዛ እጄ መቆጣጠር እና የራሴን ፈቃድ መግለፅ እችላለሁን?” በሚለው ሀሳብ ጀመርኩ።

በእራስዎ የእራስዎን ቀለሞች እንዲፈጥሩ ፣ በእነዚያ ቀለሞች የእራስዎን ቅጦች ዲዛይን እንዲያደርጉ እና የተለያዩ የአኒሜሽን ውጤቶችን እንዲያገኙ የሚያስችልዎ ‹የነጥብ ብርሃን ንድፍ› ነው።

ደረጃ 1: ቁሳቁሶች

ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
  1. አርዱዲኖ UNO x 13
  2. WS2901 ወይም WS2811 ፒክሴል LED ስትሪፕ (130 LEDS)
  3. የአዝራር መቀየሪያ x 1
  4. የመቀየሪያ መቀየሪያ x 65
  5. Potentionmeter x 65
  6. ቀስተ ደመና ገመድ
  7. ኃይል በቂ SMPS
  8. ኮንዳክተር ገመድ
  9. አክሬሊክስ ግልፅ ክብ አሞሌ (30 ሚሜ ዲያሜትር)
  10. ጥቁር ቀለም አክሬሊክስ ቦርድ (5 ቲ) (500 ሚሜ*790 ሚሜ) x 2 ፣ (500 ሚሜ*35 ሚሜ) x 2 ፣ (790 ሚሜ*35 ሚሜ) x 2

ደረጃ 2 የግንባታ ዕቅድ

የግንባታ ዕቅድ
የግንባታ ዕቅድ
የግንባታ ዕቅድ
የግንባታ ዕቅድ
የግንባታ ዕቅድ
የግንባታ ዕቅድ
የግንባታ ዕቅድ
የግንባታ ዕቅድ

ደረጃ 3 - ሃርድዌር - የወረዳ ንድፍ

ሃርድዌር - የወረዳ ንድፍ
ሃርድዌር - የወረዳ ንድፍ
ሃርድዌር - የወረዳ ንድፍ
ሃርድዌር - የወረዳ ንድፍ
ሃርድዌር - የወረዳ ንድፍ
ሃርድዌር - የወረዳ ንድፍ
  1. ከላይ እንደተጠቀሰው መዋቅር የ acrylic ሳህን ይቁረጡ። (ደረጃ 2 ይመልከቱ)

  2. አንድ የኒዮ-ፒክሴል ኤልኢዲ በ potentionmeter ቀዳዳ የላይኛው እና የታችኛው ክፍል ላይ ተጭኗል ፣ እና በአጠቃላይ 65 ጥንድ ኒኦ-ፒክሰል ኤልኢዲዎች ተያይዘዋል።
  3. አንድ የአርዱዲኖ ፒን ለመመስረት አንድ ጥንድ የኒዮ-ፒክሴል ኤልኢዲዎች በአንድ ላይ ተያይዘዋል።
  4. ከፖቲሜትር ሜትር ቀዳዳዎች ጋር 65 ፖታቲሜትር ሜትርን ይግጠሙ። (በኒዮ-ፒክሴሌድ ወለል ተቃራኒው ጎን ላይ ያድርጉት።)
  5. ከመቀየሪያ ቀዳዳዎች ጋር ለማዛመድ 65 ፈጣን ቁልፎችን ያያይዙ።
  6. አምስት የአስራ አራቱን የሃርድዌር ቁራጮችን ወደ አንድ አርዱዲኖ UNO ለማሰር በአጠቃላይ አስራ ሦስት የአርዱዲኖ ዩኒዮዎች ከእያንዳንዱ አስራ ሦስቱ ዞኖች ጋር ተያይዘዋል።
  7. በተያያዘው ፎቶ ላይ እንደሚታየው ጠቋሚዎቹን ፣ የመቀየሪያ መቀያየሪያዎቹን እና የኒዮ-ፒክሴል ኤልኢዲዎችን ወደ አርዱዲኖ UNO ፒኖች (ሽቦዎች) ያገናኙ። (ደረጃ 2 ይመልከቱ)
  8. የ GND እና የ 5V ፒኖች የበርካታ የአርዱዲኖ UNO ዎች ወደ ገመድ ሽቦዎች ይሰበሰባሉ ፣ ከዚያ ከውጭ ኃይል ጋር ይገናኛሉ። (ደረጃ 2 ይመልከቱ)
  9. በአየር ግፊት አቧራውን ያስወግዱ።

ደረጃ 4 - ሃርድዌር - አክሬሊክስ መቁረጥ

ሃርድዌር - አክሬሊክስ መቁረጥ
ሃርድዌር - አክሬሊክስ መቁረጥ
ሃርድዌር - አክሬሊክስ መቁረጥ
ሃርድዌር - አክሬሊክስ መቁረጥ
ሃርድዌር - አክሬሊክስ መቁረጥ
ሃርድዌር - አክሬሊክስ መቁረጥ
  1. አክሬሊክስ ዘንግን በ 50 ሚሜ ርዝመት ይቁረጡ።

  2. የአክሪሊክስ ዘንግ አንድ ጎን ከፖቲሜትርሜትር ተቆጣጣሪ ክፍል ጋር ለማዛመድ በመጠን እና በጥልቀት ተቆፍሯል።
  3. ወደ ፖታቲሜትር ውስጥ በደንብ ሊገባ ከሚችል ቀዳዳ (አክሬሊክስ) በትር ከጉድጓዱ በትንሹ ሰፋ ያለ ነው።
  4. ብርሃኑ በደንብ እንዲተላለፍ ሌላኛው ወገን ትንሽ የአሸዋ ወረቀት ይሰጣል።

ደረጃ 5 - የአርዱዲኖ ፕሮግራም ኮድ

www.kasperkamperman.com/blog/arduino/ardui…

'hsb to rgb' ኮድ 를 참고 한 사이트

#ያካትቱ

// 'adafruit_neopixel' 헤더 파일 라는 외부 라이브러리 를 를 포함

// 네오 픽셀 연결 핀 핀 번호 선언 선언

#ጥርት ፒን 1 2 #ተጣራ ፒን 2 3 #ፒን 3 4 #ገላጭ ፒን 5 5 #ፒን 5 6 ን ይግለጹ

#መግለፅ NUMPIXELS 2 // 네오 픽셀 LED 갯수

#ይግለጹ NUM_LIGHTS 5 // 작동 모듈 갯수 (네오 픽셀 오브젝트 갯수)

// 네오 픽셀 오브젝트 ድርድር 선언

Adafruit_NeoPixel ፒክስል = {Adafruit_NeoPixel (NUMPIXELS, PIN1, NEO_GRB + NEO_KHZ800), Adafruit_NeoPixel (NUMPIXELS, PIN2, NEO_GRB + NEO_KHZ800), Adafruit_NeoPixel (NUMPIXELS, PIN3, NEO_GRB + NEO_KHZ800), Adafruit_NeoPixel (NUMPIXELS, PIN4, NEO_GRB + NEO_KHZ800), Adafruit_NeoPixel (NUMPIXELS ፣ PIN5 ፣ NEO_GRB + NEO_KHZ800)}; //// 네오 픽셀 을 사용 하기 위해 객체 객체 하나 를 를 를 생성. // LED 인자 값 은 네오 픽셀 의 의 의 의 의 두번째 두번째 두번째 두번째 두번째 두번째 두번째 의 의 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는 바뀌는

//////////////////////////////////////////////////////////////

////// HSV 를 RGB 로 변환 하는 함수 getRGB () 를 위한 변수 와 함수 함수 선언

const ባይት dim_curve = {

0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 18, 18, 18, 19, 19, 19, 20, 20, 20, 21, 21, 22, 22, 22, 23, 23, 24, 24, 25, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 32, 32, 33, 33, 34, 35, 35, 36, 36, 37, 38, 38, 39, 40, 40, 41, 42, 43, 43, 44, 45, 46, 47, 48, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 68, 69, 70, 71, 73, 74, 75, 76, 78, 79, 81, 82, 83, 85, 86, 88, 90, 91, 93, 94, 96, 98, 99, 101, 103, 105, 107, 109, 110, 112, 114, 116, 118, 121, 123, 125, 127, 129, 132, 134, 136, 139, 141, 144, 146, 149, 151, 154, 157, 159, 162, 165, 168, 171, 174, 177, 180, 183, 186, 190, 193, 196, 200, 203, 207, 211, 214, 218, 222, 226, 230, 234, 238, 242, 248, 255, }; //

ባዶ getRGB (int hue ፣ int sat ፣ int val ፣ int ቀለሞች [5] [3] ፣ int index) {

val = dim_curve [val]; ተቀመጠ = 255 - dim_curve [255 - sat];

// 색조 ፣ 채도 및 밝기 (HSB /HSV) ፣ RGB 로 변환

// dim_curve 밝기 밝기 값 및 채도 (반전) 에서만 사용 됩니다. // 이것은 가장 자연스럽게 보입니다 보입니다.

int r;

int g; int ለ; int መሠረት;

ከሆነ (ተቀመጠ == 0) {

ቀለሞች [መረጃ ጠቋሚ] [0] = ቫል; ቀለሞች [መረጃ ጠቋሚ] [1] = ቫል; ቀለሞች [መረጃ ጠቋሚ] [2] = ቫል; } ሌላ {

መሠረት = ((255 - ሳት) * ቫል) >> 8;

መቀየሪያ (ቀለም / 60) {

ጉዳይ 0: r = ቫል; g = (((ቫል - መሠረት) * ቀለም) / 60) + መሠረት; ለ = መሠረት; ሰበር;

ጉዳይ 1 ፦

r = (((ቫል - መሠረት) * (60 - (hue % 60))) / 60) + መሠረት; g = ቫል; ለ = መሠረት; ሰበር;

ጉዳይ 2

r = መሠረት; g = ቫል; ለ = (((ቫል - መሠረት) * (hue % 60)) / 60) + መሠረት; ሰበር;

ጉዳይ 3

r = መሠረት; g = (((ቫል - መሠረት) * (60 - (hue % 60))) / 60) + መሠረት; ለ = ቫል; ሰበር;

ጉዳይ 4:

r = (((ቫል - መሠረት) * (hue % 60)) / 60) + መሠረት; g = መሠረት; ለ = ቫል; ሰበር;

ጉዳይ 5:

r = ቫል; g = መሠረት; ለ = (((ቫል - መሠረት) * (60 - (hue % 60))) / 60) + መሠረት; ሰበር; }

ቀለሞች [መረጃ ጠቋሚ] [0] = r;

ቀለሞች [መረጃ ጠቋሚ] [1] = g; ቀለሞች [መረጃ ጠቋሚ] [2] = ለ; }

}

int rgb_colors [NUM_LIGHTS] [3]; // 네오 픽셀 오브젝트 갯수 마다 gb rgb ቀለም 선언

int hue [NUM_LIGHTS]; // 네오 픽셀 오브젝트 갯수 ue hue 선언 int sat [NUM_LIGHTS]; // 네오 픽셀 갯수 갯수 마다 명도 선언 int brignt [NUM_LIGHTS]; // 네오 픽셀 오브젝트 갯수 마다 마다 밝기 서언 서언

// 일반 변수 선언

int beginSwitch = {8, 9, 10, 11, 12}; // አብራ/አጥፋ 번호 핀 번호 boolean startState = {ሐሰት ፣ ሐሰት ፣ ሐሰት ፣ ሐሰት ፣ ሐሰት}; // አብራ/አጥፋ 변수 변수

const int colorPin = {A0, A1, A2, A3, A4}; // 가변 저항 핀 번호 번호

int colorVal = {0, 0, 0, 0, 0}; // 가변 저항 초기 값 값

int animationButton = 7; // 애니메이션 모드 변환 버튼 버튼 핀 번호 번호

/////////////////////////////////////////////////

// 애니메이션 모든 변환 을 위한 버튼 버튼 디 바운싱 변수 변수 디 // 디 바운싱? Button 시간 내 많은 이벤트 가 발생 하는것 에 대한 에 대해서 대해서 해결 button button button button button button button button button button int buttonState; // 입력 핀 으로부터 의 현재 판독 last int lastButtonState = HIGH; // 이전 의 판독 값 은 켜진 상태 로 로 ያልተፈረመ ረጅም lastDebounceTime = 0; // 출력 핀 이 마지막 으로 전환 된 시간 은 0 으로 ያልተፈረመ ረጅም debounceDelay = 50; // 디 바운싱 타임 설정; 출력 이 깜빡 이면 증가 한다 한다 int MODE = 0; // 애니메이션 모드 변수

int B_Interval [5]; // 블 링킹 을 위한 각 모듈 모듈 의 의 랜덤 랜덤 랜덤 변수

int B_Min = 100; // 블 링킹 최단 속도; int B_Max = 500; // 블 링킹 최장 속도; int R_Interval = 50; // 레인보우 애니메이션 속도 변수 int D_Interval = 10; // 디밍 속도 변수

ቡሊያን B_state [5]; // 블 링킹 을 위한 각 모듈 모듈 의 의 상태 상태 변수

///////////////////////////////////////////////////////

// 멀티 테스 킹 애니메이션 을 위한 위한 시간 시간 변수 변수 선언

ያልተፈረመ ረጅም የአሁኑ ሚሊስ; // 현재 시간 변수

ያልተፈረመ ረጅም B_previousMillis [5]; // 각 모듈 의 블 링킹 타이머 ያልተፈረመ ረጅም DR_Millis [5]; // 각 모듈 의 디밍 랜덤 타이머 (예비) ያልተፈረመ ረጅም R_previousMillis; // 레인보우 타이머 ያልተፈረመ ረጅም D_previousMillis; // 디밍 타이머

ቡሊያን firstRainbow = እውነት; // 레인보우 색상 초기화 상태 상태 변수

int RainbowSpeed; // 레인보우 변환 변수

int ብሩህ = 100; // 디밍 초기 값 int BrightnessFactor = 1; // 디밍 증감 값 //////////////////////////////// /////////////////////////////////

ባዶነት ማዋቀር () {

ለ (int i = 0; i <NUM_LIGHTS; i ++) {pixels .begin (); // 네오 픽셀 오브젝트 초기화}

// 버튼 인풋 설정

ለ (int i = 0; i <NUM_LIGHTS; i ++) {pinMode (startSwitch ፣ INPUT_PULLUP) ፤ // አብራ/አጥፋ 버튼 인풋 설정} pinMode (animationButton, INPUT_PULLUP); // 애니메이션 버튼 인풋 설정 설정

ለ (int i = 0; i <NUM_LIGHTS; i ++) {B_Interval = int (በዘፈቀደ (B_Min ፣ B_Max)); // 모듈 별 블 링킹 랜덤 랜덤 인터발 (인터발) 변수 생성}

Serial.begin (9600); // 통신 설정

}

ባዶነት loop () {

ሁነታ = CheckAnimMode (); // 모드 에 애니메이션 체크 모드 모드 함수 함수 를 넣는다

// 버튼 과 가변 저항 을 값 값 을 각각 읽어 읽어 변수 변수 변수 변수 한다.

ለ (int i = 0; i <NUM_LIGHTS; i ++) {startState =! digitalRead (startSwitch ); // አብራ/አጥፋ 에서 에서 읽은 값 의 반대 값 을 St startState 에 넣어 준다 // startState = digitalRead (startSwitch ); colorVal = analogRead (colorPin ); // 가변 저항 에서 읽은 값 을 가변 가변 저항 초기 값 값 에 에 에}

ማብሪያ (ሞድ) {// 애니메이션 함수 스위치 문

ጉዳይ 0: ላይ (); // በ 함수 실행 እረፍት ላይ; // 조건문 에서 빠져 나가라 나가라

ጉዳይ 1 ፦

ቀስተ ደመና (); // ቀስተ ደመና 실행 실행 ሰበር;

ጉዳይ 2

ማደብዘዝ (); // ማደብዘዝ 실행 실행 መስበር;

ጉዳይ 3

ብልጭ ድርግም (); // ብልጭ ድርግም ማለት 실행 실행 ሰበር; }

ለ (int i = 0; i <NUM_LIGHTS; i ++) {pixels .show (); // 네오 픽셀 오브젝트 배열 켜라 켜라}

}

/////////////////////////////////////////////////////////////

int CheckAnimMode () {

// 애니메이션 선택 버튼 을 읽어 모드 모드 를 를 결정 결정 한다.

//////////////////////////////// /// currentMillis = millis (); // 시간 측정 int reading = digitalRead (animationButton); ከሆነ (ንባብ! // 현재 시간 을 출력 핀 이 마지막 마지막 으로 전환 된 시간 시간 시간 에 에}

ከሆነ ((currentMillis - lastDebounceTime)> debounceDelay) {

ከሆነ (ማንበብ! = buttonState) {// 입력 핀 받은 현재 값 과 과 판독 값 과 비교 비교

buttonState = ማንበብ; // 판독 값 을 አዝራር ግዛት 대입 대입

ከሆነ (buttonState == LOW) {// 버튼 상태 가 꺼져 있다면

MODE ++; // 버튼 모드 1 증가 증가 ከሆነ (MODE> 3) {MODE = 0; firstRainbow = እውነት; // 레인보우 색상 초기화 상태 켜짐 BrightnessFactor = 1; // 디밍 증감 값 ብሩህ = 15; // 밝기 는 15}}}}

lastButtonState = ማንበብ; // 판독 값 을 이전 의 버튼 버튼 상태 상태 에 에 대입

MODE ን መመለስ; 하고 를 종료 하고 하고 ሞድ 로 로 값 을 리턴 하라 하라}

////////////////////////////////////////////////////////////////////

// የአኒሜሽን ሞድ መዝናኛ

// በርቷል

ባዶ ላይ () {Serial.println («በርቷል»); // 시리얼 모니터 에 on 을 써라 ለ (int i = 0; i <NUM_LIGHTS; i ++) {color_set (i, colorVal ); // 가변 저항 값 에 따라 컬러 컬러 셋팅}}

// ቀስተ ደመና

ባዶ ቀስተ ደመና () {Serial.println (“ዝናብ”); // 시리얼 모니터 에 ዝናብ 써라 써라 ከሆነ (firstRainbow) {RainbowSpeed = 0; // 레인보우 속도 초기화 firstRainbow = ሐሰት; // 레인보우 색상 초기화 상태 꺼짐 if} ከሆነ (ሚሊስ () - R_previousMillis> R_Interval) {// 흐른 시간 값 이 레인보우 인터벌 값 보다 크면 _ R_previousMillis = currentMillis; // 현재 시간 을 이전 의 레인보우 시간 에 넣어 라 in RainbowSpeed += 10; // 레인보우 변환 변수 에 10 을 더해라}

ለ (int i = 0; i <NUM_LIGHTS; i ++) {color_set (i ፣ (colorVal +RainbowSpeed) % 1023); // 레인보우 컬러 셋팅}

}

// ማደብዘዝ

ባዶነት ማደብዘዝ () {Serial.println ("dimm"); // 시리얼 모니터 에 dimm 을 써라 Serial.println (ብሩህ); // 시리얼 모니터 에 ብሩህ 써라 써라 ከሆነ (የአሁኑ ሚሊስ - D_previousMillis> D_Interval) {// 흐른 시간 값 이 디밍 인터벌 값 보다 보다 _ D_previousMillis = currentMillis; // 현재 시간 을 이전 의 디밍 시간 에 넣어 라 라 ብሩህ += BrightnessFactor; // 밝기 에 디밍 증감 값 1 씩 올려라} ከሆነ (ብሩህ 254) {BrightnessFactor = -1 * BrightnessFactor; } ብሩህ = እገዳ (ብሩህ ፣ 99 ፣ 254); // 변수 밝기 값 을 최소값 99 ~ 최대 값 254 의 의 값 으로 으로 한정 한다

ለ (int i = 0; i <NUM_LIGHTS; i ++) {dim_color_set (i, Bright); // 디밍 컬러 셋팅}}

// ብልጭ ድርግም

ባዶ ብልጭ ድርግም () {Serial.println ("ብልጭ ድርግም"); // 시리얼 모니터 에 ብልጭ ድርግም ይላል

ለ (int i = 0; i B_Interval ) {// 흐른 시간 값 이 블링크 인터벌 값 보다 크면 크면

B_previousMillis = currentMillis; // 현재 시간 을 이전 의 블링크 시간 에 넣어 _ _ B_state =! B_state ; // 각 모듈 의 블 링킹 상태 변수 의 값 반대 값 값 을 을 대입 하라}} ለ (int i = 0; i <NUM_LIGHTS; i ++) {if (B_state ) {// 모듈 의 블 링킹 상태 상태 히면 color_set (i, colorVal ); // 가변 저항 값 에 따라 컬러 셋팅} ሌላ {noColor_set (i); // 읽히지 않으면 컬러 셋팅 하지 하지 않음}}

}

////////////////////////////////////////////////////////////////////////////////////////

// ዋና ነጥብ

// የቀለም ስብስብ

ባዶነት color_set (int ኢንዴክስ ፣ int colorSenser) {

ከሆነ (startState [index]) {hue [index] = map (colorSenser, 0, 1023, 0, 359); // 0 ~ 1023 값 을 0 ~ 359 값 으로 매핑 한 값 을 가지고 가지고 색상 값 color color (colorSenser 에) getRGB (hue [index], 255, 255, rgb_colors, index); ለ (int i = 0; i <NUMPIXELS; i ++) {pixels [index].setPixelColor (i ፣ pixels [index]. Color (rgb_colors [መረጃ] [2])); } // 픽셀 컬러 셋팅 을 rgb_colors 의 r, g, b 으로 설정} ሌላ noColor_set (መረጃ ጠቋሚ); // 컬러 셋팅 하지 않음}

////// noColor ስብስብ

ባዶ ባዶColor_set (int index) {// 컬러 셋팅 하지 않는 함수 설정 설정

ለ (int i = 0; i <NUMPIXELS; i ++) {pixels [index].setPixelColor (i ፣ pixels [index]. Color (0, 0, 0)); } // 픽셀 컬러 세팅 을 0, 0, 0 으로 설정}

//// dimColor ስብስብ

ባዶ dim_color_set (int ኢንዴክስ ፣ int BC) {// 디밍 컬러 셋팅 함수 설정 설정

ከሆነ (startState [index]) {hue [index] = map (colorVal [index], 0, 1023, 0, 359); // 0 ~ 1023 값 을 0 ~ 359 값 으로 매핑 한 값 을 가지고 가지고 색상 color color color (colorVal 에) getRGB (hue [index], 255, BC, rgb_colors, index); ለ (int i = 0; i <NUMPIXELS; i ++) {ፒክስሎች [መረጃ ጠቋሚ].setPixelColor (እኔ ፣ ፒክስሎች [መረጃ ጠቋሚ] [2])); } /// 픽셀 컬러 셋팅 을 rgb_colors 의 r, g, b 으로 설정} ሌላ noColor_set (መረጃ ጠቋሚ); // 컬러 셋팅 하지 않음}

ደረጃ 6: የተጠናቀቀ እይታ

የሚመከር: