i2: Технические подробности

Опубликовано в рубрике "Высоковольтное", 15.11.2009.
Тэги: , , , , , , , автор:

О том, что такое прерыватель i2 и о всех его возможностях можно прочитать в моей  прошлой статье. В этой статье будут размещены материалы для повторения проекта. По мере исправления багов или добавления новых возможностей, я буду редактировать обе статьи.

image

<— Описание возможностей, обзор

 

Лицензия

Все файлы, прилагаемые к этому посту распространяются под лицензией GPL v3, что, в прочем, не должно помешать вам поставить пиво автору.

Текст лицензии можно получить тут — https://www.gnu.org/licenses/gpl.html

 

Прошивка. Текущая версия – 1.01

Исправления в версии 1.01

  • Исправлены ошибки в приемнике midi
  • Прошивка адаптирована под новую ревизию (rev3) схемы
  • При запуске прерывателя он рассылает все подчиненным устройствам команду остановить воспроизведение midi – защищает сеть от зависания мастера.

Скомпилированная прошивка в формате intel-hex

 

Исходные коды AVR IAR 5.3.02

 

Фьюзы. Настройки для прожигания фьюзов показаны на картинках если вы используете не IAR, то придется подобрать аналогичные настройки в вашей среде.

image

image

image

 

Схема. Текущая ревизия – 3

Исправления в ревизии 2:

  • Добавлена возможность работы с DRSSTC.
  • Исправлены ножки подключения USB,  добавлена подтяжка на ножке прерывания USB для исключения ложных срабатываний прерывания.

Исправления в ревизии 3:

  • Заменена оптопара на более быстродействующую 6n136. TLP181 сильно затягивала фронты.
  • Таймер для DRSSTC заменен на обычный дешевый NE555
  • Исправлена ошибка из-за которой при выключении питания, тесла оказывалась  включенной на 100мкс.

Скачать схему можно тут.

 

Управляющая программа. Текущая версия – 1.00

Программа написана на Borland Builder C++ 6.0. Она является пособием “как не нужно писать”, что и понятно – она разрабатывалась просто как тест для основной прошивки. Потом я просто на костылях прилепил к ней несколько красивых рюшечек. Но, все-таки она работает. Если вы – программист и готовы помочь проекту и превратить эту программу во что-то более красивое, пишите мне!

 

Скомпилированная программа.

 

Исходник

 

Драйвер

Кроме всего прочего, для прерывателя нужно установить драйвер. Сделать это можно нажав правой кнопкой мыши на inf файле и выбрав Install (Установить). Если у вас этот пункт меню, как и у меня глючит и ничего не делает, то нужно выполнить такую последовательность действий

Start->Control Panel->Add Hardware->(Yes, I have already..)->(Add a new hardware)->(Install the harware that I…) ->Show all devices->(Have disk)->Browse

Выбрать inf файл и согласиться на установку. После этого, после подключения прерывателя, у вас в системе появится новое устройство.

image

Сам драйвер.

 

 

Плата.

Плата прерывателя пока не доступна. Пишите письма с запросом на bsvi@narod.ru (именно туда, а не в комментарии)

По многочисленным просьбам – плата в pdf:

