Доброго всем времени суток!
Хочу поделиться очередным epic fail. Просто когда начинаешь проектировать свои печатные платы о многом не задумываешься, а это важно....
Хотя может проблема и не в этом. В общем история следующая....
Есть контроллер мощной ультрафиолетовой лампы на светодиодах. Светодиоды в количестве 30 штук напаяны на алюминиевую плату. Три нитки по 10 штук каждая.
Вот общая схема платы которая всем управляет
Идея простая есть три драйвера светодиодов на основе HV9961LG каждый из них управляет своей ниткой из 10 диодов. Включает/выключает драйвера Atmega328P меняя состояние ноги PD3.
Вот схема драйвером светодиодов
Теперь собственно о проблеме.... Так получилось что катушка индуктивности второго драйвера светодиодов находится на рядом с контроллером. На лицевой стороне Atmega328P, под ней на обратной стороне катушка драйвера ledControlB
Вот так это выглядит в полусобранном виде:
Теперь собственно о проблемах:
1. Когда подключены все три нитки светодиодов не работает ничего....
2. Если подключены нитки 1 и 3 (катушки индуктивности которых далеко от контролера), то все работает замечательно.... Контроллер может их включить и выключить....
3. Если подключена только нитка 2 (катушка контроллера которой находиться за Atmegа328P), то в момент включения светодиодов контроллер перезагружается или уходит в небытие....
4. Если контролеры светодиодов включить принудительно соединив управляющий вывод (подключенные к PD3 atmega328) проводом с +5V питания, то все три контроллера светодиодов работают корректно.... Все светодиоды горят и ток в нитках правильный....
Ну и собственно вопросы:
1. Действительно катушка индуктивности контроллера светодиодов расположенная на обратной стороне платы за Atmrga328P может приводить к его перезагрузке? Или надо искать дефекты монтажа или еще какие причины?
2. Если к проблеме действительно приводит компоновка платы, то как это можно поправить? Только переделывать плату? Или есть еще какие то варианты?