Мал. 14 Включення Stereo Mix
Якщо цього не зробити програма управління світломузики не зможе працювати з "вихідним" звуком. А буде працювати зі звуком з мікрофона, або взагалі видасть помилку про недоступність записуючого пристрою.
Слід зазначити що установка драйвера і включення Stereo Mix виконуються лише один раз, після виключення або перезавантаження ПК Stereo Mix залишиться включеним.
Якщо при підключенні у вас встановився драйвер і ви включили Stereo Mix. можна запустити програму управління світломузикою.
При запуску програми повинні на пару секунд запалитися і згаснути всі світлодіоди.
Далі робота буде продовжена під музику.
На кожну смугу частот виведений свій регулятор і так само є загальний для всіх регулятор чутливості.
Якщо необхідно вносити зміни в проект, то краще за все створити проект заново і підключити bass.net для тієї версії windows, яка встановлена на ПК.
Слід враховувати, що програма, скомпільована на windows7 не працює на windowsXP і навпаки.
У властивостях проекту необхідно змінити все, як показано на малюнку
Мал. 15 Налаштування властивостей проекту
На вкладці Build дозволити використання unsafe code (це необхідно для роботи класу atmega16)
Мал. 16 Налаштування властивостей проекту
На форму в конструкторі необхідно додати таймер, вибрати інтервал спрацьовування 1.
Мал. 17 Налаштування таймера
Далі додати 24 елемента pictureBox.
Рис.18 Налаштування pictureBox
Далі додати 6 однакових trackBar і зробити для них настройки як показано на малюнку.
Після додати ще один trackBar і зробити для нього настройки як показано на малюнку
Мал. 19 Налаштування trackBar
Мал. 20 Налаштування trackBar
Потім додати компонент bass.net
Мал. 21 Підключення bass.net до проекту
Після цього два рази клікнувши лівою кнопкою миші на формі зайти в виконуваний код і скопіювати весь код з проекту в свій проект.
Мал. 22 Код проекту
Після цього необхідно в папки проекту bin # 92; DEBUGі bin # 92; RELEASE скопіювати bass.dll.
Програма по таймеру отримує частоти. використовуючи бібліотеку bass
Bass.BASS_ChannelGetData (_recHandle, buffer_bass, (int) BASSData.BASS_DATA_FFT4096);
Після цього у нас є масив Buffer_bass [2048] з значеннями амплітуд для кожної частоти.
Порівнявши значення з певним рівнем виставленим на регуляторах. програма або встановлює біт порту або скидає його.
Для зменшення кількості інформації, що передається передаються 3 байта для кожного порту один раз при спрацьовуванні таймера.
Ps Є можливість програмного включення Stereo Mix поки не реалізував.
EXE файл з папки EXE_win7_32_64 працює на windows7 professional -64 bit- English і на windows7 начальная- 32 bit- російська.
Але. Замість світлодіодів використовуємо твердотільні реле - і вони будуть включати лампи 220 Вольт!
Зібрав силову версію на 220В і віддав до школи.