Нюансы библиотеки Adafruit NeoPixel и цветового спектра.

Тема в разделе "Arduino & Shields", создана пользователем ArhAngeL3000, 4 июн 2018.

  1. ArhAngeL3000

    ArhAngeL3000 Нуб

    Добрый день.
    Собрано небольшое устройство на базе Arduino Nano ATmega328P для контроля температуры, управления вентиляторами и подсветкой в системном блоке.
    Вентиляторы управляются через mosfet ШИМ с 5 вывода. светодиодных лент несколько, но с ними проблем никаких. В общем то было на мой взгляд все верно рассчитано, но когда подключил к целевым вентиляторам, а не с тем, который тестировал, от частоты ШИМ они "запели". Решением было поднять частоту ШИМ добавив строку в setup:
    TCCR0B = TCCR0B & 0b11111000 | 0x01;
    Свистеть перестали, но практически напрочь пропала возможность регулировать скорость анимации светодиодных лент, которая выросла соответственно.
    Я понимаю, что неудачно выбрана нога ардуино для управления мосфетом, так как ее ШИМ завязан с таймером 0, но поменять ее уже технологически сложная задача.
    Вопрос заключается в следующем: читал, что можно поменять таймер, который использует библиотека Adafruit NeoPixel. Можно ли как-то это сделать, чтобы вернуть ее функционал при поднятой частоте ШИМ на 5 и 6 выводах?
    Заранее спасибо!