Нотная запись для микроконтроллера

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Eddy_Em писал(а):Дык, выбирать нужно правильный МК, а не пытаться отверткой гвоздь забить!
я думаю, будет проще сразу посылать грубо и далеко всех, кто пытается навязывать своё видение ситуации, игнорируя право каждого на собственный выбор!
Eddy_Em писал(а):Ну так возьми МК с восемью таймерами - в чем проблема-то?
ну так не лезь с "советами", где их не ждут! прочти название темы и либо отвечай на вопрос, либо иди лесом.
mickbell писал(а):звуком, который можно просто возненавидеть
так для будильника самое то! :)))
mickbell писал(а):Боюсь такое слушать.
ну... а вы как себе представляете формирование AVR-ом точной частоты? где можно, старался подбирать по минимуму погрешности, но можно-то не всегда...
Martian писал(а):у меня именно так жутко и вышло, фальш сплошная
хорошо, когда медведь на ухо наступил :))) я дискомфорта не испытываю.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 16967
Зарегистрирован: Пт мар 30, 2012 05:17:29
Откуда: Екатеринбург

Сообщение mickbell »

[uquote="ARV",url="/forum/viewtopic.php?p=4158331#p4158331"]а вы как себе представляете формирование AVR-ом точной частоты? где можно, старался подбирать по минимуму погрешности, но можно-то не всегда...[/uquote]Берётся 16-разрядный таймер-счётчик, на вход подаём 16 МГц, пока без прескалера. Минимальная частота получается около 250 Гц, начало первой октавы. При этом в районе этих частот шаг между соседними коэффициентами деления (65534 и 65535) получается 4 мГц, или 16PPM (относительно генерируемой частоты), или примерно 1/37 цента!!! Ну говорить же не о чем! Можно спокойно снижать прескалером входную частоту, запас по разрешению останется охренительный. Верха не считаю, там несколько хуже, но, я думаю, будет вполне терпимо.
Последний раз редактировалось mickbell Пн янв 10, 2022 12:58:52, всего редактировалось 1 раз.
И хрюкотали зелюки,
Как мюмзики в мове.

На каждый РКН
Найдётся VPN.
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ARV, подозреваю, что в аврках частота таймера настраивается подобно STM32: прескалер и нечто вроде ARR. При предельной частоте даже в 8МГц (16МГц пополам) вполне можно получить более-менее точные частоты, уж лучше 1% — однозначно. В интернетах есть примеры функций, вычисляющих наилучшее значение этих двух величин (ну или самому можно написать - быстрей будет).
Например, берем частоту 587.33Гц. Потребуем точность не хуже 1/12 от интервала между полутонами, т.е. это будет интервал [584.51, 590.16]Гц. Для частоты в 8МГц наш делитель будет равен 13628, а полученная частота - 587.027Гц, т.е. вполне близко к заданной.

В общем, нет ничего сложного, чтобы генерировать заданные частоты. Возьмем даже какую-нибудь очень высокую "ля" на частоте 7040Гц (ХЗ, есть ли музыкальный инструмент, умеющий в такой писк). Допустимые погрешности: [7006.19, 7073.97] Гц. Если взять делитель 1136, то получим 7042.25Гц, т.е. вполне близко от искомой частоты.

Так что, не надо выдумывать! Даже на убогой 8-битной аврке можно вполне чистые частоты генерировать!..
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

ну, вот опять вместо полезной информации начинаются рассуждения о том, что мудак-автор сделал не так... :(
mickbell писал(а):Берётся 16-разрядный таймер-счётчик
его нету
mickbell писал(а):на вход подаём 16 МГц
их нету
и вообще... глянул сейчас в свои таблички - не все так уж плохо :)))

Код: Выделить всё

