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

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

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

image

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

 

Лицензия

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

Текст лицензии можно получить тут — http://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 написал(а) 18 марта, 2011 в 23:33

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

    BSVi Reply:

    Можно.

    PRO100_TOXA Reply:

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

    PRO100_TOXA Reply:

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

    BSVi Reply:

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

    PRO100_TOXA Reply:

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

    BSVi Reply:

    Давай )

    PRO100_TOXA Reply:

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

    BSVi Reply:

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

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

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

    TheWhitescar Reply:

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

    TheWhitescar Reply:

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

    BSVi Reply:

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

    TheWhitescar Reply:

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

    TheWhitescar Reply:

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

    BSVi Reply:

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

    TheWhitescar Reply:

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

    BSVi Reply:

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

    TheWhitescar Reply:

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

    BSVi Reply:

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

    TheWhitescar Reply:

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

  3. schl. написал(а) 25 октября, 2013 в 14:09

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

Создать новую ветку комментариев


Вы должны войти или зарегистрироваться чтобы оставить комментарий.