DIY - 2019/Grow UP(Smart LED)

GUI 구성

알렉스윤 2019. 3. 15. 13:44

320 x 240 LCD와  NodeMCU를 연결해서 따로 GUI 구성하며 프로그래밍을 하고 있다.

우선 예전에 도두가이님께 전달받은 한글프로젝에 추가 요청드려 구현해 주신 글자크기 변환을 시험중...





다음으로 글자 조합의 약간의 오류가 있었는데 그것도 수정해 주셔서 요일에 "요"자 사이즈가 일반 글자와 크기가 비슷해졌다. ㄳ ㄳ







미세먼지를 표현하는 방법에는 두 가지가 있다.

첫번째는 미세먼지 데이타를 WHO 혹은 한국환경 기준을 적용해서 등급에 맞게 표시해 주는 것과

공공 DATA API에서 4단계로 운영하는 결과 값을 가져와서 그대로 표시하는 방법이다.


https://blog.naver.com/meritium/221267927722

WHO 기준의 8단계라는데 잘은 모르겠다.


한국환경공단 기준의 4단계

https://terms.naver.com/entry.nhn?docId=3551640&cid=58590&categoryId=58590

얼핏 뉴스에서, 앞으로 극초미세먼지 1ug/㎥ 도 중요하게 다룰거라고 한다.


[4단계로 확인한 결과]




[8단계로 확인한 결과]




일단 이렇게 만들어 두고, 8단게로 고고!


void dustSort() {

  //미세먼지 분류 char* parseAir[]={"<pm10Value>","<pm25Value>","<pm10Grade>","<pm25Grade>"}; //currentTag

  //*

  if ((parseAirValue[0].toInt()>=0) && (parseAirValue[0].toInt()<=15)) { dustIdx1 =0; }

  else if ((parseAirValue[0].toInt()>=16) && (parseAirValue[0].toInt()<=30)) { dustIdx1 =1; }

  else if ((parseAirValue[0].toInt()>=31) && (parseAirValue[0].toInt()<=40)) { dustIdx1 =2; }

  else if ((parseAirValue[0].toInt()>=41) && (parseAirValue[0].toInt()<=50)) { dustIdx1 =3; }

  else if ((parseAirValue[0].toInt()>=51) && (parseAirValue[0].toInt()<=75)) { dustIdx1 =4; }

  else if ((parseAirValue[0].toInt()>=76) && (parseAirValue[0].toInt()<=100)) { dustIdx1 =5; }

  else if ((parseAirValue[0].toInt()>=101) && (parseAirValue[0].toInt()<=150)) { dustIdx1 =6; }

  else if (parseAirValue[0].toInt()>=151) { dustIdx1 =7; }

  // */  

  

  /*

  if (parseAirValue[2] == "1") { dustIdx1 =1; }

  else if (parseAirValue[2] == "2") { dustIdx1 =3; }

  else if (parseAirValue[2] == "3") { dustIdx1 =4; }

  else if (parseAirValue[2] == "4") { dustIdx1 =6; }

  */


  // 초미세먼지 분류

  //*

  if ((parseAirValue[1].toInt()>=0) && (parseAirValue[1].toInt()<=8)) { dustIdx2 =0; }

  else if ((parseAirValue[1].toInt()>=9) && (parseAirValue[1].toInt()<=15)) { dustIdx2 =1; }

  else if ((parseAirValue[1].toInt()>=16) && (parseAirValue[1].toInt()<=20)) { dustIdx2 =2; }

  else if ((parseAirValue[1].toInt()>=21) && (parseAirValue[1].toInt()<=25)) { dustIdx2 =3; }

  else if ((parseAirValue[1].toInt()>=26) && (parseAirValue[1].toInt()<=37)) { dustIdx2 =4; }

  else if ((parseAirValue[1].toInt()>=38) && (parseAirValue[1].toInt()<=50)) { dustIdx2 =5; }

  else if ((parseAirValue[1].toInt()>=51) && (parseAirValue[1].toInt()<=75)) { dustIdx2 =6; }

  else if (parseAirValue[1].toInt()>=76) { dustIdx2 =7; } 

  //  */

  

  /*

  if (parseAirValue[3] == "1") { dustIdx2 =1; }

  else if (parseAirValue[3] == "2") { dustIdx2 =3; }

  else if (parseAirValue[3] == "3") { dustIdx2 =4; }

  else if (parseAirValue[3] == "4") { dustIdx2 =6; }  

  */

}