ДО	131	131	-0,31%
ДО#	138	139	0,29%
РЕ	147	147	-0,33%
РЕ#	156	156	-0,38%
МИ	164	165	0,26%
ФА	176	175	-0,49%
ФА#	186	185	-0,50%
СОЛЬ	195	196	0,40%
СОЛЬ#	208	208	-0,28%
ЛЯ	220	220	0,01%
ЛЯ#	233	233	-0,02%
СИ	247	247	0,00%
ДО	262	262	0,08%
ДО#	278	277	-0,18%
РЕ	293	294	0,11%
РЕ#	311	311	0,08%
МИ	329	330	0,23%
ФА	349	349	0,04%
ФА#	370	370	0,06%
СОЛЬ	393	392	-0,26%
СОЛЬ#	417	415	-0,32%
ЛЯ	440	440	-0,02%
ЛЯ#	466	466	-0,05%
СИ	492	494	0,36%
ДО	525	523	-0,37%
ДО#	553	554	0,23%
РЕ	590	587	-0,39%
РЕ#	625	622	-0,45%
МИ	658	659	0,20%
ФА	702	698	-0,55%
ФА#	744	740	-0,56%
СОЛЬ	781	784	0,33%
СОЛЬ#	833	830	-0,35%
ЛЯ	880	880	-0,05%
ЛЯ#	933	932	-0,08%
СИ	992	987	-0,46%
ДО	1042	1046	0,43%
ДО#	1116	1108	-0,70%
РЕ	1179	1174	-0,43%
РЕ#	1250	1244	-0,48%
МИ	1330	1318	-0,90%
ФА	1389	1396	0,53%
ФА#	1488	1479	-0,59%
СОЛЬ	1563	1567	0,30%
СОЛЬ#	1645	1660	0,94%
ЛЯ	1736	1759	1,30%
ЛЯ#	1838	1864	1,36%
СИ	1976	1974	-0,10%
ДО	2101	2092	-0,44%
ДО#	2212	2216	0,16%
РЕ	2370	2348	-0,93%
РЕ#	2475	2487	0,48%
МИ	2632	2635	0,13%
ФА	2793	2792	-0,06%
ФА#	2959	2958	-0,03%
СОЛЬ	3125	3133	0,27%
СОЛЬ#	3311	3320	0,25%
ЛЯ	3521	3517	-0,12%
ЛЯ#	3731	3726	-0,14%
СИ	3937	3947	0,27%
первая цифра - частота, сгенерированная AVR, вторая - "точная" частота ноты (округленная до целых), а далее - погрешность частоты. сам себя оклеветал, получается :)))

Добавлено after 58 seconds:
считал в Excel с округлением, поэтому при внешне одинаковых значениях погрешность ненулевая...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

А делать такое на восьмибитке - это политический принцип такой? Ну, тогда советую вместо АВР взять STM8 или нувотон. Цена та же, зато периферия куда приятней.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Реклама
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Eddy_Em, вот он, тот редкий случай, когда я с Вами полностью соглашусь.
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 16967
Зарегистрирован: Пт мар 30, 2012 05:17:29
Откуда: Екатеринбург

Сообщение mickbell »

Знаете, что я вам скажу, господа хвостатые... Мне тут недавно пришлось одну свою самоделку портировать с STMа32 на AVR. Блажь? А вот нет. Во-первых, овёс нынче дорог, мелкий ардуй оказался дешевле синей виагры синей пилюли с STM32 на борту. Во-вторых, то, что можно сделать на ардуе (софт, конечно, пишу на си), зачем делать на виагре? Жалко же ресурсы тратить, лучше их на дело пустить. Ну и, опять же, бывают и пятивольтовые задачи, куда ардуй лучше становится.
[uquote="ARV",url="/forum/viewtopic.php?p=4158361#p4158361"]и вообще... глянул сейчас в свои таблички - не все так уж плохо :)))
ЛЯ 1736 1759 1,30%
ЛЯ# 1838 1864 1,36%[/uquote]Это просто за гранью добра и зла.
Последний раз редактировалось mickbell Пн янв 10, 2022 14:47:48, всего редактировалось 1 раз.
И хрюкотали зелюки,
Как мюмзики в мове.

На каждый РКН
Найдётся VPN.
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Всё верно. Но я всё равно их не люблю, потому что не знаю, а если не люблю - значит они плохие ))
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 16967
Зарегистрирован: Пт мар 30, 2012 05:17:29
Откуда: Екатеринбург

Сообщение mickbell »

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

Добавлено after 11 minutes 8 seconds:
Поправка в шестую строчку "трёх белых кобыл", так правильнее:
P(8),Cs3(8),Cs3(8),Cs3(8),Cs3(8),Cs3(8),Cs3(8),Cs3(8),D3(4),Cs3(4),C3(4),Cs3(4),
P(8),Cs3(4),Cs3(8),Cs3(8),Cs3(8),Cs3(8),Cs3(8),D3(4),Cs3(4),C3(4),Cs3(4),
И хрюкотали зелюки,
Как мюмзики в мове.

