Jump to content
Sign in to follow this  
UN6GMV

Программа транслятор в код Морзе

Recommended Posts

Всем привет!

Так как меня очень интересует работа на CW, я написал несколько программ для изучения телеграфной азбуки. 

Представляю вам программу транслятор букв в код Морзе. Для запуска необходимо скачать файл cw_syntez.jar на свой ПК. Запуск двойным кликом мыши. Работает под OS Windows, Linux, iOS - нужно, чтобы на ПК была установлена Java.

image.png.51169b9be6e66c1feda1560c5434d12a.pngcw_syntez.jar

73, Михаил, UN6GMV.

 

  • Like 3

Share this post


Link to post
Share on other sites

Михаил, классно! Спасибо!

А вы можете написать такую программу, которая сама бы принимала CW, дешифровали и выводила текст  на экран, и отвечать можно было бы просто печатая на компе?

Share this post


Link to post
Share on other sites

Антон, спасибо за положительный отзыв!

Конечно же можно написать такую программу - Java рулит!) А есть под это дело финансирование?

Share this post


Link to post
Share on other sites
1 час назад, UN6GMV сказал:

А есть под это дело финансирование?

Финансы как всегда, поют романсы.... :(

Но.

Всегда можно эскалировать вопрос в нашу Лигу и при желании, получить финансирование на разработку оного ПО. С передачей прав Лиге.

 

Share this post


Link to post
Share on other sites
В 12.03.2019 в 07:29, UN8GEQ сказал:

Михаил, классно! Спасибо!

А вы можете написать такую программу, которая сама бы принимала CW, дешифровали и выводила текст  на экран, и отвечать можно было бы просто печатая на компе?

CwGet + CwType (dxsoft).  А этот софт он  же для обучения (непонятно только чему, толи разработке на Java, толи CW) :) 

 

В качестве дальнейшего развития, я бы предложил:

1. Включить в состав программы обучающие тексты / случайно генерируемые. Тут можно обратить внимание на уже существующие методики;

2. Убрать jTextField1, вместо него установить ползунок Speed WPM;

3. Реализовать возможность передачи текста, не показывая его пользователю, но чтобы обучающийся мог набирать текст, который он услышит, ну и соответственно проверку этого текста.

4. Вот тут лишний параметр 2 раза передаете:

tone_translator.tone(Integer.parseInt(cw_form.this.jTextField2.getText().toString()), 
              Integer.parseInt(cw_form.this.jTextField1.getText().toString()), 
              cw_form.this.jTextArea2.getText().toString(), 
              Integer.parseInt(cw_form.this.jTextField1.getText().toString()));

5. Разобраться с:

      Thread.sleep(ms + dot_duration); в классе run_translator 

      Thread.sleep((lengthsymbol + 3) * dot_duration); в классе tone_translator

Любое изменение dot duration, которое стоит по умолчанию = 100 - вносит задержку. то есть этот параметр не работает. или работает если только выставлен в 100

6. Сделать проверку, чтобы у вас не запускалось два потока если два раза нажмешь на кнопку старт (Translator), а то каша получается.

this.ThreadTranslate.isAlive();

только я бы этот объект не вызывал бы так (через this). Его лучше создать, а кнопкой запускать или останавливать. можно одной.

Хотя, может это косяки декомпилятора, но проверки на "уже запущенность" - нет.

 

 

По итогу получится почти клон https://lcwo.net/, зато будет запускаться хоть где и без интернета :)

Share this post


Link to post
Share on other sites

Спасибо за конструктивную критику! В целом согласен:) Писал для развлечения, а не для системы автопилота Боинга.

  • Like 2

Share this post


Link to post
Share on other sites
14 часов назад, UN6GMV сказал:

Писал для развлечения, а не для системы автопилота Боинга.

Михаил! Пишите всё, что хочется и не обращайте внимания на критику. Будете писать - будете развивать свой мозг, свои способности. 

Не будете писать - покроетесь "плесенью".

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...