ut1wpr
Такое бы для Kenwood! Но, к сожалению, там нет выхода изменяющегося напряжения, нужно становиться на САТ порт и считывать, что трансивер передает LOG-у на компе, а если ничего не передает, самому опрашивать Kenwood...
ut1wpr
Такое бы для Kenwood! Но, к сожалению, там нет выхода изменяющегося напряжения, нужно становиться на САТ порт и считывать, что трансивер передает LOG-у на компе, а если ничего не передает, самому опрашивать Kenwood...
Да какие проблемы?! Надо только внимательно поколупать САТ протокол Кенвуда. Жаль, мой 430-й без оного. Я сейчас пороюсь в закромах инета, должен-же он где-то быть выложен.. Надо уловить, на каких условиях выдается частота. Диапазон ловится из контекста частоты. Если у тебя есть возможность приобрести подобный контроллер, для меня не составит труда наваять программку в этом направлении.Сообщение от Serg
ps Вот порылся. Вроде, этого достаточно:
TX 3 bytes
0000 46 41 3b FA;
RX 14 characters
0000 46 41 30 30 30 31 38 31 31 30 30 30 30 3b FA00018110000;
Frequency: 18110000
Программа должна ловить в потоке ОТ трансивера два байта "FA", далее принять три байта "0" и два следующих байта дадут две цифры диапазона. Для нижних диапазонов это будут "07", "03" и "01" соответственно. Вроде у Кенвуда есть режим, когда частоту он выдает периодически без запроса. Если ты ответишь на этот вопрос, и скажешь скорость по порту по умолчанию, готов помочь с написанием.
Скорость 9600 использую обычно.
Хотя, стандартная и для старых кенвудов была 4800.
Кроме FA, может быть еще FB (VFO-B).
Это если запущен LOG.
А если данные не бегут по САТ порту (нет лога, не включен компьютер), нужно трансиверу дать запрос в порт ASCII кодом: IF; (слово IF и точка с запятой)
В ответ придет примерно такое:
IF00014150000 0000000002011000080;
Первые 11 знаков после слова IF - это частота текущего VFO.
Остальное после пробелов нас не интересует (это расстройка, вид работы, и прочее)
Опрашивать нужно раз в секунду, если данные сами не поступают (обычно период опроса трансивера у LOG-ов 250-500мсек).
Attiny13, думаю, найдется, хоть в прайсе пока нет в наличии, но attiny15 есть, это тоже 8-лапковый...
Принято.Сообщение от Serg
13-я танька не рекомендована к дальнейшим разработкам
Сейчас диаграммки прикину.
Проблема будет в арбитрировании запросов на Кенвуд от лога или таньки. Ты для стыка используешь стандартный интерфейс? Т.е. на вход Кенвуда уже в TTL с интерфейса подаешь?
И еще. В каком формате идет обмен (9600,8,n,1 или в другом?)
У последних аппаратов Кенвуда таких, как TS-480, 570, 870, 2000 стоит сразу 9пиновый СОМ, а max232 внутри.
Придется ставить еще один Макс, или просто транзистор, чтобы ему сэмулировать кривой RS-232 (0 или +12).
Параметры обмена: 9600бод, 8N1.
А вот тут надо подумать...Сообщение от Serg
Гы! Подумал. А что там у современных Кенвудов на задней панели?Сообщение от ut1wpr
У старичков был спецвыход единичек и ноликов, определяющих диапазон. А сейчас?
Ничего нет кроме 9pin CAT, 13pin ACC, в котором есть что угодно, кроме band data и еще какой-нибудь 6pin REMOTE, в котором сигналы для РТТ выходного каскада, педали и вход ALC)Сообщение от ut1wpr
Таки наверно надо MAX ставить, т.к. нам же и принимать нужно будет...
Таки посмотрел.. :( Еще вдобавок разные типы разъемов для 570 и остальных.Сообщение от Serg
Танька одна не справится с арбитрированием.
По идее, реализация должна быть такова. В разрыв САТ кабеля (при помощи двух DB9) включается устройство. Оно должно уметь определять, включена ли программа лога или нет. Если нет - начинать самостоятельно полинговать трансивер. Если есть - просто мониторить шину Тх трансивера. Если есть возможность, проанализируй, пожалуйста, состояние сигналов хендшейка ОТ компьютера. Надо найти сигнал, который меняет свое состояние в зависимости от того, запущен лог или нет. Это должен быть один из сигналов пар CTS-RTS или DSR-DTR. Тогда этот сигнал может быть использован контроллером для анализа. В любом случае ставить придется два МАКСа. Один на вход от компа, второй на ВЫХОД к трансиверу. Это в случае, если применять ПОЛНЫЙ обмен, с хендшейками. И вообще, слишком много ЕСЛИ. Для разных трансиверов разные протоколы по уровням - это ограничивает универсальность приставки.
Я думаю, почти достаточно присоединиться параллельно сигналам TXD/RXD и поставить MAX для сопряжения уровней с "танькой".
Хендшейк может не использоваться, т.е. у кенвуда в порте можно соединить перемечками CTS-RTS и DSR-DTR.
Хотя, у меня сейчас запаян кабель с 5ю проводами. (но собираюсь освободить RTS/DTR для PTT/CW в том же порте, в связи с тем, что на другом компе не будет второго порта для РТТ/CW отдельно).
Без хендшейкового проводка не получится контроллеру анализировать включен ли LOG? Может попробовать это так: ждать, если перестали бежать данные, самому опрашивать TRX раз в 2-3сек, а если ответы побежали чаще - значит LOG запустили, т.к. он обычно опрашивает ч\з каждые 250-500мсек.
Предпологаю, может быть проблема в том, что сигнал от СОМ порта нам будет мешать передать из "таньки" в кенвуд? Тогда нужно поставить реле (или электронный ключ), с помощью которого "танька" будет отрывать компьютерный TXD на время опроса, чтобы он не перебивал обмен.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)