На каждый РКН
Найдётся VPN.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Eddy_Em писал(а):Ну, тогда советую вместо АВР взять STM8 или нувотон.
мне ваши советы не нужны, я вам советую вместо трамвая ездить на бентли.
mickbell писал(а):Это просто за гранью добра и зла.
:( то вам 5% много, то всего 1,3% уже за гранью... меньше не вышло...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 16967
Зарегистрирован: Пт мар 30, 2012 05:17:29
Откуда: Екатеринбург

Сообщение mickbell »

Тьфу, что-то я ошибся. В десять раз. Бывает...
1.3% - это примерно 20 центов. Хорошо слышно, хотя ноту ещё можно идентифицировать, сморщившись. :)))
И хрюкотали зелюки,
Как мюмзики в мове.

На каждый РКН
Найдётся VPN.
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Надо просто использовать только те ноты, которые удались :)
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

При чем здесь бентли? Нувотоновский аналог STM8S003 стоит меньше 50 центов.
Кстати, ардуины-наны по цене на али уже сравнялись с "синими таблетками"! За bluepill на STM32F103C6T6 просят чуть больше 200 р — столько же, сколько за "нанку" на самой говнистой абдурине!
Если посмотреть на стоимость голых чипов, за голые атмеги328 просят не меньше 250р за штучку! Ровно столько же просят за штучку STM32F072CBT6, а за STM32F103C6T6 — и того меньше!

Я же говорил о STM8 и нувотонах. Советую погуглить, почем их на али продают. Те же n76e003 или STM8S103F3P6 (кстати, на удивление оказалось, что нувотон даже дороже выходит - его, видимо, надо на таобао брать, а не на али). Если брать STM8 жменью, то будет меньше 50р за микроконтроллер. И это при их ресурсах-то!!! Советую сравнить аппаратные возможности STM8 и ближайшей по цене аврки.

Но таки рекомендую забыть уже про эти чертовы восьмибитки и перейти на 32-битные МК. По цене они не сильно отличаются, зато разработка под них - просто прелесть! И ресурсов полно. Не нужно дурью маяться с софтовым CDC, т.к. USB есть аппаратный. Таймеров гора. Разве что EEPROM нет, но это компенсируется большим объемом флеша (у меня обычно не меньше 100кБ остается под эмуляцию EEPROM во флеш, а т.к. флеш нужно стирать лишь тогда, когда все 100кБ закончились, хватает очень надолго).
Последний раз редактировалось Eddy_Em Пн янв 10, 2022 16:58:17, всего редактировалось 1 раз.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Друг Кота
Сообщения: 3305
Зарегистрирован: Пт ноя 02, 2018 16:14:36

Сообщение HochReiter »

Критерии у всех разные, это да. Я недавно делал кухонный таймер, для звукового сигнала впаял завалявшуюся ещё с прошлого века микросхему УМС-8. Лежит на полке, грибоедит кашу, жена довольна.
Нет ничего практичнее хорошей теории
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Вс дек 28, 2014 21:54:05

Сообщение dgrett »

{Не нужно дурью маяться с софтовым }

Ну так рыба тоже в магазине продаётся. Ан нет, за удочку и пошёл. Может сеть закинуть?
Мне часто говорят, на кой гуй паяешь, если у китайца дешевле, так и отвечаю, нафиг ты на рыбалку идёшь?
Если сотнями клепать на продажу, то да, накидал побыстрому да продал. А если себе, так хобби же, чтобы мозги не усохли.
Последний раз редактировалось dgrett Пн янв 10, 2022 18:48:44, всего редактировалось 1 раз.
Я всё-всё узнAю и стану профессором.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

в обсчем... даже мой оттоптаный медведями слух намекает, что тут что-то не так...

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

Мой уютный бложик... заходите!
Контактная информация:
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Вс дек 28, 2014 21:54:05

Сообщение dgrett »

Паузы где, я спрашиваю, а?
Я всё-всё узнAю и стану профессором.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

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

Мой уютный бложик... заходите!
Контактная информация:
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Вс дек 28, 2014 21:54:05

Сообщение dgrett »

Ну так сделайте «ноту», которая НЕ будет звучать. Восьмая, четвертная и тд.
Я всё-всё узнAю и стану профессором.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

у меня есть такая "нота", обозначается P(t) или R(t), где t задаёт длительность. по умолчанию после каждой ноты автоматически добавляется P(16). то, что вы слышали - именно с такой паузой после каждой ноты. а дополнительные паузы - тут я не знаю, где надо...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Ответить

Вернуться в «Теория»