Page 242 - 최강 아두이노 스마트 자동차 로봇 키트
P. 242
#ifdef __USE_BT_SOFTWARE_SERIAL__
btSerial.begin(9600);
#endif
}
float Distance(const float x1,const float y1,const float
x2, const float y2)
{
float distance;
distance = sqrt(pow(x1 - x2, 2) + pow(y1 - y2, 2));
return distance;
}
void process_SerialCommModule()
{
if (SerialCommData.isValidPool())
{
char motorLR[2]; // 부호 있는 char 로 변환.
motorLR[0] = (char)SerialCommData.getMotorLValue();
motorLR[1] = (char)SerialCommData.getMotorRValue();
SerialCommData.clearPool();
//
Serial.print("Left [");
Serial.print(motorLR[0],DEC);
Serial.print("] Right [");
Serial.print(motorLR[1],DEC);
Serial.println("]");
//
String szCmdValue="5"; // 기본 정지상태.
// 운행 명령으로 변경한다.
if (motorLR[0] == 0 && motorLR[1] == 0)
szCmdValue = "5"; // 정지.
else
{
int nSpeed = max(abs(motorLR[0]),
abs(motorLR[1]));
// 방향 구하기.
if (motorLR[0] > 0 && motorLR[1] > 0) // 1, 1
{
szCmdValue = "2"; // 전진"
241