2 мая 2017 г.

Новый велосипед с UDP



UDP сильно отличается от TCP. Здесь необходимо работать с датаграммами вместо потоков и соединений. Это довольно быстро (и ненадежно), но есть много мелочей, которые необходимо делать вручную самим. Пытаясь сделать хороший и интересный пример, я решил, что создание простого приложения для передачи файлов (поверх UDP) было бы хорошим началом.
Эта программа состоит из двух частей. Отправитель и получатель. Отправитель будет выступать в качестве сервера, который передает файлы получателям.

Block

Данные файла будут трансформированы в блоки.  Они содержат два поля, 32-битное целое число без знака, то есть его ID-номер и массив байтов, который содержит данные.  Обычно данные в блоке сжимаются.


  , ,

Прототип пульта

Мне захотелось сделать радио-пульт который и приёмник для него который обрабатывает сигналы соответственно.
Использовал микроконтроллеры Arduino, и радиомодуль на 2,4 Ghz (Да на этой частоте работает большинство электроники, и у меня был модуль на 433 Mhz но я не допёр как с ним работать).
Пульт посылает сигнал на приёмник, приёмник обрабатывает сигнал и посылает данные компьютеру, на компьютере еще одна самописная программа обрабатывает эти данные и делает что ей сказано.

Сделал пока вот что. 4 кнопки и задачи у них вот такие:
— Громкость выше
— Громкость ниже
— Пауза
— Следующий трек

Радио работает действительно очень далеко. Даже с улицы сигнал всё еще ловится. Но учитывая всякие помехи и прочее, у меня примерно дальность вышла около 30 метров.
Вот видео для понимания. Пока еще работает немного коряво, но срабатывает так это программа на компьютере, позже займусь нормальным переписанием всего этого.

  , , ,