На досуге немного исследовал возможности блока Buzzer (Разное/Пьезо-динамик).
1. Согласно инфо с
https://www.arduino.cc/en/Reference/Tone
Uno, Mega, Leonardo and other AVR boards:
Min frequency (Hz) - 31
Max frequency (Hz) - 65535
Вне этого диапазона частоты воспроизводятся с "математическими фокусами".
2. Точность установки частоты проверялась 5-разрядным частотомером с заявленной точностью 0,02%. В целом погрешность установки частоты не превышает 0,1 - 0,5%.
Замечено, что ряд частот, кГц: 0,5; 1; 2; 4; 5; 8; 10; 20; 40; 50.
воспроизводятся весьма точно, с минимальной погрешностью. Это можно использовать с целью калибровки.
3. Обнаружен баг.
Если к входу F блока Buzzer подключена константа или только одна переменная (Set), то IDE при компиляции выдаёт ошибку. Достаточно к нему подключить ещё одну переменную (А-вход) или другой блок, то всё компилируется корректно. Пробовал только в версии 1.10.1 для Arduino Nano (ATmega328).