Свежие обсуждения
Микроконтроллеры

Вэйвтэйбл синтезатор

1 12 26

HOWK: а первый вопрос
Насчет "подумать" цитируем даташит (стр 61):

PB5 RESET / dW / ADC0 / PCINT5(1)
PB4 XTAL2 / CLKO / ADC2 / OC1B / PCINT4(2)
PB3 XTAL1 / CLKI / ADC3 / ^OC1B / PCINT3(3)
PB2 SCK / ADC1 / T0 / USCK / SCL / INT0 / PCINT2(4)
PB1 MISO / AIN1 / OC0B / OC1A / DO / PCINT1(5)
PB0 MOSI / AIN0 / OC0A / ^OC1A / DI / SDA / AREF / PCINT0(6)

(стр 86):
The Timer/Counter1 features a high resolution and a high accuracy usage with the lower prescaling
opportunities. It can also support two accurate, high speed, 8-bit Pulse Width Modulators
using clock speeds up to 64 MHz (or 32 MHz in Low Speed Mode).

(стр 88):
In PWM mode, OCR1A and OCR1B provide the data values against which the Timer Counter
value is compared. Upon compare match the PWM outputs (OC1A, ^OC1A, OC1B, ^OC1B) are
generated.

Повторюсь еще - динамик подключен к выходам ДВУХ ШИМов - на PB1 и PB4. Код туда действительно грузится комплементарный, тут АНТОХА прав, я ненедопонял - "хитрый япошка" действительно таким способом промоделировал "двухполярное" питание. Насколько я помню формат 8-битового wav-файла, "нулю" там соответствует код 0x80, отсюда и эти пляски

 

AHTOXA:
КилоСэмплы
Тоже такое на ум приходило, но поясните как? Ведь СЭМПЛ, это - собственно просто вавка. В лучшем случае, со служебной информацией об атаке, сустейне, спаде, и т.д. Как понимаете, размер у него совершенно непредсказуемый. Да и, насколько понял по демке, сэмпл там всего один единственный. Или дядька имеет ввиду сэмпл - единичный отсчёт? Тогда получается, что это - просто частота дискретизации.

Хитрый он жук, этот япошка
Ышо какой! Мы раньше рассуждали (см. выше), что надо сперва складывать мнговенные значения всех голосов, а потом уже подавать их на ШИМ, работающий с обычной частотой дискретизации. А у него, судя по частоте ШИМа, это делается как-то по-другому.

 

Gregory: Или дядька имеет ввиду сэмпл - единичный отсчёт?

Ну да, сэмпл = отсчёт/замер.

Gregory: Мы раньше рассуждали (см. выше), что надо сперва складывать мнговенные значения всех голосов, а потом уже подавать их на ШИМ, работающий с обычной частотой дискретизации.

У него так и есть. Только не путайте частоту ШИМ и частоту дискретизации, это разные вещи. Частота дискретизации - это частота, с которой переключаются значения, подаваемые на ШИМ.

 

AHTOXA:
не путайте частоту ШИМ и частоту дискретизации
Но ведь тогда упадёт разрядность. Зачем на столько "задирать" частоту ШИМ?

 

Gregory: Но ведь тогда упадёт разрядность.

Это ещё почему? Разрядность равна ширине ШИМ, вне зависимости от частоты дискретизации.

Gregory: Зачем на столько "задирать" частоту ШИМ?

Чтобы ничего не надо было фильтровать

 

2 Gregory
в выходной начал програмку для ПИКа, а Вы на АВРы перебрались

 

AHTOXA:
Это ещё почему
Потому что, при внутренней частоте 16MHz, и частоте ШИМа 250KHz, ширина ШИМа составит всего 64 отсчёта (6 бит). Или в АВРах ШИМы как-то хитрее устроены, али я чего-то недопонимаю?

AnSi:
Вы на АВРы перебрались
Что бы победить врага, надо его изучить.
Да, нет. Просто случайно обнаружил, что EXTRA-PIC'ом вроде можно и АВРы программировать. Вот хочу попробовать. А пока приставку не сделал, "точу лясы".
А Вы что за програмку затеяли?

 

Gregory: Или в АВРах ШИМы как-то хитрее устроены, али я чего-то недопонимаю?
Вы бы лучше даташит на 45 тиньку почитали. Для 250 кГц полные 8 бит.
В ней есть PLL с тактовой для ШИМА 64 Мгц при 8 Мгц внутреннем опорнике для вычислений.

PS Скачал по ссылке японца http://members.jcom.home.ne.jp/felm/mg.mpg звуковой файл, загрузил в Sound Forge и посмотрел форму сигнала. Всё так как и описано. Но звучит симпатично.

 

Gregory === ширина ШИМа составит всего 64 отсчёта (6 бит).
++ тут интересней считать не ширину, а во сколько тактов умещается "вся" программа - интересная цифра получается.
== А пока приставку не сделал, "точу лясы".
++ какую приставку? я что-то пропустил?
== А Вы что за програмку затеяли?
++ ритуал - слегка отвлекаюсь(иногда) при написании программы - чтоб мысли "по полочкам" улеглись - решил отвлечься "звонком" по описанному ранее алгоритму, чтоб пальцы не расслаблялись

 

smg123: smg123
сегодня, 12:04
Gregory: Или в АВРах ШИМы как-то хитрее устроены, али я чего-то недопонимаю?
Вы бы лучше даташит на 45 тиньку почитали. Для 250 кГц полные 8 бит.
В ней есть PLL с тактовой для ШИМА 64 Мгц при 8 Мгц внутреннем опорнике для вычислений.

Я программу хорошо не разбирал - эта функция используется ? А я-то цши навострил повторить сий минтезатор на 2313..