Я не понимаю, почему в моей программе некоторые строки вывода в последовательный журнал прекрасны, в то время как некоторые из них никогда не выводятся.У меня возникли проблемы с записью метки на последовательный порт
По какой-то причине одна из этикеток никогда не выписывается. Я экспериментировал со сдвигом операторов println, а затем другая метка игнорируется. Я не вижу разницы между работающими линиями и теми, которые этого не делают.
В моем файле на https://gist.github.com/ledlogic/726ec7105ee5cc41f3cd
Первые две метки работают, но не метка Latitude.
...
Serial.print("UTC Time(HHMMSS): ");
Serial.print(time); // Time returns the UTC time (GMT) in HHMMSS, 24 huor format (H-Hour; M-Minute; S-Second)
Serial.println("");
Serial.println("");
Serial.print("Latitude: ");
Serial.print(lat, 6); // Latitude - in DD.MMSSSS format (decimal-degrees format) (D-Degree; M-Minute; S-Second)
Serial.println("");
Serial.println("");
...
Выход последовательного порта монитора (9600 бод)/не приватизирован:
UTC Date(DDMMYY): 10814
UTC Time(HHMMSS): 131539
44.9*****
Longitude: -92.5*****
Возможно, вы увидите, очевидно, нет-нет, я просто еще не знаю, для Arduino кода.
попробуйте прокомментировать остаток. Из «File LogFile ...» и всех отпечатков после этого на задержку (1000) ;. Обратите внимание, что Serial.print заполняет буфер, а затем прерывается, чтобы отправлять байты. Я обдумываю, блокируются ли функции SD и – mpflaga
Вы используете SD-карту в режиме с прерыванием? – Greycon
Добавление F() вокруг серийных меток показалось им в 100% случаев. Что касается режима прерывания, я так не думаю, что все Способы SD-карты вызываются только в основном цикле, если только в SD-библиотеке это не делается самостоятельно. – ledlogic