Тон-генератор своими руками

Синтезаторы, звуковые модули, сэмплеры

Сообщение Dmitry_Milk » Пн окт 08, 2007 9:54

Посмотрел я даташиты по 16-й серии
http://ww1.microchip.com/downloads/en/D ... 40044F.pdf

Действительно, 16-я серия сильно отстает :(
Самое главное - отсутствие аппаратной команды умножения. Во вторых - отсутствие арифметических команд с учетом флага переноса/заема. Ну и максимальная тактовая частота 20МГц - в два раза меньше.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Пн окт 08, 2007 11:03

А я посмотрел цены на 18-ю серию (правда, пока только на МайкроЧипе). :lol:
Вроде, и не такие дорогие.
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Пн окт 08, 2007 18:15

Точно

Можно прямо открыть страничку со всей 18-й серией и выбрать прямо по минимальной стоимости. Многие фичи, всякие там навороченные интерфейсы совершенно не нужны, достаточно USART. Ну и еще возможно I2C или SPI, если подключать фирменный ЦАП (тогда и ноги I/O портов не нужны). RAM здесь практически не нужен, желательно только flash побольше, чтоб хранить таблицы преобразования питча в частотный фактор с мелкой дискретизацией (скажем, в 1/16 тона).

Скажем, самый дешевый по микрочиповскому прайсу PIC18F24J10 $1.47 - интерфейсы EUSART I²C Compatible/SPI.

А самый дешевый по прайсу chip-dip.ru - PIC18F1320 (156,00 р.), но правда у него только USART и I/O-ног маловато, если самодельный резисторный ЦАП вешать, и еще он в SO-корпусе, что неудобно для рукоделия.

БОлее подходящий PIC18F2520, есть и SO (180,80 р.) и DIP (206,80 р.) корпуса и ног больше, если на самодельный ЦАП ориентироваться, и Flash 32 Кбайта, и EEPROM есть, можно пресеты сохранять, и интерфейсы EUSART, MI²C , Compatible/SPI, можно фирменные ЦАПы подцепить.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Пн окт 08, 2007 22:25

Dmitry_Milk писал(а):если подключать фирменный ЦАП
Всё-таки хочу попробовать из ШИМа. Только нужен хороший ФНЧ на выход. Которые знаю, интегральные, что-то не найти.

Dmitry_Milk писал(а):А самый дешевый по прайсу chip-dip.ru
Честно говоря, не довелось воспользоваться их услугами. В нашем филиале, у них цены - "будь здоров", а выбор - маленький.

А вообще, давно собираюсь заняться 18-м семейством. :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Вт окт 09, 2007 12:27

Поговорил с людьми. Говорят, что такое лучше разрабатывать на сериях PIC30 - PIC33 - это DSP, то есть операции более оптимизированы под такие вещи, как фильтрация. Но с ихним АСМом еще не разбирался. По цене сопоставимы с PIC18.

Так что на PIC18 делать такое - это оказалось извратом :)
Хотя наверное оптимальным решением может оказаться совмещение обычного PIC в качестве управляющего (разбор миди, раздача заданий голосам, возможно генерация огибающих и LFO), а dsPIC - уже фильтрации, нормальлизации и модуляции - то есть вся работа c сигналами звуковой частоты.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Dmitry_Milk » Вт окт 09, 2007 17:34

Действительно, по цене сравнимо либо даже дешевле 18-й серии:
http://www.promelec.ru/shop/search?keyword=dsPIC30
(у чип-дипа нет).
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Вт окт 09, 2007 21:51

Dmitry_Milk писал(а):по цене сравнимо
Я тут, как-раз недавно в "Промэлектронике" интересовался ценами на 16-ю серию. Так был очень удивлён. Во-первых, модели всё старые (ну, типа не 628A, а просто 628), а во-вторых, цены, чуть ли не в три раза больше.

Как с 30-й серией разберётесь, или ещё какие идеи появятся, сразу сигнализируйте. :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Ср окт 10, 2007 10:46

Gregory писал(а):...Как с 30-й серией разберётесь...


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

С 18-й серией для меня намного проще, проще взяться за разработку чего-либо, поскольку у меня он есть свободный в наличии, я его знаю почти как свои пять пальцев, а с миди-лоадером вообще ничего не надо для начала разработок, ни сложной обвязки, ни даже блока питания - только сам контроллер, кварц с кондерами и шнурок с разъемом для гейм-порта.

Если решите перейти к 18-й серии, могу поделиться миди-лоадером.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Ср окт 10, 2007 23:31

Dmitry_Milk писал(а):поделиться миди-лоадером.
Напомните, что он делает? Насколько понимаю, что-то с МИДИ-интерфейсом.
Просто, ИМХО, для таких задач, как-раз вполне хватает 16-й. :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Чт окт 11, 2007 8:45

Он позволяет менять прошивку в контроллере с помощью MIDI-команд SysEx определенного формата.

Собственно суть даже не в том, что это MIDI (так это было бы просто каким то ненужным усложнением - не проще ли прошивать программатором или, например, через UART с COM-порта компа?). Суть в том, что это делается через тот миди-порт, который на гейм-порту звуковой платы или материнки. А у него есть две удобных сосбенности:

- он работает в TTL-уровнях, не требуется преобразователь уровня (как нужно было бы в случае COM-порта), просто вход и выход UART контроллера прямо подключаются к выводам 12 и 15 гейм-порта.
- на нем есть вывод питания +5В, можно питать схему прямо от него.

При подаче питания управление попадает на лоадер, и он ждет поступления MIDI SysEx-команд с новой прошивкой, которые ему может послать запущенная в этот момент на компе ответная программная часть. Если не дожидается - просто передает управление на имеющуюся прошивку. Конечно же, перед впаиванием контроллера на плату в него необходимо залить лоадер, но это однократная операция, а в дальнейшем все изменения прошивки идут через лоадер.

Особенно удобно в случае, если разрабатываемое устройство является MIDI-устройством (например, миди-клавой или тон-генератором) - тогда обновления прошивки можно делать даже тогда, когда устройство собрано в корпусе и уже давно эксплуатируется. Я так и делал со своей миди-клваой, добавляя все новые фичи в уже изготовленную клаву.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Чт окт 11, 2007 9:27

Dmitry_Milk писал(а):MIDI-команд SysEx определенного формата.
Кстати говоря, что за формат?
Старшие модели 16-го семейства поддерживают изменение програмного кода, но лично я - противник этого метода. Мне проще достать МК и прошить его на программаторе, чем оставлять "случайный доступ для дурака", поскольку программы отлаживаю в Протеусе, и "заливаю" уже отлаженные прошивки.

Dmitry_Milk писал(а):ответная программная часть
Так понимаю, это может быть любой более-менее "развитый" секвенсор.

Dmitry_Milk писал(а):UART с COM-порта компа
Если обратили внимание, у меня есть такой девайс "Com to MIDI". :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Чт окт 11, 2007 17:58

Ответил личкой, чтоб не развивать офтоп.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Пн окт 22, 2007 23:13

Выложил новую версию прошивки, и кое-какие мелодии. :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Gregory » Сб мар 22, 2008 21:53

Так! Понимаю, что электроника тут не многих интересует.
Тогда просьба, несколько другого плана. Как-раз музыкального.
Помогите создать коллекцию мелодий.
Надо:
Миди-файл с фрагментом любимого произведения. Для большего сходства с тон-генератором, выбрать инструмент из оргАнов. Удобно сделать три трека. 1- Басс. 2- Мелодия (в паузы можно вставить Соло). 3- Гармония. Одновременно звучать могут только три ноты (в сумме, со всех треков). Вот собственно и всё. :wink:
E-mail: gregoryrсобакаimailточкаru
Последний раз редактировалось Gregory Сб мар 22, 2008 22:14, всего редактировалось 1 раз.
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 840
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Юрий Петелин » Сб мар 22, 2008 22:04

Уважаемый Dmitry_Milk. Увидел Ваш давний вопрос о предприятиях, выпускавщих и, возможно все еще выпускающих синтезаторы. Посмотрите кординаты в материалах статьи http://petelin.ru/pcmagic/polyvoks/polyvoks.htm
Юрий Петелин
Аватара пользователя
Юрий Петелин
Администратор
Администратор
 
Сообщения: 399
Зарегистрирован: Вс янв 16, 2005 21:23
Откуда: Санкт-Петербург

Пред.След.

Вернуться в Синтезаторы



@Mail.ru

x

#{title}

#{text}