Существует ли программа терминала OS X, которая может получить доступ к последовательным портам?


101

Какие программы могут выступать в роли терминала и получать доступ к последовательным портам?

Это не для терминального доступа по IP-соединению, поэтому я могу получить доступ к аппаратному устройству, подключенному к USB / последовательному конвертеру, работающему на 9600/8 / N / 1.


2
Ты имеешь ввиду модемный порт 20 лет назад?
Nohillside

@patrix, да. Я могу загрузить vmware, запустить windows и использовать putty, но кажется, что выполнять такую ​​простую задачу - большая проблема.
Марк Харрисон

1
Лол. 9600/8 / Н / 1. как мантра для меня. Вы можете использовать zterm, который все еще работает по крайней мере до 10.6. Это старое программное обеспечение. Но был построен для настройки, связи с модемами и передачи файлов модема на модем. dalverson.com/zterm
markhunte

Последний zterm работает с 10.9.
Дэн Притц

Ответы:


54

В магазине приложений доступно новое приложение для Mac под названием Serial . Полное раскрытие - я написал это. Основное преимущество перед другими приложениями заключается в том, что он может работать с большинством USB-устройств без последовательной установки драйверов, так как он имеет свои встроенные драйверы. Он также выполняет полную эмуляцию терминала, поэтому вы можете использовать его для работы с Linux или другими устройствами, которым это требуется. Вы также можете попробовать это бесплатно.

Кроме того, Apple начала включать свой собственный драйвер для устройств на базе FTDI в Mavericks (10,9). Таким образом, если вы используете 10.9 или более позднюю версию и ваше устройство имеет встроенную микросхему FTDI, вы можете использовать встроенную экранную команду в терминале для доступа к устройству, не беспокоясь о драйверах.


6
Я только что попробовал Serial сегодня. Пока что я впечатлен. Я куплю его только для того, чтобы избавить меня от необходимости беспокоиться о USB к последовательным драйверам. Я не буду скучать по ssh'ing в моей Linux-системе для запуска minicom.
Дэрил Спитцер

1
ВАУ, я использую Serial прямо сейчас, и я думаю, что так должно работать каждое программное обеспечение. Так как мне это нужно только для очень конкретной работы, и у меня есть несколько бесплатных пробных дней, и я не могу получить полную версию ... если бы любое из трех условий было ложным, я бы получил его ... . Они заслужили это!
Кикусин

Ну, как только я выбрал скорость передачи данных для своего устройства, я не могу открыть его снова с другим значением ... Окно выбора просто не появляется, и я застрял на 9600 ...
JBernardo

8
FYI Serial не является бесплатным
Szundi

2
Ух ты. действительно вау. Я использую экран в течение многих лет и всегда находил ttys просто ... раздражающим. Я случайно нашел эту ветку, как будто я не платил 30 долларов - о, подождите, есть пробная версия. Итак, я попробовал. Спустя 2 минуты после того, как я купил программное обеспечение в значительной степени независимо от того, как часто оно мне нужно, просто для поддержки Криса, потому что оно действительно потрясающее. Давно не видел таких хорошо написанных вещей.
Лукаш

105

Вы можете использовать команду терминала, screenчтобы сделать это !!!

Как видно на ServerFault :

Мне нравится использовать [screen] для подключения к последовательным консолям, т.е.

screen /dev/ttyS0 19200

Или, если вы предпочитаете подсказки Mac OS X ...

Мне часто приходится настраивать маршрутизатор через консольный порт, поэтому для доступа я использую последовательный адаптер Keyspan. Тогда возникают две проблемы: ZTerm - ужасное приложение для Mac OS X. Он не обновлялся в течение пяти лет или около того и не является универсальным двоичным кодом. Разработчик, похоже, не спешит исправлять ситуацию. Это не стоит платы за условно-бесплатное программное обеспечение в его нынешнем виде. Minicom требует установки Fink или MacPorts и является слишком сложным. Решение: используйте экран, терминал и немного AppleScripting.

Сначала запустите редактор скриптов и введите / вставьте следующий код:

tell application "Terminal"
  do script with command "screen /dev/tty.KeySerial1"
  set number of rows of window 1 to 100
  set number of columns of window 1 to 80
  set background color of window 1 to "black"
  set normal text color of window 1 to "green"
  set custom title of window 1 to "SerialOut"
end tell

Скомпилируйте и сохраните как приложение из редактора сценариев, и у вас будет приложение с двойным щелчком для запуска последовательного сеанса терминала. Вы можете настроить это немного - вы можете изменить цвета экрана или количество столбцов или строк. Вам также может понадобиться настроить экранную команду с другим именем устройства, если вы используете что-то отличное от последовательного адаптера Keyspan (выполните ls tty * из каталога / dev /, чтобы получить правильное имя).