Комментарии
  1. PRO100_TOXA написал(а) 18th Март, 2011 в 23:33

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

  2. BSVi написал(а) 18th Март, 2011 в 23:43

    Можно.

  3. PRO100_TOXA написал(а) 18th Март, 2011 в 23:47

    А можно узнать , что приблизительно нужно сделать , а то друг подкинул идею и у меня теперь навязчивая идея это сделать.)

  4. PRO100_TOXA написал(а) 18th Март, 2011 в 23:48

    нужно сделать преобразователь звуковых волн в …. ?

  5. BSVi написал(а) 19th Март, 2011 в 7:51

    прямоугольники, но тут все не совсем так просто. И если даже не понимаешь, что нужно сделать — лучше и не берись. (к примеру, нужно контроллировать ширину импульса, обеспечить гальваническую развязку, фильтровать помеху от теслы итп)

  6. PRO100_TOXA написал(а) 19th Март, 2011 в 8:08

    ну хоть я не все знаю постараюсь, понять и попробовать сделать ,потом если что отпишусь

  7. BSVi написал(а) 19th Март, 2011 в 8:24

    Давай )

  8. PRO100_TOXA написал(а) 21st Март, 2011 в 0:54

    Я так понял что в принципе можно использовать разьем MIDI in для того чтобы подавать на него звуковую волну , тк там стоит опто пара то она то и выступит в роле того самого преобразователя , нужно только убрать все помехи от теслы гальванической развязкой . Я прав ?)

  9. BSVi написал(а) 21st Март, 2011 в 8:03

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

  10. TheWhitescar написал(а) 12th Август, 2012 в 15:48

    Добрый день! Набрался сил, и собрал этот прерыватель: плату разводил сам, для навесного монтажа, прошил мегу, фьюзы правильные, подключил… Работает, но частично: показывается режим idle, программа определяет прерыватель, сохраняет в него настройки, определяет объём флешки (у меня 1мБ), но midi не пишет… Зато пишет ошибку: «Произошла ошибка, запись прервана». Буду очень признателен, если подскажете, в чём может быть проблема?

  11. TheWhitescar написал(а) 12th Август, 2012 в 16:12

    Отбой, проблема решилась сама собой — отключением прерывателя от хаба и подключением непосредственно на материнку. Ещё раз восхищаюсь вашим умом 😉

  12. TheWhitescar написал(а) 12th Август, 2012 в 18:24

    Хотя, конечно, я поторопился: пишет, но через раз-другой… То ошибка, то нормальная запись.. Пока понятия не имею, что может быть этому причиной, то ли провод длинный, то ли навесной монтаж, то ли юпитер не в том созвездии… Буду благодарен, если предложите какие-нибудь варианты.

  13. BSVi написал(а) 12th Август, 2012 в 21:27

    У вас явно проблема с подключением. Тут только разные шнурки пробовать нужно 🙂 А хабы — зло, я с ними очень много проблем натерпелся.

  14. TheWhitescar написал(а) 12th Август, 2012 в 22:17

    Вот-вот, я о том же… Уже молчу о флешках 🙂 Спасибо, буду пытаться исправить проблему!

  15. TheWhitescar написал(а) 23rd Август, 2012 в 12:47

    В общем, проблема так и не решилась. Даже 10 сантиметровый шнурок никак не повлиял на ситуацию. Конечно, есть одно отличие, от видео, которое было у вас. Там МИДИ файлик записывался несколько секунд, у меня же скорость записи/чтения (при удачной записи, конечно) переваливает за 8000/125000 б/с, соответственно около миллисекунды, даже статусбар не успевает появляться. Чем больше размер файла, тем меньше шансов его удачно записать. Такое ощущение, что часть данных просто теряется. Сама флеш память максимально близка к контроллеру, почти нога к ноге. Может быть у вас есть какие-нибудь мысли по этому поводу? Может как-нибудь можно снизить скорость записи аппаратно/программно? Буду очень признателен за ответ…

  16. BSVi написал(а) 23rd Август, 2012 в 13:02

    Извините, но я не знаю, чем вам помочь. Я с таким не сталкивался.

  17. TheWhitescar написал(а) 24th Август, 2012 в 11:04

    Жаль, но всё равно спасибо. А может подскажете, какая у вас была скорость?
    ПС: маленькое замечание в самой схеме. У вас, вероятно, на самой схеме перепутаны 1 и 2 кнопки 🙂

  18. BSVi написал(а) 24th Август, 2012 в 11:05

    Честно — не помню. Все-таки, это было 3 года назад.

  19. TheWhitescar написал(а) 24th Август, 2012 в 11:06

    А, и ещё одна просьбочка, может можно взглянуть на исходники драйверов?

  20. BSVi написал(а) 24th Август, 2012 в 11:10

    Да, без проблем: https://sourceforge.net/apps/trac/libusb-win32/browser/trunk/libusb

  21. TheWhitescar написал(а) 24th Август, 2012 в 12:35

    Отлично, спасибо большое!

  22. schl. написал(а) 25th Октябрь, 2013 в 14:09

    Огромное спасибо вам за ваш труд и информацию, которой делитесь.
    Я немного далековат от контролеров, но рискнул собрать ваш прерыватель и столкнулся с такой трудностью: управляющая программа настройки записывает, а при попытке открыть миди пишет «ошибка при открытии файла». Подскажите пожалуйста с чем может быть связана такая трудность Спасибо

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт защищен reCAPTCHA и применяются Политика конфиденциальности и Условия обслуживания применять.