Оглавление:

Запись / воспроизведение / наложение Midi с 5-контактными разъемами: 3 шага
Запись / воспроизведение / наложение Midi с 5-контактными разъемами: 3 шага

Видео: Запись / воспроизведение / наложение Midi с 5-контактными разъемами: 3 шага

Видео: Запись / воспроизведение / наложение Midi с 5-контактными разъемами: 3 шага
Видео: Подключение USB и MIDI – как правильно и что лучше? 2024, Июль
Anonim
Midi Record / Play / Overdub с 5-контактными разъемами
Midi Record / Play / Overdub с 5-контактными разъемами

* Использует чип ATMega-1284, работающий на частоте 8 МГц, с 4 Кбайт ОЗУ и 4 Кбайт EEPROM.

* Использует старые 5-контактные разъемы DIN

* Позволяет записывать и воспроизводить, а также наложить: запись вместе с тем, что вы записали ранее.

* Полное меню

* Возможность присвоения имени и сохранения файла в eeprom

* Редактируемые темпы и размеры

* Элементарное квантование

Полезность * Подтверждение концепции: этот проект может показаться вам сложным.

Что включает в себя это руководство:

* Список деталей

* Отчет по проекту (прикреплен к этой панели)

Содержит много необходимой информации о проекте.

* Ссылка на код C на GitHub

github.com/sugarvillela/ATMega1284

* Пошаговые инструкции по сборке проекта и адаптации кода

Шаг 1: Список деталей

Список деталей
Список деталей

Некоторые детали я получил в школе со скидкой. Некоторые я купил в магазине и заплатил слишком много. Если у вас есть время, выложите все это онлайн.

1 Макет любой модели, примерно такого же размера, как на вводной фотографии, 20 долларов США.

1 микропроцессор, модель ATMega1284, $ 5

Это универсальный чип с большими возможностями. Информацию можно найти здесь:

ww1.microchip.com/downloads/en/devicedoc/atmel-42718-atmega1284_datasheet.pdf

1 5-вольтовый блок питания

1 АТМЕЛ-ЛЕД

Это интерфейс между вашим компьютером и микропроцессором. Вам также понадобится программное обеспечение для редактирования кода (IDE) и компилятор, который может кросс-компилировать C в архитектуру микросхемы ATMega. Atmel предоставляет среду Atmel Studio, отвечающую этим требованиям. Загрузите его здесь:

1 оптрон, модель 6N138 или эквивалент, 5 долларов США

Это для ввода; стандарт midi требует, чтобы устройства были изолированы друг от друга, чтобы предотвратить образование контуров заземления. Я использовал эквивалентную микросхему NEC с идентичным расположением контактов. Смотрите фото выше для информации или просто погуглите "6n138 pinout". Если вы используете модель с другим назначением контактов, найдите соответствующие контакты (внимательно).

2 ЖК-экрана, модель 1602A1, 3 доллара США каждый

Я использовал 2 * 16 дисплеев, то есть у них 2 ряда по 16 символов в каждой. Код написан специально для них, поэтому попробуйте использовать те же самые. Подключения: 8 линий данных и 2 линии управления. Вы можете совместно использовать строки данных между двумя экранами, но вам нужно по 2 линии управления для каждого из них, всего 4 линии управления. В моем проекте шина C используется для линий данных ЖК-дисплея, а верхний полубайт шины D - для линий управления. Если вы подключаете свой по-другому, измените выходные шины в своем коде.

1 спикер

Для выхода метронома; подойдет любой динамик. Вы будете подавать на него квадратные волны 3-5 вольт, так что он не должен звучать красиво. Вы также можете подключить к внешнему усилителю.

1 конденсатор для смягчения прямоугольной волны на выходе динамика

2 5-контактных разъема DIN, вилка или розетка

Я использовал штыревые кабели и подключил их к плате. Для более элегантного решения используйте гнездовые разъемы и подключите штекерные кабели к другим устройствам. (Помните, что номера контактов указаны наоборот, в зависимости от того, как вы смотрите на разъем!)

