Когда я проверяю свой код, я временно добавляю сообщения Serial.print, чтобы узнать, что делает мой код. Это довольно утомительно, потому что в мире Arduino нет такой вещи, как printf(). Плюс иногда я забываю удалить Serial.print(), и я должен искать их позже в своем коде, чтобы удалить их. И если я поместил Serial.print() в цикл, вывод будет прокручиваться так быстро, что я не могу действительно отслеживать изменение значений. Затем мне нужно delay(), которые являются еще одним фрагментом тестового кода для последующего удаления. Есть ли библиотека или инструмент, который упрощает эту задачу?Arduino: Лучший способ контролировать переменные, чем Serial.print()?
ответ
Если у вас есть Visual Studio, вы можете использовать VisualMicro для реальной отладки, включая точки останова и мониторинга значений: http://www.visualmicro.com/page/Debugging-for-Arduino.aspx
Он работает с сообществом редакции Visual Studio (который является бесплатным): http://www.visualstudio.com/products/visual-studio-community-vs
Я использовал VisualMicro много, и это реальная экономия времени, потому что вы действительно можете сосредоточиться на отладке, а не на добавлении вызовов журналов.
Вы можете использовать испытанный и истинный условный метод компиляции, такие как с:
#ifdef DEBUGGING
Serial.print (something);
Serial.print (somethingElse);
delay (1000);
#endif
Затем скомпилировать Йор тестовый код с установленным флагом DEBUGGING
, в то время оставляя его в производстве код.
Таким образом, вам не нужно удалять код отладки из вашего источника, он автоматически удаляется самим компилятором.
- 1. Лучший способ контролировать тележки
- 2. Arduino Micro Serial.print строка, не возвращающая строку
- 3. Невозможно просмотреть Serial.print() для Arduino micro
- 4. Лучший способ контролировать размер ggplot
- 5. BASH лучший способ контролировать файлы
- 6. Arduino uint8_t переменные
- 7. Лучший способ контролировать расстояние между элементами блока?
- 8. Лучший способ объявить переменные
- 9. Лучший способ передать переменные?
- 10. Лучший способ объявить неинициализированные переменные
- 11. Spring - лучший способ контролировать создание сеанса
- 12. Данные Arduino Serial.parseInt() повреждены слишком большим количеством Serial.print()?
- 13. Лучший способ сбросить пустые переменные?
- 14. Как «Serial.print()« полные »шестнадцатеричные байты?
- 15. Лучший способ, чем чтение строк?
- 16. Нужен лучший способ, чем отражение
- 17. Лучший способ контролировать поток по запросу базы данных
- 18. Лучший способ сделать общедоступные переменные (JAVA)
- 19. Лучший способ передать переменные между Arduino и ПК через последовательный порт?
- 20. Лучший способ контролировать параллельный доступ к коллекциям Java
- 21. Лучший способ контролировать доступ к строковому объекту в многопоточной программе
- 22. Предотвращение Serial.Print для преобразования данных в ASCII
- 23. Лучший способ использовать переменные в другом действии
- 24. Лучший способ передавать переменные между контроллерами
- 25. Лучший способ сохранить переменные между postbacks asp.net?
- 26. Android - Лучший способ использовать статические переменные/объекты
- 27. Лучший способ преобразовать текст с «&» в переменные
- 28. Лучший способ объявить переменные в Node.js
- 29. Лучший способ найти глобальные переменные в Javascript
- 30. Лучший способ передать переменные между классами?
Это хорошая идея, но имейте в виду, что использование серийных отпечатков может изменить поведение кода и добавить или удалить ошибки, которые у вас не будут без отпечатков. Был там ... – ladislas
Ну, да, но тогда они, как правило, Heisenbugs, и в этом случае отладчик также может это сделать, так как может работать ваш код в третьей среде месяца :-) – paxdiablo
ahah! не знал имени Гейзенбюга, мне это нравится! :) – ladislas