Самый быстрый способ менять ШИМ для RGB-светодиода на пинах 9, 10, 11 (PORTB):
void setup() {
DDRB = 0xFF; // Все пины PORTB как выходы
}
void loop() {
// Меняем состояния за 1 такт без задержек!
PORTB = 0b00101000; // PB3 (11 пин)=1, PB5 (13 пин)=1
_delay_us(100);
PORTB = 0b00010100; // PB2 (10 пин)=1, PB4 (12 пин)=1
_delay_us(100);
}
Скорость: Такой ШИМ работает на частоте до 8 МГц (вместо 490 Гц у стандартного analogWrite). Отлично для управления бесщёточными моторами!