The LEDs are in series, so all see the same current, and the voltage required is about 26 VDC for 7 and 49 VDC for 13. The PIC can respond to certain events within a few microseconds, by using interrupts. The difficulty is in generating the interrupt signal outside the PIC. That is why I plan to put a transistor on the current sense to detect an overcurrent. I could also add a similar circuit to detect output overvoltage, and generate the same interrupt.
The first thing to do is disable the PWM output, which can be done in a few clock cycles. Less than 1 uSec for an 8 MHz clock. Then the A/Ds can be used to see what caused it, and act accordingly. All three analog inputs are now read within 1 mSec, but could be within 60 uSec. The A/D can make a reading in 18 uSec.
As long as the external circuitry has a sufficiently slow response, I don't see any problem implementing a switcher with a PIC. The real advantage is that the hardware can be built in a simple, straightforward way, and then changes can be implemented in PIC code. As requirements change, the same circuit can be used with little or no change, and the PIC can be reflashed to the new parameters.
I think the PIC is perfectly suited to this application. It may not be so for situations where the input voltage may change suddenly, or output loads are constantly changing. The main problem here seems to have been identified, and several possible fixes should eliminate it. Extensive testing should prove that.
Thanks,
Paul