Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.02.2019, 13:29   #11
AlexFox
Junior Member
 
Регистрация: 20.02.2019
Сообщений: 8
Вес репутации: 0
AlexFox is an unknown quantity at this point
По умолчанию

Согласен...упрощать надо, тем-более, что модуль на MAX9814 более доступен и стоит копейки + АРУ неплохая
AlexFox вне форума   Ответить с цитированием
Старый 20.02.2019, 13:45   #12
AlexFox
Junior Member
 
Регистрация: 20.02.2019
Сообщений: 8
Вес репутации: 0
AlexFox is an unknown quantity at this point
По умолчанию

Попробовал.
Убрал транзистор...чуть-чуть не хватает уровня на выходе, срабатывает только на громкие звуки даже с максимальным усилением 60 дБ.
Возвращаю всё обратно...
AlexFox вне форума   Ответить с цитированием
Старый 20.02.2019, 19:00   #13
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

А референсное напряжение меняли? Без него ничего не получится. Получается перекос.
В коде ref 5 В, тоесть нулевая точка на 2,5 В, а на микрофоне нулевая точка 1,2 В
Весь анализ спектра как раз от этой нулевой точки отталкивается
Admin вне форума   Ответить с цитированием
Старый 20.02.2019, 19:09   #14
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Поменяйте вот эти значения
uint8_t N_LEDS = 120; // количество светодиодов в ленте по умолчанию
uint8_t ledConfig = LEDCONFIG_120; //число светодиодов по умолчанию

Должно быть вот так:
uint8_t N_LEDS = 180; // количество светодиодов в ленте по умолчанию
uint8_t ledConfig = LEDCONFIG_180; //число светодиодов по умолчанию
Admin вне форума   Ответить с цитированием
Старый 20.02.2019, 19:43   #15
AlexFox
Junior Member
 
Регистрация: 20.02.2019
Сообщений: 8
Вес репутации: 0
AlexFox is an unknown quantity at this point
По умолчанию

Это я в первую очередь и менял:
uint8_t N_LEDS = 180; // количество светодиодов в ленте по умолчанию
uint8_t ledConfig = LEDCONFIG_180; //число светодиодов по умолчанию
После включения зажигается белым штук 30 светодиодов и не на что не влияет, просто горят, зажатые кнопки при включении тоже не реагируют...
AlexFox вне форума   Ответить с цитированием
Старый 20.02.2019, 22:26   #16
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

А если попробовать оригинальный скетч lmazoid залить?
Возможно в EEPROM настройки сохранены под 120 led
Попробуйте на цветомузыке выбрать режим 180 LED, потом сохраните эту настройки. После чего перепрошейте.
При перепрошивке контроллера EEPROM не стирается
Admin вне форума   Ответить с цитированием
Старый 20.02.2019, 22:34   #17
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Еще нашел, что нужно изменить
ledConfig = LEDCONFIG_120; // если EEPROM не записана, то по умолчанию 120 LEDs,
Admin вне форума   Ответить с цитированием
Старый 21.02.2019, 03:31   #18
AlexFox
Junior Member
 
Регистрация: 20.02.2019
Сообщений: 8
Вес репутации: 0
AlexFox is an unknown quantity at this point
По умолчанию

Это тоже менял...не помогает.
Ради интереса везде поменял значение 180 на 160 - работает.
150 - работает, а 170 и 180 уже нет...
AlexFox вне форума   Ответить с цитированием
Старый 21.02.2019, 08:02   #19
AlexFox
Junior Member
 
Регистрация: 20.02.2019
Сообщений: 8
Вес репутации: 0
AlexFox is an unknown quantity at this point
По умолчанию

Подскажите, где поменять настройки референсного напряжения ref для нулевой точки 1,2 В под микрофон без каскада усиления на транзисторе?
Попробую еще раз...
AlexFox вне форума   Ответить с цитированием
Старый 21.02.2019, 10:49   #20
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

PHP код:
//**********************// Настройки АЦП для работы с прерыванием после преобразования**********************
void setADCFreeRunning() 
{
  
samplePos 0// Reset sample counter
  // Init ADC free-run mode; f = ( 16MHz/prescaler ) / 13 cycles/conversion
   // 00 AREF, 01 AVcc с конденсатором на AREF, 10 Резерв, 11 Внутренний 1.1В источник конденсатором на AREF
  
ADMUX  ADC_CHANNEL// Channel sel, right-adj, use AREF pin
  
ADMUX |= _BV(REFS0); //внутрений источник опрного напряжений 5V  // 1.1В (1 << REFS1)|(1 << REFS0)
  // Start a conversion. We want to discard the first conversion after
  // changing the voltage reference reference.
  
ADCSRB 0;
  
ADCSRA _BV(ADEN)  | // ADC enable
           
_BV(ADSC);   // ADC start

  
while (ADCSRA _BV(ADSC)); // ждем завершения преобразования

  // Now start auto-triggered conversions with interrupt enabled.
  
ADCSRA _BV(ADEN)  | // ADC enable
           
_BV(ADSC)  | // ADC start
           
_BV(ADATE) | // Auto trigger
           
_BV(ADIE)  | // Interrupt enable
           
_BV(ADPS2) | _BV(ADPS1) | _BV(ADPS0); // 128:1 / 13 = 9615 Hz
}

void setADCDefault() // Конфигурируем АЦП для стандартной работы ардуино
{
  
// Init ADC free-run mode; f = ( 16MHz/prescaler ) / 13 cycles/conversion
  
ADMUX  0;
  
ADMUX _BV(REFS0); //внутрений источник опрного напряжений 5V  // 1.1В (1 << REFS1)|(1 << REFS0)
  
ADCSRA _BV(ADEN)  | // ADC enable
           
_BV(ADPS2) | _BV(ADPS1) | _BV(ADPS0); // 128:1 / 13 = 9615 Hz
  
ADCSRB 0;                // Free run mode, no high MUX bit
  
analogRead(PARM_POT); // отказаться от первого преобразования

ADMUX |= (1 << REFS1)|(1 << REFS0); //внутрений источник опрного напряжений 1.1В
Хотя 1,1В маловато, наверно придется внешний источник AREF подключать, что тоже несет некоторые усложнения

ADMUX |= (0 << REFS0) | (0 << REFS1); // Включаем внешний источник ИОН
Можно попробовать на вход aRef подключить 3,3В, которые есть на борту ардуины.
И на крайний вариант можно подключить делитель из двух резисторов на aRef, в цветомузыке не нужна супер точность АЦП.
Admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 5 (пользователей: 0 , гостей: 5)
 

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 01:45. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика