В образовательных целях захотел сделать Ambilight на Atmega16. Реализовал аппаратную часть на Atmega16, FTD232 для передачи данных с компьютера, ULN2003 в роли транзисторного ключа. Сделал наброски Windows приложения и прошивки по МК. Реализация Windows приложения следующим образом: забил 10 областей по краям монитора, определяю преобладающий цвет и отправляю все эти пакеты на МК. На МК ловлю эти пакеты и в бесконечном цикле вывожу пришедшие значения на ножки. Реализовал ШИМ, для управления RGB светодиодом. Использовал порты напрямую, все хорошо работало. Сейчас использую массив портов, чтобы проще было бегать по портам и устанавливать уровень с задержкой, но в таком случае яркость светодиода очень сильно упала и на ножке МК 0,4В. Меряю мультиметром, думаю, что сам мультиметр не успевает измерить напряжение, т.к. ШИМ очень быстро вкл/выкл светодиод.
Черновые быдлоисходники предлагаю:
Вложение 47049