Путешествие во времени: Какие секунды отмеряет Ардуино?
- Войдите на сайт для отправки комментариев
Вс, 11/09/2016 - 11:53
/* Измерить параметр */
int pin = 9; int inin; float inin1; void setup() { Serial.begin(9600); } void loop() { analogWrite(10, 125); inin = analogRead(pin) ; inin1 = 60 + inin * (-0.085) ; Serial.print(0.001*millis()); Serial.print(" "); Serial.print(inin); Serial.print(" "); Serial.println(inin1, 2); delay(500); }
2) Написал и реализовал программу: Ардуино измеряет параметр, обрабатывает его и и, сопроводив это текущим времени схемы, отправляет на USB.
Terminal пишет в файл: время компьютера, текущее время Ардуины (сек), считанный параметр, обработанный параметр. С шагом 0,5 с! Как и положено:
12:18:34.264> 78.73 461 20.81
12:18:34.764> 79.23 461 20.81
12:18:35.261> 79.73 460 20.90
12:18:35.760> 80.23 460 20.90
12:18:36.261> 80.73 460 20.90
12:18:36.759> 81.23 460 20.90
12:18:37.261> 81.73 460 20.90
12:18:37.759> 82.24 460 20.90
12:18:38.259> 82.74 459 20.98
12:18:38.756> 83.24 460 20.90
3) Выхожу из среды Ардуино, отключаю и вновь подключаю схему к USB, перезапускаю Terminal.
12:30:34.944> 12.53 436 22.94
12:30:38.936> 13.03 435 23.02
12:30:42.930> 13.53 435 23.02
12:30:46.984> 14.03 437 22.85
12:30:50.978> 14.54 435 23.02
12:30:54.974> 15.04 435 23.02
12:30:59.028> 15.54 436 22.94
12:31:03.021> 16.04 436 22.94
Параметры ведут себя прилично, а с текущим временем получаются чудеса!
Terminal ведет себя по принципу "что вижу, то и пишу", т.е. пишет реальное время компьютера - через каждые 4 секунды. Ардуина на голубом глазу сообщает, что у нее (у него?) проходит за этот интервал всего лишь 0,5 секунды...
Это как?