Экран использует Control-A, чтобы принимать команды, направленные на него. Поэтому введите Control-A, а затем Control-, чтобы выйти из сеанса экрана. Если вам не удастся сделать это и выйти из сеанса терминала, вы оставите сеанс экрана активным, а последовательный ресурс недоступен, пока не завершите сеанс экрана вручную. Экран man покажет вам дальнейшие команды для отправки на экранную сессию.

Если кто-то может ответить ссылкой на учебник о том, как обернуть интерактивное приложение Unix в Какао, это будет следующим шагом - было бы неплохо сделать это без участия Терминала. Если вы предпочитаете использовать Minicom, вы все равно можете использовать AppleScript, чтобы превратить его в хорошее запускаемое приложение - используйте этот старый совет, чтобы найти правильные команды командной строки.

Многие USB-последовательные адаптеры используют чип от FTDI . Установите драйвер « Виртуальный COM-порт » и найдите правильное имя TTY в /dev. Например, на PowerBook G4 это выглядело как /dev/tty.usbserial-FTALKY8I.


1
Адаптеры USB-Serial с микросхемой PL2303 см. На sourceforge.net/projects/osx-pl2303
Дэн Приттс,

Очевидно, лучший ответ: терминал + экран + osx-pl2303 (в производстве используется… много лет years).
дан

1
Стоит посмотреть на ответ Криса К ниже; по-видимому, OS X поставляется с драйверами FTDI начиная с 10.9 (после того, как этот ответ был написан), поэтому установка не требуется.
krs013

Экран (или миником в этом отношении) не совсем подходит. Это выглядит хорошо, пока вы не попытаетесь запустить nano или vi. Он не может справиться с этим. Клавиши со стрелками и клавиша возврата генерируют мусор. Если на экране есть настройка, чтобы исправить это, пожалуйста, дайте мне знать.
Гарип

Я люблю экран, но: как вы можете перевести lf в crlf?
fearless_fool

25

Мое предпочтение cu. Я использую его для развлечения, связанного с Arduino или Bus Pirate. Он установлен по умолчанию и поддерживает настройки четности среди других параметров (введите man cuдля получения дополнительной информации).

sudo cu -s 115200 -l /dev/tty.usbserial-A6005kdh

Чтобы выручить, когда вы закончите, введите, ~.как вы бы с SSH


1
Это похоже на начало хорошего ответа, но запуск его с правами root кажется неправильным; другим программам это не нужно для доступа к /dev/tty.xxx или /dev/cu.xxx программам, но, cuпохоже, происходит сбой с ошибкой в ​​файлах блокировки при запуске от имени пользователя, имеющего доступ к самому порту. Возможно, установка программы по умолчанию неверно настроена?
user221106

Нет? Разрешения должны быть на устройстве, а не на программе. Я был довольно ленив, исследуя разрешения, чтобы быть честным. Вы пробовали "/ dev / ttyS0" как в screenрешении? Вызывает ли это cuпроблемы с разрешениями?
РэндомИнсано

Забавная проблема, с которой я столкнулся на этих выходных, заключается в том, что если вам требуются другие настройки перевода строки, вам придется изучить команды stty для настройки консоли.
RandomInsano

24

Лучшая из известных мне программ для этого - minicomHomebrew, fink и macports.

Minicom - это программа последовательной связи. Это клон Unix известной программы MS-DOS Telix. Он имеет цвет ANSI, каталог набора номера, список набора и язык сценариев.


1
Мета-ключ - это Esc. Так что Esc-Q для выхода, Esc-O для опций и т. Д. Я обнаружил, что minicom (и Serial.app) лучше всего справляются с обработкой отключений / повторных подключений, которые в основном подразумеваются при запуске LinkitOne (все Arduino?). Большинство других приложений аварийно завершают работу или теряют соединение и не могут восстановить соединение до повторного запуска.
Оуэнфи

18

Если вы предпочитаете не работать в терминале, вы можете попробовать CoolTerm (бесплатно). Прокрутите немного вниз для описания и загрузки. Не позволяйте факту, написанному на RealBasic, отвлекать вас ... Я использовал его для подключения к плоттерам, платам Arduino и принтерам чеков через USB-порт Keyspan <-> Serial Adapter.


Уже пользователь CoolTerm, просто поиск функции «отправить в HEX» вернул меня к этой теме. CoolTerm настолько хорош, что даже включает эту функцию в меню «Соединение> Отправить строку ...», а затем переключается в HEX для формата отправки!
andreas-supersmart

Я никогда не понимал сценарий использования "отправить в HEX". Можете ли вы просветить меня? Я использую его только для ввода / вывода ASCII.
frakman1

15

