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

Давайте на минуту представим, что мы выделили одну ячейку памяти под номер текущей ноты. С каждым обновлением значения этой ячейки тактовый генератор меняет свою частоту работы.

Что же получается?

Допустим нам надо проиграть ноту C2 в течение 2с.

Исполняемая программа записывает номер ноты С2 в ячейку и тактовый генератор начинает работать на частоте 65,4 Гц.

За 2 на такой частоте успеет исполниться 131 инструкция. При этом задача последней, 131-й инструкции в этом блоке - записать новую ноту в ячейку, тем самым со следующей инструкции программа продолжит выполняться уже с другой частотой.



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

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

теоретически схему можно сделать и на релюшках - с аппаратным регистром (6-7 разрядного будет достаточно) , который реализует собой простой ЦАП (как в блоках питания типа Б5). По сути этот ЦАП будет набирать сопротивление времязадающей цепочки, ну а дальше времязадающая цепочка уже работает сама по себе.

В итоге - щелкаем селектором источника клока с релейного генератора на Self-host и наслаждаемся демкой! А поскольку у нас есть светодиодная панель - то и рисовать что-то сможем!

Ну а пока я ничего этого не реализовал, вот вам демка на телефоне с АОН

https://www.youtube.com/watch?v=GPG6a__Q0Sg

И статейка автора о том, как это делалось:

https://habr.com/post/421961/