"Автономный" последовательный монитор

Я обычно использую Platformio в качестве IDE для своих проектов Arduino. Мне нравится это как редактор, но мне не нравится функция последовательного монитора. Поэтому я часто открываю IDE Arduino в фоновом режиме, чтобы использовать ее последовательный монитор, но у этого есть некоторые недостатки (в том числе значительное увеличение загрузки процессора и потребления батареи моим компьютером).

Существует ли совместимое с Arduino приложение последовательного монитора, которое просто работает как последовательный монитор (а не также как IDE)? Меня больше всего интересует приложение macOS, но если вы знаете приложение для Windows, пожалуйста, сообщите мне об этом.

, 👍5

Обсуждение

шпатлевка... http://www.putty.org/ ..., @jsotola

Я регулярно использую экран GNU. Например, "screen /dev/ttyUSB0 115200, где" /dev/ttyUSB0 - последовательный порт Arduino, а 115200-скорость передачи данных в бодах. Кстати, что не так с последовательным монитором PlatformIO?, @tttapa

вы можете использовать любой последовательный терминал, ищите их. замазка довольно хороша. в стороне: получаете ли вы постоянную загрузку процессора от программы arduino также? (думал, что это только я...), @dandavis

Вы можете использовать почти все, что угодно; но загвоздка с использованием чего-то не интегрированного заключается в том, что это может не сработать автоматически при попытке загрузить код., @Chris Stratton

@tttapa спасибо. Существует ли также какой-то сканер последовательных портов gnu? — самая большая проблема (для меня) заключается в том, что я не могу скопировать вывод (я не знаю, связано ли это с PlatformIO, Atom или чем-то еще на моем компьютере... но когда я выбираю одно слово последовательного монитора, выбирается весь текст в окне); вторичная проблема заключается в том, что ввод данных довольно сложен (по сравнению с последовательным монитором Arduino ide), @noearchimede

@dandavis извините, что вы подразумеваете под “получаете ли вы постоянную загрузку процессора от программы arduino?”, @noearchimede

Обратите также внимание, что эмуляторы терминалов (putty, GNU screen,...) намного более способны, чем последовательный монитор Arduino, поскольку они позволяют использовать [escape-последовательности ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code) для управления курсором, установки цветов и т.д. C. например, панель отображается в левом верхнем углу [этого снимка экрана](https://www.logre.eu/mediawiki/images/0/0d/ADC-Arduino-console.png)., @Edgar Bonet

иногда IDE привязывает мой процессор к 25% даже в режиме ожидания (ОС обвиняет java), мне было интересно, была ли та же самая гадость причиной потребления батареи, о которой вы упомянули..., @dandavis

@noearchimede конечно, вы можете скопировать с терминала. Он просто использует другой короткий путь. В Linux это "CTRL+SHIFT+C "вместо" CTRL+C " ("CTRL+C" отправляет перерыв), не уверен, что эквивалентно Mac., @tttapa

@dandavis да, это случается довольно часто, и это, вероятно, самая важная причина потребления батареи, @noearchimede

@dandavis *вы также получаете постоянную загрузку процессора от программы arduino?* - Некоторое время назад я обнаружил, что при определенных обстоятельствах (я думаю, произошла неудачная загрузка) IDE перешла на использование 100% процессора. Единственная причина, по которой потребовалось некоторое время, чтобы заметить, заключалась в том, что у меня 4-ядерный процессор, а другие процессоры продолжали работать. Я думаю, что это была не IDE как таковая, а процесс, запущенный "avrdude", который зацикливался. После 4 неудачных загрузок мой компьютер стал немного вялым. :), @Nick Gammon

@NickGammon: да, вот и все. если у меня открыто несколько скетчей, иногда я могу закрыть 1+ из них (не все), и 100% - ное использование исчезнет., @dandavis


4 ответа


Лучший ответ:

2

Я использую CoolTerm, который доступен для Mac, Windows и Linux. Это отличное последовательное приложение, и у вас может быть открыто несколько окон одновременно для каждого используемого вами последовательного канала (Bluetooth, Arduino Serial и т.д.).

,

1

Здесь есть список снифферов последовательных портов, если вы хотите просмотреть необработанные данные

softwarerecs.stackexchange регистрация последовательных портов

И вот список программ, которые строят графики на основе последовательных данных:

softwarerecs.stackexchange-последовательный обмен данными-построение графиков-программ

,

3

Подумайте о создании собственного монитора в Python. Это дает вам гибкость, так как Python является кросс-платформенной, и вы можете адаптировать монитор под свои потребности.

  1. Установите Python.
  2. Установите pySerial (pip install pyserial).
  3. Напишите сценарий Python для чтения и/или записи в Arduino через последовательный порт. Есть несколько замечательных примеров, таких как этот пример и другие ответы на переполнение стека.
,

3

На macOS вы можете использовать встроенную команду экрана, например:

screen /dev/cu.usbmodem14201 9600

Чтобы выйти, control-A, а затем control-\

,