Pull to refresh

Comments 12

float cos = pgm_read_float(&(cos_t[k]));
float sin = pgm_read_float(&(sin_t[k]));

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

Думать, "хватит ли производительности Arduino" (изначально известно, что есть запас раз в 5 минимум: в 90-е АОН делался на Z80, требуемая обработка пракически та же) и при этом использовать float? Немного странно.

Причём в тех АОНах даже АЦП не было. Звук пропускался через компаратор и дальше обрабатывался в однобитном виде. А в качестве умножения использовался самый обыкновенный XOR.
И z80 тоже избыточен. Dtmf decoder делал на 400 килогерцовом 4-битном контроллере, в 92 году. Самой большой проблемой был не Dtmf, а обычный программный uart из-за отсутствия высокочастотного кварца. Приходилось перекалибровывать генератор по часовому кварцу перед каждым сеансом или при ошибке. Естественно прозрачно для пользователя
А я то думал что автор скажет «один» — и ардуина высветит 1. А тут банальный DTMF, а вовсе не «определение цифры на слух» :(

Интересно почему природа не пошла по пути общения живых организмов по dtmf?

Для ускорения от конечного sqrt можно же отказаться? И затем сравнивать с квадратом threshold.
Все это замечательно, но как на счет оцифровки мыслей? Там вроде уже есть какие-то продвижения, а если бы были мыслезаписи, как бы это могло изменить наш мир.
У меня такое ощущение, что вы не читали статью. Или читали и не поняли совершенно
Читал, может не так понял.

А что если по dtmf прошивку обновлять? Какая битовая скорость получается?

Sign up to leave a comment.

Articles