Вы должны взглянуть на ZOC , что я считаю лучшей программой эмуляции терминала, доступной для Mac. Я использую это каждый день для своей работы. Он имеет возможность осуществлять прямую связь с последовательным портом. Конечно, это намного больше, чем просто последовательная связь.

ZOC - это профессиональный SSH / telnet клиент и эмулятор терминала. Благодаря впечатляющему списку эмуляций он позволяет легко подключаться к хостам и мэйнфреймам, используя такие методы связи, как защищенная оболочка, telnet, последовательный кабель или модем / isdn.

У его гладкого пользовательского интерфейса есть много способов сделать вашу жизнь проще. По-своему, это швейцарский армейский нож тонких клиентов: универсальный, надежный, проверенный.

Основные функции:
- Сеансы с вкладками с миниатюрами
- Настраиваемые в соответствии с вашими предпочтениями и потребностями
- Функции сценариев и автоматизации
- Совместимость с Windows 7 и OS X Lion
- Удобный для администратора (развертывание, настройка)
- Теперь 79,99 $ с привлекательными оптовыми скидками


3
80 $ для эмулятора терминала кажется немного крутым, если ему просто нужна эта функция!
Agos

2
Цена не была упомянута в качестве критерия в вопросе. Пожалуйста, не уменьшайте ответ только потому, что вы не согласны с ценой.
Картер

1
Я второй комментарий Агос. Он не «умаляет» ваш ответ, просто говорит, что считает, что ZOC не является хорошим решением, учитывая все (стоимость, функции и т. Д.)
cyphunk

Кроме того, в сочетании с другими ответами, приведенными выше, кажется (из приведенного описания) единственной разницей между ZOC и Terminal является миниатюры вкладок (и цена).
Мэтт

11

C-Kermit жив и здоров в Brew и может быть установлен с:

brew install c-kermit

Естественно, вам потребуется сначала установить Brew. Вы можете найти информацию о том, как это сделать, здесь: http://brew.sh

В качестве альтернативы используйте Macports

sudo port install kermit

Это также потребует, чтобы у вас был установлен Macports


7

И еще есть старый ZTerm, который так же стар, как кажется, и все же он отлично справляется со своей задачей и доступен бесплатно. Отлично работает с последовательными USB-адаптерами на основе Prolific (PL 2303) и FTDI.


1
Вау, ZTerm живет! Возвращает много воспоминаний и старых Mac.
LHF

Только что скачал ZTerm ... и это так плохо, как я помню ... CRASH ... CRASH ... CRASH ... (удалить ZTerm).
Geowar

4

Я имел успех с Cutecom на Ubuntu 16.04

Поддерживается в OSX: http://cutecom.sourceforge.net/


Добро пожаловать, чтобы спросить другого! Пожалуйста, не давайте только ссылки. Мы ищем ответы, которые объясняют, почему он отвечает на вопрос, а также почему это лучший ответ. Ссылки могут со временем меняться, и тогда мы потеряем контекст вопроса-ответа. См. Как ответить для получения информации о том, что составляет хороший ответ. - Из обзора -
ФСБ

К сожалению, для его сборки в вашей системе должна быть установлена ​​очень старая версия Qt.
Оскар

3

Еще один последовательный терминал для Mac OS X - Cornflake !

Он имеет функцию выбора устройства с помощью кнопки «Обновить», скорости передачи в бодах, выбора типа пакета и управления потоком, управления портами и фильтра просмотра для просмотра входящих данных в формате ASCII, ASCII +, Integer или HEX.




1

Я использую screenдля подключения к последовательному порту моего маршрутизатора на моем Mac.

После установки, используя macports или homebrew, в зависимости от ваших предпочтений, используйте следующий синтаксис:

sudo screen /dev/(serialDevice) (baudRate) (TransmissionRate) (flowControl)

Для подключения к моему маршрутизатору MikroTik RB4011 моя screenкоманда:

sudo screen /dev/ttyUSB0 115200 cs8 ixoff

« cs8 » - скорость передачи данных маршрутизатора, а « ixoff » - «Нет управления потоком». « 115200 » - это скорость передачи данных маршрутизатора. Альтернативные настройки будут «cs7» для 7 вместо 8 бит и «ixon», если управление потоком поддерживается вашим последовательным устройством. man screen

Во всех «HowTo», которые используются screenдля создания последовательного соединения в сети, я обнаружил, что Googling пропускает эти обязательные параметры, поэтому вы обнаружите, что screenэто не сработало, если вы попробовали его, просто передавая только скорость передачи данных.

Кстати, minicom -s(который также должен быть установлен через macports или homebrew) также отлично работает, но я предпочитаю screen, так как мне не нужно проходить через меню настройки - я могу просто передать параметры последовательного соединения непосредственно в команду screen.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.