Резистор R1 - около 10 кОм
Резисторы R3, R4, R5 - зависят от типа светодиода. Вы можете рассчитать этот резистор по формуле:
Rx = (Vcc-Vf)/Im
где Vcc - напряжение питания, Vf - напряжение светодиода, Im - максимальный ток светодиода или вывода МК (20 мА)
Программа написана на ассемблере (avra под Linux, но должна быть совместима с AVR Studio). Timer0 используется для прерываний, частота 30 кГц - для 8 бит ШИМ. Timer1 используется для изменения цвета RGB светодиода.
Вариант 2. Для мощных светодиодов
Приведенная ниже схема позволяет управлять более мощными светодиодами. В это проекте я использовал 3 светодиода мощностью 1 Ватт каждый.
Q1, Q2, Q3 - N-канальные HEXFet MOSFET транзисторы с RDSon (сопротивление открытого канала транзистора) около 50 мОм.
R1, R2, R3 - 2.2 кОм
R4, R5, R6 - 15 кОм.
R7, R8, R9 - зависят от типа используемых светодиодов и Vcc.
Если вы используете мосфеты с высоким значением RDSon, вы должны учитывать RDSon при расчете резисторов:
Rx = (Vcc-Vf)/Im RDSon
где Vcc - напряжение питания, Vf - напряжение светодиода, Im - максимальный ток светодиода или вывода МК (20 мА)