Без расчетов, чисто практика: МИТ4В + КТ972. 28 каналов. Симисторы TC160. Частота импульсов управления 1 кГц (на случай, если нагрузка имеет индуктивную составляющую). Длительность импульса 10 мкс (см. "скорострельность" тиристоров). Скважность получается = 100. Чтобы снизить пиковый ток управления, каналы разбиты на 4 группы, импульсы на каждую группу подаются с временнЫм смещением. Ну и для всего этого добра достаточно мелкого транса ТН на 12В и емкости 2200 мкФ после диодного моста. Работает уже полтора десятка лет (несколько новогодних елок).
// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Reinitialize Timer 0 value
if (flag_key!=0)
{
TCNT0=0x63; //F7;
PORTA=0xFF;
delay_us(10);
PORTA=0x00;
PORTB=0xFF;
delay_us(10);
PORTB=0x00;
PORTC=0xFF;
delay_us(10);
PORTC=0x00;
PORTD=0xFF;
delay_us(10);
PORTD=0xF0;
}
else
{
TCNT0=0xF7;
PORTA=b2;
delay_us(10);
PORTA=0x00;
PORTB=b3;
delay_us(10);
PORTB=0x00;
PORTC=b1;
delay_us(10);
PORTC=0x00;
b4=b4 & 0x0F;
PORTD|=b4;
delay_us(10);
PORTD &=0xF0;
}
}