я пытаюсь получить, чтобы выяснить, как получить эту функцию печати, чтобы работать вне этой функции переменная находится.Глобальные переменные в C между функциями
int altitude = 0;
void setup() {
Serial.begin(9600);
simulateAltitude();
}
void loop() {
Serial.println(altitude); // This does not work.
}
int simulateAltitude() {
int a = 0;
while (a == 0) {
altitude += 1;
Serial.println(altitude); // This does work.
delay(1);
}
}
Моя самая большая проблема заключается в цикл аннулируются() не получает значение высоты от цикла while в функции int simulateAltitude. Это используется на плате микроконтроллера Arduino UNO с использованием C.
Я знаю, что это бесконечный цикл, он предназначен только для тестирования.
'int a; while (a == 0) ... ': Неопределенное поведение:' a' uninitialized. – 3442
Кроме того, первый вызов Arduino 'setup()' один раз, затем они вызывают 'loop()' неопределенно. Вы уверены, что это то, что вы хотите? То есть, вы никогда не вызываете эту функцию! Кроме того, какова цель 'a'? Это либо сделало функцию абсолютно ничего, либо застряло в бесконечном цикле. – 3442
Пожалуйста, не изменяйте свой вопрос таким образом, чтобы все ответы на сегодняшний день были бесполезны. Это считается плохой формой :-) – paxdiablo