Растолкуйте для совсем начинающих...
Есть код:
Один раз грузим в carduino. Потом много раз подключаемся терминалом на COM9 (carduino у меня в системе на 9ом порту)...Код:int test; int test2; int prev2; unsigned long time; unsigned long ptime; unsigned long taho; // количество импульсов unsigned int freq; // частота импульсов unsigned long stamp; // период измерения void setup() { Serial.begin(115200); // настроить скорость com порта pinMode(7, INPUT); // 7ой порт переключаем на ввод данных ptime = millis(); // запустить таймер test = 0; test2 = 0; prev2 = 0; taho = 0; freq = 0; stamp = 0; } void loop() { test = analogRead(0); //прочитать с аналогового пина(0) test2 = digitalRead(7); // читаем уровень цифрового порта(7) if(test2 != prev2) { prev2 = test2; if(test2 = HIGH) { freq++; taho++; } } stamp = millis(); // прочитать натиканое время таймера if(stamp > ptime + 500 || stamp < ptime) { ptime = stamp; Serial.print("TimeStamp: "); Serial.print(ptime, DEC); //отправить время в пути Serial.print(", Gasoile: "); Serial.print(test/4, DEC); // отправить колличество топлива Serial.print(", Tahometer: "); Serial.print(taho, DEC); // отправить значение тахометра Serial.print(", Speed freq: "); Serial.println(freq, DEC); // отправить значение спидометра freq = 0; } }
И каждый раз получаем рестарт микропрограммы carduino - каждый раз millis() и taho начинают считаться с нуля. Т.е. carduino работает только когда есть связь с программой на ПК.
Как carduino заставить работать в автономе?





Ответить с цитированием