Raspberry Pi:Библиотеки/WiringPi/Функции для работы со звуком

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.



Функции для работы со звуком[1]

Библиотека WiringPi содержит функции для программного обработчика звука, способного выдавать простой звуковой (прямоугольный) сигнал на любом GPIO-контакте Raspberry Pi.

Но есть и некоторые ограничения... Чтобы не нагружать CPU, минимальная ширина импульса составляет 100 мкс. В итоге максимальной частотой может быть: 1 / 0,0002 = 5000 Гц.

Также обратите внимание, что хотя эти функции запускают себя с более высоким приоритетом или с приоритетом реального времени, Linux все равно может влиять на точность генерируемого сигнала.

Впрочем, несмотря на ограничения, с помощью этих функций можно издавать звуки на пьезодинамиках и динамиках с высоким импедансом.

Чтобы использовать эти функции, напишите в начале своей программы следующее:

#include <wiringPi.h>
#include <softTone.h>

Компилируя программу, вы должны будете подключить, помимо WiringPi, библиотеку pthread:

cc -o myprog myprog.c -lwiringPi -lpthread

Инициализировать WiringPi можно при помощи функций wiringPiSetup(), wiringPiSetupGpio() и wiringPiSetupPhys(). Функция wiringPiSetupSys() недостаточно быстра, поэтому вам нужно будет запускать программы при помощи sudo.

Итак, для работы со звуком в WiringPi есть следующие функции:

Примечания

  • Каждый контакт, активированный для работы со звуком, использует примерно 0,5% ресурсов CPU.
  • Чтобы выдача ШИМ не прекращалась, программа должна оставаться в запущенном состоянии.

См.также

Внешние ссылки