Прошу помощи

PockerFace
Offline
Зарегистрирован: 18.06.2014

Добрый вечер.

Извиняюсь за столь глупый вопрос,но как вывести число из функции if

Например:

....
void move(float hight){
....
}
if ( val>0) {
float hight = val + 1;
}
move(hight);

 

toc
Offline
Зарегистрирован: 09.02.2013

область видимости переменной, определённой в строке 6, завершается в строке 7.
Читайте http://arduino.ru/Tutorial/Variables

PockerFace
Offline
Зарегистрирован: 18.06.2014

И еще 2 вопроса.

Написал програму по управлению робота на андроид через app inventor 2.

1.Кто сталкивался,App inventor 2 поддерживает multitouch?Пусть,хотя бы,работали две canvas.

2.При нажатии и удержании определленной кнопки,на робот присылается,например, значение 1(движение вперед - процесс движения длится 2 сек от одного значения(меньше сделать нельзя)).В итоге,после удерживания кнопки,на робот пришло 10 значений,и чтобы,например, повернуть вправо,необходимо дождаться,пока он не выполнит процесс движения вперед 10 раз,хотя,кнопка уже давно опущена.Как очистить буфер,пока будет удерживаться кнопка и при этом сохранялись определенные значения,например,скорость?Прошу хотя бы совет,в какую сторону копать...

Заранее благодарю.

П.с. Пытался через Serial.flush(),но все тщетно.

PockerFace
Offline
Зарегистрирован: 18.06.2014

Люди,ну что,есть идеи?

sva1509
Offline
Зарегистрирован: 07.12.2012

В Си так переменные не передаются, есть пара вариантов

1)

float move(float in)
{
   if (val > 0)  in = val + 1;
   return(in);
}

2)

void move(float *in)
{
   if (val > 0) *in = val+1;
}

 

Yezdoghlyan
Offline
Зарегистрирован: 11.01.2015

привет

у меня проблем

я написал этот код

int ledPin = 13;                 



void setup()

{

  pinMode(ledPin, OUTPUT);      

}



void loop()

{

  digitalWrite(ledPin, HIGH);   

  delay(1000);                  

  digitalWrite(ledPin, LOW);    

  delay(1000);                  

}

в итоге лампочка включается и отключается на каждый 1 секунд

но я хочу бы лампочка включилась и отключилась после 1 секунд и после этого не включилась

 

спосибо

__Alexander
Offline
Зарегистрирован: 24.10.2012

добавить после последний delay вот этот строка while(1){} или этот for(;;){} на выбор.  ))

Yezdoghlyan
Offline
Зарегистрирован: 11.01.2015

очень спосибо

а если я хочу после 10 секунд снова влючилась?

bwn
Offline
Зарегистрирован: 25.08.2014

Yezdoghlyan пишет:

очень спосибо

а если я хочу после 10 секунд снова влючилась?

Добавляем дальше циклы или условия http://arduino.ru/Reference/If

А еще ликвидируем delay()  http://arduino.ru/tutorials/BlinkWithoutDelay

vvadim
Offline
Зарегистрирован: 23.05.2012

А ещё, Yezdoghlyan, свои вопросы в будущем, пишем в своей теме.