Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: Помощь в определении частот нот МК-90

  1. #1
    Veteran Аватар для Radon17
    Регистрация
    01.12.2017
    Адрес
    г. Воронеж
    Сообщений
    1,068
    Спасибо Благодарностей отдано 
    567
    Спасибо Благодарностей получено 
    680
    Поблагодарили
    282 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Помощь в определении частот нот МК-90

    Как известно, мк-90 с первой версией бейсика выводил ноты разной длительности (с высотой ноты уменьшалась длительность). Я провёл небольшое исследование, написал на бейсике короткую программу по перебору всех нот команды "PLAY", и через микрофон записал на компьютер, затем в Sound forge измерил длительность каждой ноты. Сороковая звучала почти в 10 раз меньше, чем первая! Всю полученную информацию собрал в таблицу Excel (прикреплена). Завершением стало написание небольшой консольной утилиты для ПК на С++ по конвертированию длительности одной ноты для другой. Это конечно не функция на ассемблере, но жить уже можно.

    А вот с определением частот нот произошла заминка, я не нашёл приемлемого способа. Пришлось вручную выделять 100мс ноты, и считать пики... Что сказать, выдохся я на 17-ой ноте... Ну вот, пока, полученный результат(±10 Гц):

    1)700 Гц
    2)740 Гц
    3)790 Гц
    4)830 Гц
    5)880 Гц
    6)930 Гц
    7)990 Гц
    8)1040 Гц
    9)1100 Гц
    10)1150 Гц
    11)1220 Гц
    12)1310 Гц
    13)1390 Гц
    14)1460 Гц
    15)1560 Гц
    16)1650 Гц
    17)1740 Гц

    Итак, прошу помочь всех желающих в определении частот остальных нот.

    Ссылки:

    Эксель таблица с длительностью - https://yadi.sk/i/OgWWpv3V3Yb2hm
    Моя утилита "Эквивалент" - https://yadi.sk/d/D4XgkNVw3Y7VrK
    Звуковой файл с нотами - https://yadi.sk/d/1F_M57uX3Yb2oR

    Для чего может понадобится частота? Чтобы сопоставить ноты МК-90 с реальными нотами (в сети можно найти всю информацию) - октавы две получится точно.

    Спасибо за внимание.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Может быть, если звук цифруется чисто, надежней, точней и даже проще считать длину периода?
    Больше игр нет

  4. #3
    Veteran Аватар для Radon17
    Регистрация
    01.12.2017
    Адрес
    г. Воронеж
    Сообщений
    1,068
    Спасибо Благодарностей отдано 
    567
    Спасибо Благодарностей получено 
    680
    Поблагодарили
    282 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  5. #4
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Даа.. скачал, посмотрел на волновые формы. "Не совсем чистая синусоида" - это меандр, пропущенный через фильтр ВЧ (это же пьезодинамик, да?).


    (источник)

    Период все равно можно проследить между двумя вершинами. Проще скриншотом:

    Скрытый текст



    [свернуть]


    Но и БПФ тоже способ. Я бы только побольше частоту дискретизации сделал, для измерительных-то целей.
    Больше игр нет

  6. #5
    Veteran Аватар для Radon17
    Регистрация
    01.12.2017
    Адрес
    г. Воронеж
    Сообщений
    1,068
    Спасибо Благодарностей отдано 
    567
    Спасибо Благодарностей получено 
    680
    Поблагодарили
    282 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    О, спасибо, а то я гадал, как же генерировался этот сигнал внутри МК-90. Да, пьезодинамик стоит. Я вот думаю... может до преобразования подцепиться, и записать меандр, так-то проще будет.

  7. #6
    Master Аватар для IgorR76
    Регистрация
    25.12.2017
    Адрес
    г. Москва
    Сообщений
    651
    Спасибо Благодарностей отдано 
    122
    Спасибо Благодарностей получено 
    156
    Поблагодарили
    94 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Radon17 Посмотреть сообщение
    А вот с определением частот нот произошла заминка, я не нашёл приемлемого способа.
    Для определения частоты нот надо было сходить в музыкальную школу. Ваша запись нот начинается с ФА первой октавы, и дальше по полтона вверх. Табличка:


    PS. Вот только непонятно, зачем Вам частоты?

  8. #7
    Veteran Аватар для Radon17
    Регистрация
    01.12.2017
    Адрес
    г. Воронеж
    Сообщений
    1,068
    Спасибо Благодарностей отдано 
    567
    Спасибо Благодарностей получено 
    680
    Поблагодарили
    282 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    IgorR76, внимательно прочитайте моё самое первое сообщение, я имел в виду ноты (если вам угодно, "ноты") МК-90, их 40 штук, их частоту я и пытался измерить, про данную табличку я знаю, внимательно прочтите предпоследнее предложение, там сказано про "реальные ноты" это как раз и есть они.

  9. #8
    Veteran
    Регистрация
    30.08.2005
    Адрес
    Питер
    Сообщений
    1,212
    Спасибо Благодарностей отдано 
    85
    Спасибо Благодарностей получено 
    56
    Поблагодарили
    38 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть приложения под Android - микрофоном определяется частота и показывается ближайшая нота. Точное название не помню. Но что-то вроде Spectrum Analyzer
    Собираю в коллекцию советские калькуляторы и компьютеры.
    Мой сайт: http://www.leningrad.su/museum/

  10. #9
    Master Аватар для IgorR76
    Регистрация
    25.12.2017
    Адрес
    г. Москва
    Сообщений
    651
    Спасибо Благодарностей отдано 
    122
    Спасибо Благодарностей получено 
    156
    Поблагодарили
    94 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Серёж, имеющий уши да услышит. Не надо приложений. И частот. Мелодию потом же не осциллографом смотреть.

  11. #10
    Junior Аватар для piotr433
    Регистрация
    16.02.2011
    Адрес
    Szczecin, Польша
    Сообщений
    25
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    24
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Немного технических деталей (Бэйсик 1.0)

    В МК-90 пьезодинамик подключён к выводу синхросигнала канала 3 микросхемы последовательного интерфейса КА1835ВГ4. Частота этого сигнала вычисляется по формуле:
    Ф = F / (2 * N)
    где
    F - опорная частота 1600 кГц (не очень точная, так как вырабатывается RC-генератором)
    N - число занесённое в регистр коэффициента деления

    Команда PLAY записывает в регистр коэффициента деления номиналы из следующей таблицы (ноты 0-40, их 41 штук).

    0x08EE, 0x0872, 0x07F9, 0x0783,
    0x071A, 0x06B5, 0x0653, 0x05F7,
    0x05A4, 0x0551, 0x0506, 0x04BC,
    0x0477, 0x0439, 0x03FC, 0x03C2,
    0x038D, 0x035A, 0x032A, 0x02FB,
    0x02D2, 0x02A8, 0x0281, 0x025E,
    0x023D, 0x021D, 0x01FE, 0x01E2,
    0x01C7, 0x01AD, 0x0193, 0x017E,
    0x0169, 0x0155, 0x0142, 0x012F,
    0x0121, 0x010E, 0x00FF, 0x00F1,
    0x00E3

    Второй операнд команды PLAY определяет количество последовательно переданных байтов и, следовательно, длительность тона, которая вычисляется по формуле:
    t = количество_байтов * 8_битов_в_байте / частота_тона
    Последний раз редактировалось piotr433; 19.12.2021 в 21:58. Причина: обновление ссылки

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Прошу помощи в определении клона спектрума
    от kos в разделе Несортированное железо
    Ответов: 28
    Последнее: 09.12.2016, 20:18
  2. Помощь с ресурсами
    от Smalovsky в разделе Разный софт
    Ответов: 2
    Последнее: 22.09.2016, 17:07
  3. Нужна помощь!!!!
    от Biozoom в разделе ZXEvo
    Ответов: 6
    Последнее: 21.10.2010, 18:18
  4. нужна помощь!!
    от Subre Wulf в разделе Для начинающих
    Ответов: 10
    Последнее: 21.11.2009, 18:12

Ваши права

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