6_Project/Zigner

예제7) 데이터 분리 알고리즘

Mi:sAng 2025. 1. 16. 23:14
void setup() {
  Serial.begin(9600);

  // 입력 문자열
  String input = "P,180,2,2,2,100,E";

  // ','로 문자열 분리
  String tokens[10];
  int tokenIndex = 0;

  while (input.length() > 0) {
    int index = input.indexOf(',');

    if (index == -1) { // 더 이상 ','가 없는 경우
      tokens[tokenIndex++] = input;
      break;
    } else {
      tokens[tokenIndex++] = input.substring(0, index);
      input = input.substring(index + 1);
    }
  }

  // 결과 출력
  int motorSpeed=0;;// 80~150에서 동작한다.
int servo1Stat=2;//1:상, 2:중 3:하
int servo2Stat=2;//1:상, 2:중 3:하
int servo3Stat=2;//1:상, 2:중 3:하
int camServoStat=0; //0~180도 가능
  motorSpeed=tokens[1].toInt();
  servo1Stat=tokens[2].toInt();//1:상, 2:중 3:하
  servo2Stat=tokens[3].toInt();;//1:상, 2:중 3:하
  servo3Stat=tokens[4].toInt();;//1:상, 2:중 3:하
  camServoStat=tokens[5].toInt();;

  Serial.println("Parsed tokens:");
  for (int i = 0; i < tokenIndex; i++) {
    Serial.print("Token ");
    Serial.print(i + 1);
    Serial.print(": ");
    Serial.println(tokens[i]);
  }
  Serial.println(motorSpeed);
  Serial.println(servo1Stat);
  Serial.println(servo2Stat);
  Serial.println(servo3Stat);
  Serial.println(camServoStat);
}

void loop() {
  // 빈 루프
}

'6_Project > Zigner' 카테고리의 다른 글

예제8) 데이터 분리 알고리즘2  (0) 2025.01.16
예제4) MPU9250 실습  (0) 2025.01.15
영상에 정보표시하기  (0) 2025.01.14
배터리 잔량 체크  (0) 2025.01.14
예제3) PC에서 BLDC 원격 제어 실습 코드  (0) 2025.01.13