![]()  | 
			
					roboforum.ruТехнический форум по робототехнике.  | 
			
				
					 | 
		

 дабл однако, как минимум). но сам алгоритм, если я нигде не тупанул должен работать. int sign = 1, i = 1;
bool dot = false;
double f = 0, f1 = 0, f2 = 0;
char c;
while(true)
{
    c = Serial1.read();
    if ('0' <= c && '9' >= c)
    {
        if (!dot)
            f = f * 10 + c - 48;
        else
        {
            i *= 10;
            f = (double)(f + (double)((double)(c - 48) / (double)i));
        }
    }
    else
        switch(c)
        {
            case '-':
                sign = -1;
                break;
            case 'H':
                f1 = f * sign;
                goto default;
                break;
            case 'S':
                f2 = f * sign;
                goto default;
                break;
            case '.':
                dot = true;
                break;
            case '#':
                break;
            default:
                f = 0;
                sign = 1;
                dot = false;
                i = 1;
                break;
        }
}
Вернуться в Arduino и другие Xduino
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0