반응형
읽어 온 데이터를 char 배열이라고 하자.
우선 온도 데이터 char 배열을 String으로 변환한다.
캘빈 데이터를 섭씨 온도로 변화하는 방법은 K - 273.15 = 섭씨 온도가 된다.
코드로 옮기면 아래와 같다.
// Print the data extracted from the JSON
void printclientData(const struct clientData* clientData) {
Serial.print("Temp = ");
String receivedTemp = clientData->temp;
Serial.print(receivedTemp.toFloat()-273.15);
Serial.println(" ℃");
Serial.print("Humidity = ");
Serial.print(clientData->humidity);
Serial.println(" %");
}
결과는
18.5 ℃
7 5%
이런 과정을 밟기 위해 알아야 할 기본적인 C/C++ 문법을 살펴보면 우선 아두이노 라이브러리 중 toFloat( ) 함수에 대해 알아보자.
toFloat( )
설명 타당한 스트링을 float으로 변환합니다. 입력 문자열은 숫자로 시작해야합니다. 문자열에 숫자가 아닌 문자가 포함 된 경우 함수는 변환 수행을 중지합니다. 예를 들어 문자열 "123.45", "123"및 "123fish"는 각각 123.45, 123.00 및 123.00으로 변환됩니다. '123.456'은 대략 123.46입니다. 부동 소수점의 정밀도는 6 ~ 7 자리이며 더 긴 문자열은 잘릴 수 있습니다.
문법 myString.toFloat()
매개변수 myString: a variable of type String
반환 float
스트링이 숫자로 시작하지 않으면, 0이 반환됨.
다른 문자열 함수는 나중에 보기로 해요.
반응형
'개발자 > Arduino' 카테고리의 다른 글
Nano 33 IoT 보드에서 아날로그 적외선 거리센서 (GP2Y0A21YK) (0) | 2020.10.20 |
---|---|
nano 33 iot 보드 타이머 인터럽트 예제 (0) | 2020.10.20 |
스마트 팩토리 연결도와 소스코드 20201018 (0) | 2020.10.18 |
Nano 33 IoT 데이터 서버 전송 Get 방식 (0) | 2020.10.13 |
Decoding and Encoding JSON with Arduino Nano 33 IoT 3 (0) | 2020.10.12 |
Decoding and Encoding JSON with Arduino Nano 33 IoT 1 (0) | 2020.10.10 |
Decoding and Encoding JSON with Arduino Nano 33 IoT 2 (0) | 2020.10.09 |
ArduinoJson 데이터의 Decoding / Ecoding 예제 (0) | 2020.10.08 |
더욱 좋은 정보를 제공하겠습니다.~ ^^