Резисторы, 180-330 Ом, 1к-10кОм

Возможно, вам придется поэкспериментировать с номиналами резисторов, чтобы оптопара достаточно быстро отслеживала вход.

Светодиоды

Конструкция требует наличия диода на входе оптоизолятора, но подойдет и светодиод. Используйте светодиод метронома, чтобы он мигал в такт звуковому сигналу динамика. Имейте под рукой дополнительные светодиоды для отладки, если они вам нужны.

Провода, много проводов

Калибр 20-22, сплошные провода, длинные, короткие и крошечные.

Шаг 2: код C

Перейдите на github, чтобы получить код:

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

* Отчет по проекту на вводной панели содержит подробные описания программных модулей и их взаимодействия.

* Нет копипаста. Взаимодействовать с кодом; эксперимент; переписать. Вы, наверное, сможете это улучшить.

Шаг 3: Начальная проводка (см. Фото проекта для руководства)

Первоначальная проводка (см. Фото проекта для руководства)
Первоначальная проводка (см. Фото проекта для руководства)
Первоначальная проводка (см. Фото проекта для руководства)
Первоначальная проводка (см. Фото проекта для руководства)

Примечания к фото проекта перед тем, как мы начнем

На фото оптопара - последняя микросхема справа, а процессор - большая микросхема слева.

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

Круглая черная штука - динамик (пьезозуммер).

Кнопки находятся в верхнем левом углу. Это довольно далеко от шины A в правом нижнем углу микросхемы.

ЖК-экран слева - ЖК-дисплей 0. Экран справа - ЖК-дисплей 1.

В этих инструкциях я предполагаю, что вы используете именно ту деталь, которая указана (везде, где в списке деталей указан номер модели).

Подключите блок питания

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

Чипсы

Установите ATMega Chip, стараясь не погнуть штыри (хорошая осторожность для любого чипа) и убедившись, что он полностью вставлен.

Установите оптрон рядом с процессором.

Подключите шины источника питания к соответствующим контактам на процессоре и оптроне.

ЖК-дисплеи

Прочтите прилагаемый файл LCDhookup.pdf (ниже), чтобы узнать, как подключить ЖК-дисплей.

Каждый экран имеет два подключения питания и три подключения заземления.

Контакт 3 - это регулятор яркости, который, если он установлен неправильно, сделает содержимое экрана невидимым. Если у вас есть под рукой потенциометр, используйте его для регулировки управляющего напряжения. Вы также можете попробовать фиксированные резисторы, чтобы получить напряжение около 1/2 VCC.

Контакты 4 и 6 на ЖК-дисплее 0 подключаются к D4 и D5 на процессоре. Они используются для включения и сброса экрана.

Контакты 4 и 6 на ЖК-дисплее 1 подключаются к D6 и D7 на процессоре.

Контакты 7-17 на обоих ЖК-дисплеях подключаются к C0-C7 на процессоре. Это общая шина данных. Каждый экран будет игнорировать данные до тех пор, пока на контакты 4 и 6 не поступит управляющий сигнал.

Прочтите: Информация о ЖК-дисплее и дополнительная информация, чтобы помочь понять, как работают ЖК-экраны.

Кнопки

Подключите четыре кнопки к A2-A4 на процессоре. (Я оставил A1 открытым для входа аналого-цифрового преобразователя, но не использовал его.)

На любом типе логической микросхемы неподключенный вход имеет высокий уровень, что означает, что процессор увидит 1 на этом входе. Чтобы контролировать это, вам необходимо подключить контакты к земле через резистор. Я подключил кнопки к земле (через резистор), когда они не нажимаются, и к высоким при нажатии. Для этого используйте любой резистор от 330 до 1 кОм.

В качестве альтернативы, и, возможно, с большей энергоэффективностью, вы можете подключить кнопки к высокому уровню, когда они не нажаты, и низкому уровню при нажатии. Вам нужно будет изменить код (buttonBus.c), чтобы искать ~ PINA вместо PINA.

Рекомендуемые: