MIDI - Саксофон - пробую сделать

konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

попробовал сваять пользовательский блок,
но ума не приложу как подключить входы
Так?


vhody25.jpg
Теперь я правильно указал входы и выходы? да и вообще весь блок?

Вот что получилось из этого скетча
[spoiler]


int pin_Out_S0 = 8;
int pin_Out_S1 = 9;
int pin_Out_S2 = 10;
int pin_In_Mux1 = A0;
int Mux1_State[8] = {0};

void setup() {
pinMode(pin_Out_S0, OUTPUT);
pinMode(pin_Out_S1, OUTPUT);
pinMode(pin_Out_S2, OUTPUT);
//pinMode(pin_In_Mux1, INPUT);
Serial.begin(9600);
}

void loop() {
updateMux1();
for(int i = 0; i < 8; i ++) {
if(i == 7) {
Serial.println(Mux1_State);
} else {
Serial.print(Mux1_State);
Serial.print(",");
}
}
}

void updateMux1 () {
for (int i = 0; i < 8; i++){
digitalWrite(pin_Out_S0, HIGH && (i & B00000001));
digitalWrite(pin_Out_S1, HIGH && (i & B00000010));
digitalWrite(pin_Out_S2, HIGH && (i & B00000100));
Mux1_State = analogRead(pin_In_Mux1);
}
}

[/spoiler]
74HC4051_(Code_-_Basic).ubi
Прошу посмотреть и поправить если есть ошибки
У вас нет необходимых прав для просмотра вложений в этом сообщении.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

Вопрос:
на мониторе порта такая картина
в столбик бегут нули, нажимаю кнопку соответствующую 1 бегут единицы
двум бегут двойки

Как сделать так, что бы цифры не бежали
чтобы
при нажатии 1 в мониторе порта появилась одна единица в строчке
при нажатии 2 в другой строчке появилась 2
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

Подозреваю, что у вас идёт постоянная отправка в СОМ-порт. Сделайте отправку по изменению. Или по условию.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

edyapd писал(а): 23 апр 2021, 20:09 Подозреваю, что у вас идёт постоянная отправка в СОМ-порт. Сделайте отправку по изменению. Или по условию.
получилось спасибо

Отправлено спустя 1 час 36 минут 12 секунд:
есть серия коротких имульсов после RTrig
как разделить импульсы по входам следующего блока?
первый импульс на первых вход
второй импульс на второй вход
третий на третий четвертый опять на первый и т д
dsfbuy
Сержант
Сообщения: 172
Зарегистрирован: 03 ноя 2018, 12:40
Откуда: Братск
Имя: Виктор

MIDI - Саксофон - пробую сделать

Сообщение dsfbuy »

konsys писал(а): 23 апр 2021, 21:48 как разделить импульсы по входам следующего блока?
Так.
1.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

dsfbuy писал(а): 23 апр 2021, 22:41
konsys писал(а): 23 апр 2021, 21:48 как разделить импульсы по входам следующего блока?
Так.1.png
Спасибо - работает

Но не решает моей задачи
не корректно сформулировал

задача такая
есть блок с тремя входыми
1) включение входа 3
2) выключение входа 3
3) вход с сигналом

на вход 3 подается сигнал последовательности цифр от 0 до 255 разной длительности
надо как то исхитриться и в момент смены цифр - например 7 на 45 затем на 58
подать сигнал на 2) чтобы выключить 7 и тут же подать сигнал на 1) что бы включить 45,
затем при смене с 45 на 58 подать сигнал на 2) что бы выключить 45 и подать сигнал на 1) что бы включить 58


PS
когда я пробую решить данную задачу, (используя блок - детектор изменения числа) то сталкиваюсь с такой проблемой
7 успевает смениться на 45 и подается сигнал на выключение но не 7 а уже 45

PSS
Наверное должна произойти смена чисел - но изменения не должны попасть на вход 3,
а вот отключение должно сработать, затем изменения попадают на вход 3 и идет включение

Может сигнал должен раздвоиться и на одной из линий идти с задержкой на вод 3, а управление на отключение с опережающего сигнала...
Блин я запутался

Как это реализовать не могу придумать
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

Будет проще понять, если вы нарисуете схему с входами и напишите, где и в какой момент, что должно быть. Наверняка всё решается очень просто.

Отправлено спустя 41 минуту 28 секунд:
Если вы подразумеваете этот блок
изображение_2021-04-24_092613.png
То возможно вы не правильно понимаете его работу. Он может принимать несколько нот.
К примеру, вы нажали на одну клавишу и пошла нота До. Не отпуская нажали на вторую и пошла Ля. Опять не отпуская нажали третью и пошла Соль. После этого вы отпустили Ля. И именно она должна прекратить звучание, а До и Соль остаются, до тех пор, пока вы их не отпустите.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

edyapd писал(а): 24 апр 2021, 05:31 Будет проще понять, если вы нарисуете схему с входами и напишите, где и в какой момент, что должно быть. Наверняка всё решается очень просто.
Он может принимать несколько нот.
К примеру, вы нажали на одну клавишу и пошла нота До. Не отпуская нажали на вторую и пошла Ля. Опять не отпуская нажали третью и пошла Соль. После этого вы отпустили Ля. И именно она должна прекратить звучание, а До и Соль остаются, до тех пор, пока вы их не отпустите.
Вы абсолютно правильно поняли и задачу, и с каким блоком имею дело.
Проблема в том, что инструмент одноголосный и две ноты одновременно звучать не должны.
А у меня сейчас - все ноты, которые я отправляю в миди - звучат постоянно - не отключаются.
Надо, что бы при смене ноты - старая переставала звучать, а новая начинала.

edyapd писал(а): 24 апр 2021, 05:31 Изображение
Он может принимать несколько нот.
Как сделать, что бы он принимал только одну ноту.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

Попробуйте так
изображение_2021-04-24_154040.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

edyapd писал(а): 24 апр 2021, 11:40 Попробуйте так

изображение_2021-04-24_154040.png
у меня такая схема
010.jpg
Начал строить - не пойму
note - это линия по которой идут ноты на вход миди NOTE
что такое note_new и note_change
а Volume у меня вообще константа
У вас нет необходимых прав для просмотра вложений в этом сообщении.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

Будет проще, если вы будете выкладывать сразу проект, а не кусочек картинки из него.
И желательно делать комментарии на входами.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

edyapd писал(а): 24 апр 2021, 12:19 Будет проще, если вы будете выкладывать сразу проект, а не кусочек картинки из него.
И желательно делать комментарии на входами.
012.jpg
код
poluchenie not-Leonardo.flp
что передается в миди
013.jpg
видим что нота отключается сразу после включения
У вас нет необходимых прав для просмотра вложений в этом сообщении.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

А если так?
poluchenie not-Leonardo_1.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

edyapd писал(а): 24 апр 2021, 15:42 А если так?

poluchenie not-Leonardo_1.flp
Р А Б О Т А Е Т

Дорогой Вы мой человек.
это фантастика
15.jpg
подключил программу миди инструментов - работает как надо
Послушал в наушниках - красота
И задержка такая же как и на софтовой клавиатуре.
Очень доволен

Скажите, что Вы поменяли?
Неужели только расположение блоков?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

Нажмите на эту иконку при вашем расположении блоков и при том, что я передвинул. Цифры означают последовательность выполнения.
изображение_2021-04-24_202302.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

edyapd писал(а): 24 апр 2021, 16:23
Та плата, что новой (второй) создали и в ней идет обмен переменными и есть задержка основного сигнала для входа NOTE?
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

MIDI - Саксофон - пробую сделать

Сообщение edyapd »

Я бы не не сказал, что это задержка. Это скорее упорядочивание кода. Не всегда на одной плате можно за счёт сдвига модулей создать тот порядок, который хочется. Но, перенос на другую плату уже на 100% гарантирует вам, что код будет выполняться после того, как он выполнится на предыдущей. Поэтому, я всегда стараюсь разбить код по платам, если вдруг на одной плате есть возможность выполнения кода не в той последовательности, в которой требуется.
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

poluchenie not-Leonardo_1-s-280-001.flp
Приветствую
столкнулся с проблемой
создаю код датчика давления и запускаю на UNO - для изменения уровня звука
работает как мне надо

но стоит этот код поместит в код с мультиплексором миди
миди - перестает реагировать на уровень звука

Кроме того
к плате подключаю датчик bmp280 по I2C- и акрдуино леонардо перестает определяться в компе
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
kulibinsvv
Лейтенант
Сообщения: 487
Зарегистрирован: 18 сен 2015, 10:04
Откуда: Омск
Благодарил (а): 3 раза
Поблагодарили: 5 раз

MIDI - Саксофон - пробую сделать

Сообщение kulibinsvv »

[ref]konsys[/ref], у вас переменная note_change один раз устанавливается в TRUE и нигде не устанавливается в FALSE.
Наверно вы предполагали следующее:
[spoiler]
Безымянный.png
[/spoiler]
Чтобы добавить инверсию boolean входу/выходу необходимо щелкнуть правой кнопкой мыши на выводе и в появившемся меню выбрать пункт "Инвертировать".

Отправлено спустя 48 минут 17 секунд:
Переменная podstroyka имеет явно завышенное значение, надо бы уточнить.

Отправлено спустя 1 минуту 19 секунд:
Единица измерения Паскаль.

Отправлено спустя 7 минут 3 секунды:
konsys писал(а): 26 апр 2021, 22:52подключаю датчик bmp280 по I2C- и акрдуино леонардо перестает определяться в компе
Покажите схему подключения.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Мой змей, этот ползучий соблазн сомнения,всё шевелится, побуждая «искать концы»... (Станислав Ермаков)
konsys
Сержант
Сообщения: 103
Зарегистрирован: 13 июл 2017, 23:21
Контактная информация:

MIDI - Саксофон - пробую сделать

Сообщение konsys »

kulibinsvv писал(а): 27 апр 2021, 08:38 Переменная podstroyka имеет явно завышенное значение, надо бы уточнить.
может и так
но работает как надо, значит из блока датчика выходит не совсем в паскалях значение, да и перед вычитанием я умножаю на 10
чтобы чувствительность повысить
[spoiler]в первом столбце - значение после вычислений, во второом - переменная podstroyka, в третьем значение от 0 до 127 - уровень звука
первая картинка - в покое
вторая - с большим давлением
третья - с отрицательным
016.jpg
на уно датчик подключаю так
WhatsApp Image 2021-04-27 at 09.48.59 (1).jpeg
на уно sda/scl - А4/А5
на леонардо sda/scl -16/17
WhatsApp Image 2021-04-27 at 09.48.59.jpeg
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ответить

Вернуться в «Помогите, а то я "нимагу"»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя